Class InputParameterStateObject

  • All Implemented Interfaces:
    StateObject

    public class InputParameterStateObject
    extends SimpleStateObject
    Either positional or named parameters may be used. Positional and named parameters may not be mixed in a single query. Input parameters can only be used in the WHERE clause or HAVING clause of a query.
    Since:
    2.4
    Version:
    2.4
    Author:
    Pascal Filion
    See Also:
    InputParameter
    • Constructor Detail

      • InputParameterStateObject

        public InputParameterStateObject​(StateObject parent)
        Creates a new InputParameterStateObject.
        Parameters:
        parent - The parent of this state object, which cannot be null
        Throws:
        NullPointerException - The given parent cannot be null
      • InputParameterStateObject

        public InputParameterStateObject​(StateObject parent,
                                         String parameter)
        Creates a new InputParameterStateObject.
        Parameters:
        parent - The parent of this state object, which cannot be null
        parameter - The positional or named input parameter
        Throws:
        NullPointerException - The given parent cannot be null
    • Method Detail

      • isNamed

        public boolean isNamed()
        Determines whether this parameter is a positional parameter, i.e. the parameter type is '?'.
        Returns:
        true if the parameter type is '?'; false if it's ':'
      • isPositional

        public boolean isPositional()
        Determines whether this parameter is a positional parameter, i.e. the parameter type is ':'.
        Returns:
        true if the parameter type is ':'; false if it's '?'
      • setExpression

        public void setExpression​(InputParameter expression)
        Keeps a reference of the parsed object object, which should only be done when this object is instantiated during the conversion of a parsed JPQL query into StateObjects.
        Parameters:
        expression - The parsed object representing an input parameter