Class ParameterLiteral

  • All Implemented Interfaces:
    SQLLiteral

    public class ParameterLiteral
    extends SQLExpression
    implements SQLLiteral
    Representation of a literal representing a parameter where we don't know the type of the parameter yet. This literal doesn't have a long lifetime, being replaced during the process of conversion to SQL using the compared expression to define the mapping (and hence which literal type) to use.
    • Field Detail

      • name

        protected String name
        Parameter name.
      • value

        protected Object value
    • Constructor Detail

      • ParameterLiteral

        public ParameterLiteral​(SQLStatement stmt,
                                JavaTypeMapping mapping,
                                Object value,
                                String parameterName)
        Constructor for an integer literal with a value.
        Parameters:
        stmt - the SQL statement
        mapping - the mapping
        value - the value
        parameterName - Name of the parameter that this represents if any (as JDBC "?")
    • Method Detail

      • setName

        public void setName​(String name)
      • getName

        public String getName()
      • getValue

        public Object getValue()
        Description copied from interface: SQLLiteral
        Accessor to the literal value
        Specified by:
        getValue in interface SQLLiteral
        Returns:
        the value of the literal
      • add

        public SQLExpression add​(SQLExpression expr)
        Description copied from class: SQLExpression
        Additive Operator. The binary + operator performs addition when applied to two operands of numeric type, producing the sum of the operands. If the type of either operand of a + operator is String, then the operation is string concatenation.
        Overrides:
        add in class SQLExpression
        Parameters:
        expr - the right-hand operand
        Returns:
        If one of the operands is String, the returned value is the string concatenation; The sum of two operands of numeric type. The left-hand operand is the minuend and the right-hand operand is the subtrahend;
      • ge

        public BooleanExpression ge​(SQLExpression expr)
        Description copied from class: SQLExpression
        Relational operator (greater than or equals)
        Overrides:
        ge in class SQLExpression
        Parameters:
        expr - the right-hand operand
        Returns:
        true if the value of the left-hand operand is greater than or equal the value of the right-hand operand, and otherwise is false.
      • gt

        public BooleanExpression gt​(SQLExpression expr)
        Description copied from class: SQLExpression
        Relational operator (greater than)
        Overrides:
        gt in class SQLExpression
        Parameters:
        expr - the right-hand operand
        Returns:
        true if the value of the left-hand operand is greater than the value of the right-hand operand, and otherwise is false.
      • le

        public BooleanExpression le​(SQLExpression expr)
        Description copied from class: SQLExpression
        Relational operator (lower than or equals)
        Overrides:
        le in class SQLExpression
        Parameters:
        expr - the right-hand operand
        Returns:
        true if the value of the left-hand operand is less than or equal to the value of the right-hand operand, and otherwise is false.
      • lt

        public BooleanExpression lt​(SQLExpression expr)
        Description copied from class: SQLExpression
        Relational operator (lower than)
        Overrides:
        lt in class SQLExpression
        Parameters:
        expr - the right-hand operand
        Returns:
        true if the value of the left-hand operand is less than the value of the right-hand operand, and otherwise is false.
      • setNotParameter

        public void setNotParameter()
        Description copied from interface: SQLLiteral
        Method to set this literal as not being a parameter. If the literal if not currently a parameter then does nothing. Updates any underlying SQL to have the value.
        Specified by:
        setNotParameter in interface SQLLiteral