Interface JRExtendedIncrementer

All Superinterfaces:
JRIncrementer
All Known Implementing Classes:
JRAbstractExtendedIncrementer

public interface JRExtendedIncrementer extends JRIncrementer
Extended incrementer interface.

The JRIncrementer has been kept for backward compatibility.

The crosstab calculation engine requires extended incrementers. An incrementer implementing JRIncrementer can be used for report variables only.

Author:
Lucian Chirita (lucianc@users.sourceforge.net)
  • Method Details

    • increment

      Object increment(JRCalculable calculable, Object expressionValue, AbstractValueProvider valueProvider) throws JRException
      Increments a calculable object with a value.
      Parameters:
      calculable - the calculable
      expressionValue - the value
      valueProvider - value provider
      Returns:
      the incremented value
      Throws:
      JRException
    • initialValue

      Object initialValue()
      Returns the initial value for this calculation.

      This method should return a neutral value for this calculation (e.g. 0 for sum, 1 for product, etc) or a default value if no neutral value exists.

      Returns:
      the initial value for this calculation
    • combine

      Object combine(JRCalculable calculable, JRCalculable calculableValue, AbstractValueProvider valueProvider) throws JRException
      Combines two calculated values into one.
      Parameters:
      calculable - the first calculated value
      calculableValue - the second calculated value
      valueProvider - the value provider used for the helper variables
      Returns:
      the combined value
      Throws:
      JRException
    • ignoresNullValues

      boolean ignoresNullValues()
      Specifies whether null values are ignored by this incrementer. If null values are ignored, the caller can chose to skip incrementing a calculation with a null value.
      Returns:
      whether null values are ignored by this incrementer