org.jfree.report.function
Interface Function

All Superinterfaces:
java.lang.Cloneable, java.util.EventListener, Expression, ReportListener
All Known Implementing Classes:
AbstractFunction

public interface Function
extends ReportListener, Expression, java.lang.Cloneable

The interface for report functions. A report function separates the business logic from presentation of the result. The function is called whenever JFreeReport changes its state while generating the report. The working model for the functions is based on cloning the state of the function on certain checkpoints to support the ReportState implementation of JFreeReport.

Although functions support the ReportListener interface, they are not directly added to a report. A report FunctionCollection is used to control the functions. Functions are required to be cloneable.

Author:
Thomas Morgner

Field Summary
 
Fields inherited from interface org.jfree.report.function.Expression
AUTOACTIVATE_PROPERTY
 
Method Summary
 java.lang.Object clone()
          Clones the function.
 
Methods inherited from interface org.jfree.report.event.ReportListener
groupFinished, groupStarted, itemsAdvanced, itemsFinished, itemsStarted, reportDone, reportFinished, reportInitialized, reportStarted
 
Methods inherited from interface org.jfree.report.function.Expression
getDataRow, getDependencyLevel, getInstance, getName, getProperties, getValue, initialize, isActive, setDataRow, setDependencyLevel, setName, setProperties
 

Method Detail

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Clones the function.

Specified by:
clone in interface Expression
Returns:
a clone of the function.
Throws:
java.lang.CloneNotSupportedException - this should never be thrown.