org.jfree.report.expressions
Interface Expression
- Cloneable, Serializable
- Function
- AbstractExpression, ColumnAggregationExpression, FormulaExpression, FormulaFunction, GetValueExpression, GroupByExpression, IsEmptyDataExpression, IsEmptyExpression, IsEndOfDataExpression, IsExportTypeExpression, IsNullExpression, SurveyScaleExpression
extends Cloneable, Serializable
An expression is a lightweight computation that does not maintain a state.
Expressions are used to calculate values within a single row of a report.
Expressions can use a dataRow to access other fields, expressions or
functions within the current row in the report.
Statefull computations can be implemented using functions.
Object | clone() - Clones the expression, expression should be reinitialized after the
cloning.
|
Object | computeValue() - Return the current expression value.
|
Expression | getInstance() - Return a new instance of this expression.
|
String | getName() - Returns the name of the expression.
|
boolean | isDeepTraversing() - A deep-traversing expression declares that it should receive updates from
all subreports.
|
boolean | isPrecompute() - Returns, whether the expression will be precomputed.
|
boolean | isPreserve() - Checks, whether the expression's result should be preserved in the
precomputed value registry.
|
void | setDeepTraversing(boolean deepTraversing) - Defines, whether the expression is deep-traversing.
|
void | setName(String name) - Sets the name of the expression.
|
void | setPrecompute(boolean precompute) - Defines, whether the expression will be precomputed.
|
void | setPreserve(boolean preserve) - Defines, whether the expression's result should be preserved in the
precomputed value registry.
|
void | setRuntime(ExpressionRuntime runtime) - Defines the DataRow used in this expression.
|
clone
public Object clone()
throws CloneNotSupportedException
Clones the expression, expression should be reinitialized after the
cloning.
Expression maintain no state, cloning is done at the beginning
of the report processing to disconnect the used expression from any other
object space.
- A clone of this expression.
computeValue
public Object computeValue()
throws DataSourceException
Return the current expression value.
The value depends (obviously) on
the expression implementation.
- the value of the function.
getInstance
public Expression getInstance()
Return a new instance of this expression. The copy is initialized and uses
the same parameters as the original, but does not share any objects.
getName
public String getName()
Returns the name of the expression. An expression without a name cannot be
referenced from outside the element.
isDeepTraversing
public boolean isDeepTraversing()
A deep-traversing expression declares that it should receive updates from
all subreports. This mode should be activated if the expression's result
depends on values contained in the subreport.
- true, if the expression is deep-traversing, false otherwise.
isPrecompute
public boolean isPrecompute()
Returns, whether the expression will be precomputed. For precomputed
expressions a parallel evaluation process is started and the result to
which the expression evaluates before it gets out of scope will be used
whenever an other expression queries this expression's value.
- true, if the expression is precomputed, false otherwise.
isPreserve
public boolean isPreserve()
Checks, whether the expression's result should be preserved in the
precomputed value registry. This way, the last value for that expression
can be retrieved after the report has been finished.
The preserve-function will only preserve the last value that has been
evaluated before the expression went out of scope.
- true, if the expression's results should be preserved,
false otherwise.
setDeepTraversing
public void setDeepTraversing(boolean deepTraversing)
Defines, whether the expression is deep-traversing.
deepTraversing
- true, if the expression is deep-traversing, false
otherwise.
setName
public void setName(String name)
Sets the name of the expression.
setPrecompute
public void setPrecompute(boolean precompute)
Defines, whether the expression will be precomputed. For precomputed
expressions a parallel evaluation process is started and the result to
which the expression evaluates before it gets out of scope will be used
whenever an other expression queries this expression's value.
precompute
- true, if the expression is precomputed, false otherwise.
setPreserve
public void setPreserve(boolean preserve)
Defines, whether the expression's result should be preserved in the
precomputed value registry. This way, the last value for that expression
can be retrieved after the report has been finished.
preserve
- true, if the expression's results should be preserved,
false otherwise.
setRuntime
public void setRuntime(ExpressionRuntime runtime)
Defines the DataRow used in this expression. The dataRow is set when the
report processing starts and can be used to access the values of functions,
expressions and the reports datasource.
runtime
- the runtime information for the expression