Package mondrian.mdx

Class ParameterExpr

  • All Implemented Interfaces:
    Exp

    public class ParameterExpr
    extends ExpBase
    MDX expression which is a usage of a Parameter.
    Author:
    jhyde
    • Constructor Detail

      • ParameterExpr

        public ParameterExpr​(Parameter parameter)
        Creates a ParameterExpr.
        Parameters:
        parameter - Parameter
    • Method Detail

      • getType

        public Type getType()
        Description copied from interface: Exp
        Returns the type of this expression. Never null.
      • getCategory

        public int getCategory()
        Description copied from interface: Exp
        Returns the Category of the expression.
      • accept

        public Exp accept​(Validator validator)
        Description copied from interface: Exp
        Validates this expression. The validator acts in the role of 'visitor' (see Gang of Four 'visitor pattern'), and an expression in the role of 'visitee'.
        Parameters:
        validator - Validator contains validation context
        Returns:
        The validated expression; often but not always the same as this expression
      • accept

        public Calc accept​(ExpCompiler compiler)
        Description copied from interface: Exp
        Converts this expression into an a tree of expressions which can be efficiently evaluated.
        Specified by:
        accept in interface Exp
        Overrides:
        accept in class ExpBase
        Returns:
        A compiled expression
      • accept

        public Object accept​(MdxVisitor visitor)
        Description copied from interface: Exp
        Accepts a visitor to this Exp. The implementation should generally dispatches to the MdxVisitor.visit(mondrian.olap.Query) method appropriate to the type of expression.
        Parameters:
        visitor - Visitor
      • unparse

        public void unparse​(PrintWriter pw)
        Unparses the definition of this Parameter.

        The first usage of a parameter in a query becomes a call to the Parameter(paramName, description, defaultValue) function, and subsequent usages become calls to ParamRef(paramName)

        Specified by:
        unparse in interface Exp
        Overrides:
        unparse in class QueryPart
        Parameters:
        pw - PrintWriter
      • equals

        public boolean equals​(Object other)
        Returns whether this parameter is equal to another, based upon name, type and value
        Overrides:
        equals in class Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • isModifiable

        public boolean isModifiable()
        Returns whether the parameter can be modified.
        Returns:
        whether parameter can be modified
      • getParameter

        public Parameter getParameter()
        Returns the parameter used by this expression.
        Returns:
        parameter used by this expression