Class MapLiteral.MapKeyLiteral

java.lang.Object
org.datanucleus.store.rdbms.sql.expression.SQLExpression
org.datanucleus.store.rdbms.sql.expression.MapLiteral.MapKeyLiteral
All Implemented Interfaces:
SQLLiteral
Enclosing class:
MapLiteral

public static class MapLiteral.MapKeyLiteral extends SQLExpression implements SQLLiteral
An SQL expression that will test if a column of a table falls within the given Map's keys.
  • Field Details

    • value

      private final Map value
    • keyExpressions

      private List<SQLExpression> keyExpressions
      Expressions for all keys in the Map
  • Constructor Details

    • MapKeyLiteral

      public MapKeyLiteral(SQLStatement stmt, JavaTypeMapping mapping, Object value)
      Constructor.
      Parameters:
      stmt - SQL statement
      mapping - The mapping for the Map
      value - The transient Map that is the value.
  • Method Details

    • getKeyExpressions

      public List<SQLExpression> getKeyExpressions()
    • invoke

      public SQLExpression invoke(String methodName, List<SQLExpression> args)
      Description copied from class: SQLExpression
      Invocation of a method on this expression.
      Overrides:
      invoke in class SQLExpression
      Parameters:
      methodName - name of the method to invoke
      args - Args to this method (if any)
      Returns:
      the converted value
    • 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
    • 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
    • setStatement

      protected void setStatement()