net.sf.jasperreports.engine.component

## Class BaseFillComponent

- java.lang.Object
- - net.sf.jasperreports.engine.component.BaseFillComponent

- All Implemented Interfaces:
    FillComponent
  Direct Known Subclasses:
    BarbecueFillComponent, BarcodeFillComponent, BaseFillList, FillSpiderChart, FillTable, IconLabelComponentFill, MapFillComponent, SortComponentFill

      public abstract class BaseFillComponent
      extends java.lang.Object
      implements FillComponent

  A base abstract implementation of a fill component.
  Version:
    $Id: BaseFillComponent.java 6770 2013-11-22 14:48:55Z lucianc $
  Author:
    Lucian Chirita (lucianc@users.sourceforge.net)

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected int` | `elementId` Deprecated. replaced by `printElementOriginator`
    `protected FillContext` | `fillContext` The fill context, as set by `initialize(FillContext)`.
    `protected PrintElementOriginator` | `printElementOriginator`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BaseFillComponent()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected <T extends Deduplicable> T` | `deduplicate(T object)` Deduplicates an object by looking for an identical one that's already present in the fill context.
    `void` | `evaluateDelayedElement(JRPrintElement element, byte evaluation)` The default implementation throws `UnsupportedOperationException`.
    `protected java.lang.Object` | `evaluateExpression(JRExpression expression, byte evaluation)` Evaluates an expression.
    `void` | `initialize(FillContext fillContext)` Initializes the fill component with the fill context.
    `void` | `rewind()` The default implementation is empty.

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

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

    - ### Methods inherited from interface net.sf.jasperreports.engine.component.FillComponent

      `evaluate, fill, prepare`

- - ### Field Detail

    - #### fillContext

          protected FillContext fillContext

      The fill context, as set by `initialize(FillContext)`.

    - #### printElementOriginator

          protected PrintElementOriginator printElementOriginator

    - #### elementId

          protected int elementId

      Deprecated. replaced by `printElementOriginator`

  - ### Constructor Detail

    - #### BaseFillComponent

          public BaseFillComponent()

  - ### Method Detail

    - #### initialize

          public void initialize(FillContext fillContext)

      Description copied from interface: `FillComponent`
      Initializes the fill component with the fill context.

      This method is called before the fill component is used.

      Specified by:
        `initialize` in interface `FillComponent`
      Parameters:
        `fillContext` - the fill context

    - #### evaluateExpression

          protected final java.lang.Object evaluateExpression(JRExpression expression,
                                            byte evaluation)
                                                       throws JRException

      Evaluates an expression.
      Parameters:
        `expression` - the expression to evaluate
        `evaluation` - the evaluation type
      Returns:
        the evaluation result
      Throws:
        `JRException`

    - #### evaluateDelayedElement

          public void evaluateDelayedElement(JRPrintElement element,
                                    byte evaluation)
                                      throws JRException

      The default implementation throws `UnsupportedOperationException`.

      If a component supports delayed evaluation, it needs to override this method.

      Specified by:
        `evaluateDelayedElement` in interface `FillComponent`
      Parameters:
        `element` - the print element for which delayed evaluation has been registered
        `evaluation` - the evaluation type
      Throws:
        `JRException`
      See Also:
        `FillComponent.evaluate(byte)`

    - #### rewind

          public void rewind()

      The default implementation is empty.

      Override this method if something needs to be done on component rewind.

      Specified by:
        `rewind` in interface `FillComponent`

    - #### deduplicate

          protected <T extends Deduplicable> T deduplicate(T object)

      Deduplicates an object by looking for an identical one that's already present in the fill context. This operations should be performed on `element templates` in order to prevent creation of a large number of identical instances.
      Parameters:
        `object` - the object to deduplicate
      Returns:
        a duplicate of the object if found, or the passed object if not

© 2001-2010 Jaspersoft Corporation www.jaspersoft.com