net.sf.jasperreports.engine.fill

## Class JRFillElementDataset

- java.lang.Object
- - net.sf.jasperreports.engine.fill.JRFillElementDataset

- All Implemented Interfaces:
    java.lang.Cloneable, JRCloneable, JRElementDataset
  Direct Known Subclasses:
    FillItemDataset, FillMultiAxisDataset, FillSpiderDataset, JRFillChartDataset, JRFillCrosstab.JRFillCrosstabDataset

      public abstract class JRFillElementDataset
      extends java.lang.Object
      implements JRElementDataset

  Abstract `JRElementDataset` implementation used at report fill time.

  A dataset implementation usually involves a set of expressions which are used to feed data to some internal data structures. The collected data is then transformed into report output. An implementation needs to implement abstract methods that initialize, evaluate and increment the dataset.

  Version:
    $Id: JRFillElementDataset.java 5878 2013-01-07 20:23:13Z teodord $
  Author:
    Teodor Danciu (teodord@users.sourceforge.net)
  See Also:
    `JRFillObjectFactory.registerElementDataset(JRFillElementDataset)`

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected JRFillDatasetRun` | `datasetRun`
    `protected JRGroup` | `incrementGroup`
    `protected JRElementDataset` | `parent`
    `protected JRGroup` | `resetGroup`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `JRFillElementDataset(JRElementDataset dataset, JRFillObjectFactory factory)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `clone()`
    `protected abstract void` | `customEvaluate(JRCalculator calculator)` Evaluates the expressions associated with the dataset.
    `protected abstract void` | `customIncrement()` Increments the dataset by collecting the result of the expression evaluation.
    `protected abstract void` | `customInitialize()` Initializes the element dataset.
    `protected void` | `evaluate(JRCalculator calculator)`
    `void` | `evaluateDatasetRun(byte evaluation)`
    `protected void` | `evaluateIncrementWhenExpression(JRCalculator calculator)`
    `JRDatasetRun` | `getDatasetRun()` Returns the sub dataset run for this chart dataset.
    `JRFillDataset` | `getFillDataset()`
    `JRGroup` | `getIncrementGroup()` Gets the selected increment group in case of increment type group.
    `IncrementTypeEnum` | `getIncrementTypeValue()` Returns the increment type.
    `JRExpression` | `getIncrementWhenExpression()` Returns the "increment when" expression.
    `JRFillDataset` | `getInputDataset()`
    `JRGroup` | `getResetGroup()` Gets the selected reset group in case of reset type group.
    `ResetTypeEnum` | `getResetTypeValue()` Gets the reset type.
    `protected java.util.TimeZone` | `getTimeZone()`
    `protected void` | `increment()`
    `protected void` | `initialize()`
    `protected void` | `setBand(JRFillBand band)`

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

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

    - ### Methods inherited from interface net.sf.jasperreports.engine.JRElementDataset

      `collectExpressions`

- - ### Field Detail

    - #### parent

          protected JRElementDataset parent

    - #### resetGroup

          protected JRGroup resetGroup

    - #### incrementGroup

          protected JRGroup incrementGroup

    - #### datasetRun

          protected JRFillDatasetRun datasetRun

  - ### Constructor Detail

    - #### JRFillElementDataset

          protected JRFillElementDataset(JRElementDataset dataset,
                              JRFillObjectFactory factory)

  - ### Method Detail

    - #### setBand

          protected void setBand(JRFillBand band)

    - #### getResetTypeValue

          public ResetTypeEnum getResetTypeValue()

      Description copied from interface: `JRElementDataset`
      Gets the reset type. This specifies the range of report data used for filling the dataset.
      Specified by:
        `getResetTypeValue` in interface `JRElementDataset`
      Returns:
        one of the reset constants in `ResetTypeEnum`

    - #### getIncrementTypeValue

          public IncrementTypeEnum getIncrementTypeValue()

      Description copied from interface: `JRElementDataset`
      Returns the increment type. This specifies dataset values increment step.
      Specified by:
        `getIncrementTypeValue` in interface `JRElementDataset`
      Returns:
        one of the increment constants in `IncrementTypeEnum`.

    - #### getResetGroup

          public JRGroup getResetGroup()

      Description copied from interface: `JRElementDataset`
      Gets the selected reset group in case of reset type group.
      Specified by:
        `getResetGroup` in interface `JRElementDataset`

    - #### getIncrementGroup

          public JRGroup getIncrementGroup()

      Description copied from interface: `JRElementDataset`
      Gets the selected increment group in case of increment type group.
      Specified by:
        `getIncrementGroup` in interface `JRElementDataset`

    - #### getTimeZone

          protected java.util.TimeZone getTimeZone()

    - #### initialize

          protected void initialize()

    - #### evaluate

          protected void evaluate(JRCalculator calculator)
                           throws JRExpressionEvalException

      Throws:
        `JRExpressionEvalException`

    - #### evaluateIncrementWhenExpression

          protected void evaluateIncrementWhenExpression(JRCalculator calculator)
                                                  throws JRExpressionEvalException

      Throws:
        `JRExpressionEvalException`

    - #### increment

          protected void increment()

    - #### customInitialize

          protected abstract void customInitialize()

      Initializes the element dataset.

      The dataset is initialized before being used and after each time the dataset gets reset.

      See Also:
        `getResetTypeValue()`

    - #### customEvaluate

          protected abstract void customEvaluate(JRCalculator calculator)
                                          throws JRExpressionEvalException

      Evaluates the expressions associated with the dataset.

      Usually, the result of the evaluation would be preserved so that it is used in `customIncrement()`

      Parameters:
        `calculator` - used to evaluate expressions
      Throws:
        `JRExpressionEvalException` - any exception that occurs while evaluating expressions

    - #### customIncrement

          protected abstract void customIncrement()

      Increments the dataset by collecting the result of the expression evaluation.

    - #### getDatasetRun

          public JRDatasetRun getDatasetRun()

      Description copied from interface: `JRElementDataset`
      Returns the sub dataset run for this chart dataset.
      Specified by:
        `getDatasetRun` in interface `JRElementDataset`
      Returns:
        the sub dataset run for this chart dataset

    - #### evaluateDatasetRun

          public void evaluateDatasetRun(byte evaluation)
                                  throws JRException

      Throws:
        `JRException`

    - #### getInputDataset

          public JRFillDataset getInputDataset()

    - #### getIncrementWhenExpression

          public JRExpression getIncrementWhenExpression()

      Description copied from interface: `JRElementDataset`
      Returns the "increment when" expression.

      This expression determines whether a dataset will be incremented or not.

      The expression (if not null) is evaluated before each increment of the dataset. The increment will be carried on only when the result of the evaluation is `Boolean.TRUE`; if the result is null or false, the increment will not be performed.

      Specified by:
        `getIncrementWhenExpression` in interface `JRElementDataset`
      Returns:
        the "increment when" expression

    - #### clone

          public java.lang.Object clone()

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

    - #### getFillDataset

          public JRFillDataset getFillDataset()

© 2001-2010 Jaspersoft Corporation www.jaspersoft.com