Class FormulaFunction

    • Constructor Detail

      • FormulaFunction

        public FormulaFunction()
    • Method Detail

      • getInitial

        public java.lang.String getInitial()
      • getInitialExpression

        public java.lang.String getInitialExpression()
      • getInitialNamespace

        public java.lang.String getInitialNamespace()
      • setInitial

        public void setInitial​(java.lang.String initial)
      • getFormula

        public java.lang.String getFormula()
      • getFormulaNamespace

        public java.lang.String getFormulaNamespace()
      • getFormulaExpression

        public java.lang.String getFormulaExpression()
      • setFormula

        public void setFormula​(java.lang.String formula)
      • advance

        public Function advance()
                         throws DataSourceException
        When the advance method is called, the function is asked to perform the next step of its computation.

        The original function must not be altered during that step (or more correctly, calling advance on the original expression again must not return a different result).

        Specified by:
        advance in interface Function
        Returns:
        a copy of the function containing the new state.
        Throws:
        DataSourceException
      • computeValue

        public java.lang.Object computeValue()
                                      throws DataSourceException
        Return the current expression value.

        The value depends (obviously) on the expression implementation.

        Specified by:
        computeValue in interface Expression
        Returns:
        the value of the function.
        Throws:
        DataSourceException
      • clone

        public java.lang.Object clone()
                               throws java.lang.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.

        Specified by:
        clone in interface Expression
        Overrides:
        clone in class AbstractExpression
        Returns:
        A clone of this expression.
        Throws:
        java.lang.CloneNotSupportedException - this should never happen.
      • getCompiledFormula

        public org.pentaho.reporting.libraries.formula.Formula getCompiledFormula()
                                                                           throws org.pentaho.reporting.libraries.formula.parser.ParseException
        Returns the compiled formula. The formula is not connected to a formula context.
        Returns:
        the formula.
        Throws:
        org.pentaho.reporting.libraries.formula.parser.ParseException - if the formula contains syntax errors.