net.sf.jasperreports.crosstabs.base

## Class JRBaseCrosstabMeasure

- java.lang.Object
- - net.sf.jasperreports.crosstabs.base.JRBaseCrosstabMeasure

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, CrosstabBaseCloneable, JRCrosstabMeasure, JRCloneable
  Direct Known Subclasses:
    JRDesignCrosstabMeasure

      public class JRBaseCrosstabMeasure
      extends java.lang.Object
      implements JRCrosstabMeasure, java.io.Serializable, CrosstabBaseCloneable

  Base read-only crosstab measure implementation.
  Version:
    $Id: JRBaseCrosstabMeasure.java 6255 2013-06-12 12:40:27Z lucianc $
  Author:
    Lucian Chirita (lucianc@users.sourceforge.net)
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected CalculationEnum` | `calculationValue`
    `protected JRExpression` | `expression`
    `protected java.lang.Class<?>` | `incrementerFactoryClass`
    `protected java.lang.String` | `incrementerFactoryClassName`
    `protected java.lang.String` | `incrementerFactoryClassRealName`
    `protected java.lang.String` | `name`
    `protected java.lang.Class<?>` | `percentageCalculatorClass`
    `protected java.lang.String` | `percentageCalculatorClassName`
    `protected java.lang.String` | `percentageCalculatorClassRealName`
    `protected CrosstabPercentageEnum` | `percentageType`
    `protected java.lang.Class<?>` | `valueClass`
    `protected java.lang.String` | `valueClassName`
    `protected java.lang.String` | `valueClassRealName`
    `protected JRVariable` | `variable`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `JRBaseCrosstabMeasure()`
    `` | `JRBaseCrosstabMeasure(JRCrosstabMeasure measure, JRBaseObjectFactory factory)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `clone()`
    `java.lang.Object` | `clone(CrosstabBaseCloneFactory cloneFactory)`
    `CalculationEnum` | `getCalculationValue()` Returns the calculation type which will be performed on the measure values.
    `java.lang.Class<?>` | `getIncrementerFactoryClass()` Returns the incrementer factory class.
    `java.lang.String` | `getIncrementerFactoryClassName()` Returns the incrementer factory class name.
    `java.lang.String` | `getName()` Returns the name of the measure.
    `java.lang.Class<?>` | `getPercentageCalculatorClass()` Returns the percentage calculator class.
    `java.lang.String` | `getPercentageCalculatorClassName()` Returns the percentage calculator class name.
    `CrosstabPercentageEnum` | `getPercentageType()` Returns the percentage calculation type performed on this measure.
    `java.lang.Class<?>` | `getValueClass()` Returns the value class of this measure.
    `java.lang.String` | `getValueClassName()` Returns the name of the value class for this measure.
    `JRExpression` | `getValueExpression()` Returns the measure expression.
    `JRVariable` | `getVariable()` Returns the variable associated with this measure.

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### name

          protected java.lang.String name

    - #### valueClassName

          protected java.lang.String valueClassName

    - #### valueClassRealName

          protected java.lang.String valueClassRealName

    - #### valueClass

          protected java.lang.Class<?> valueClass

    - #### expression

          protected JRExpression expression

    - #### calculationValue

          protected CalculationEnum calculationValue

    - #### incrementerFactoryClassName

          protected java.lang.String incrementerFactoryClassName

    - #### incrementerFactoryClassRealName

          protected java.lang.String incrementerFactoryClassRealName

    - #### incrementerFactoryClass

          protected java.lang.Class<?> incrementerFactoryClass

    - #### percentageType

          protected CrosstabPercentageEnum percentageType

    - #### percentageCalculatorClassName

          protected java.lang.String percentageCalculatorClassName

    - #### percentageCalculatorClassRealName

          protected java.lang.String percentageCalculatorClassRealName

    - #### percentageCalculatorClass

          protected java.lang.Class<?> percentageCalculatorClass

    - #### variable

          protected JRVariable variable

  - ### Constructor Detail

    - #### JRBaseCrosstabMeasure

          protected JRBaseCrosstabMeasure()

    - #### JRBaseCrosstabMeasure

          public JRBaseCrosstabMeasure(JRCrosstabMeasure measure,
                               JRBaseObjectFactory factory)

  - ### Method Detail

    - #### getName

          public java.lang.String getName()

      Description copied from interface: `JRCrosstabMeasure`
      Returns the name of the measure.
      Specified by:
        `getName` in interface `JRCrosstabMeasure`
      Returns:
        the name of the measure
      See Also:
        `JRCrosstabMeasure.getVariable()`

    - #### getValueClassName

          public java.lang.String getValueClassName()

      Description copied from interface: `JRCrosstabMeasure`
      Returns the name of the value class for this measure.
      Specified by:
        `getValueClassName` in interface `JRCrosstabMeasure`
      Returns:
        the name of the value class for this measure

    - #### getValueExpression

          public JRExpression getValueExpression()

      Description copied from interface: `JRCrosstabMeasure`
      Returns the measure expression.
      Specified by:
        `getValueExpression` in interface `JRCrosstabMeasure`
      Returns:
        the measure expression

    - #### getCalculationValue

          public CalculationEnum getCalculationValue()

      Description copied from interface: `JRCrosstabMeasure`
      Returns the calculation type which will be performed on the measure values.

      The incrementer factory associated with this measure will create an incrementer which will sum the measure values.

      The possible calculation type are the same as the ones used for variables (see `JRVariable.getCalculationValue()` with the exception of `CalculationEnum.SYSTEM`.

      Specified by:
        `getCalculationValue` in interface `JRCrosstabMeasure`
      Returns:
        the calculation type which will be performed on the measure values
      See Also:
        `JRCrosstabMeasure.getIncrementerFactoryClassName()`, `JRExtendedIncrementerFactory`, `JRExtendedIncrementer`

    - #### getIncrementerFactoryClassName

          public java.lang.String getIncrementerFactoryClassName()

      Description copied from interface: `JRCrosstabMeasure`
      Returns the incrementer factory class name.

      Crosstab measures require extended incrementers, therefore the incrementer class should implement `JRExtendedIncrementerFactory`.

      Specified by:
        `getIncrementerFactoryClassName` in interface `JRCrosstabMeasure`
      Returns:
        the incrementer factory class name

    - #### getPercentageType

          public CrosstabPercentageEnum getPercentageType()

      Description copied from interface: `JRCrosstabMeasure`
      Returns the percentage calculation type performed on this measure.

      Currently, only percentage out of grand total is supported.

      The possible values are:

      - `CrosstabPercentageEnum.NONE`
      - `CrosstabPercentageEnum.GRAND_TOTAL`

      If percentage calculation is required, the value class should be one of the built-in supported percentage types or the percentage calculator class should be specified.

      Specified by:
        `getPercentageType` in interface `JRCrosstabMeasure`
      Returns:
        the percentage calculation type
      See Also:
        `JRPercentageCalculatorFactory.hasBuiltInCalculator(Class)`, `JRCrosstabMeasure.getPercentageCalculatorClassName()`

    - #### getIncrementerFactoryClass

          public java.lang.Class<?> getIncrementerFactoryClass()

      Description copied from interface: `JRCrosstabMeasure`
      Returns the incrementer factory class.
      Specified by:
        `getIncrementerFactoryClass` in interface `JRCrosstabMeasure`
      Returns:
        the incrementer factory class
      See Also:
        `JRCrosstabMeasure.getIncrementerFactoryClassName()`

    - #### getValueClass

          public java.lang.Class<?> getValueClass()

      Description copied from interface: `JRCrosstabMeasure`
      Returns the value class of this measure.
      Specified by:
        `getValueClass` in interface `JRCrosstabMeasure`
      Returns:
        the value class of this measure

    - #### getVariable

          public JRVariable getVariable()

      Description copied from interface: `JRCrosstabMeasure`
      Returns the variable associated with this measure.

      The variable can be used inside the crosstab data cells as the measure value. The variable has the same name and value class as the measure.

      Specified by:
        `getVariable` in interface `JRCrosstabMeasure`
      Returns:
        the variable associated with this measure

    - #### getPercentageCalculatorClassName

          public java.lang.String getPercentageCalculatorClassName()

      Description copied from interface: `JRCrosstabMeasure`
      Returns the percentage calculator class name.
      Specified by:
        `getPercentageCalculatorClassName` in interface `JRCrosstabMeasure`
      Returns:
        the percentage calculator class name

    - #### getPercentageCalculatorClass

          public java.lang.Class<?> getPercentageCalculatorClass()

      Description copied from interface: `JRCrosstabMeasure`
      Returns the percentage calculator class.
      Specified by:
        `getPercentageCalculatorClass` in interface `JRCrosstabMeasure`
      Returns:
        the percentage calculator class

    - #### clone

          public java.lang.Object clone()

      Specified by:
        `clone` in interface `JRCloneable`
      Overrides:
        `clone` in class `java.lang.Object`

    - #### clone

          public java.lang.Object clone(CrosstabBaseCloneFactory cloneFactory)

      Specified by:
        `clone` in interface `CrosstabBaseCloneable`

© 2001-2010 Jaspersoft Corporation www.jaspersoft.com