Class CoalesceExpression

java.lang.Object
org.apache.openjpa.jdbc.kernel.exps.CoalesceExpression
All Implemented Interfaces:
Serializable, Val, Value

public class CoalesceExpression extends Object
Coalesce expression.
Author:
Catalina Wei
See Also:
  • Field Details

  • Constructor Details

    • CoalesceExpression

      public CoalesceExpression(Val[] vals)
      Constructor.
  • Method Details

    • getVal

      public Val[] getVal()
    • getType

      public Class getType()
      Description copied from interface: Value
      Return the expected type for this value, or Object if the type is unknown.
    • initialize

      public ExpState initialize(Select sel, ExpContext ctx, int flags)
      Description copied from interface: Val
      Initialize the value. This method should recursively initialize any sub-values.
    • appendTo

      public void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer buf, int index)
      Description copied from interface: Val
      Append the indexth SQL element to the given buffer.
    • selectColumns

      public void selectColumns(Select sel, ExpContext ctx, ExpState state, boolean pks)
      Description copied from interface: Val
      Select just the columns for this value.
    • acceptVisit

      public void acceptVisit(ExpressionVisitor visitor)
      Description copied from interface: Value
      Accept a visit from a tree visitor.
      Specified by:
      acceptVisit in interface Value
    • getId

      public int getId()
      Specified by:
      getId in interface Val
    • calculateValue

      public void calculateValue(Select sel, ExpContext ctx, ExpState state, Val other, ExpState otherState)
      Description copied from interface: Val
      Calculate and cache the SQL for this value. This method is called before length or any append methods.
      other - the value being compared to, or null if not a comparison
    • groupBy

      public void groupBy(Select sel, ExpContext ctx, ExpState state)
      Description copied from interface: Val
      Group by this value.
    • length

      public int length(Select sel, ExpContext ctx, ExpState state)
      Description copied from interface: Val
      Return the number of SQL elements in this value.
    • load

      public Object load(ExpContext ctx, ExpState state, Result res) throws SQLException
      Description copied from interface: Val
      Load the data for this value.
      Throws:
      SQLException
    • orderBy

      public void orderBy(Select sel, ExpContext ctx, ExpState state, boolean asc)
      Description copied from interface: Val
      Order by this value.
    • select

      public void select(Select sel, ExpContext ctx, ExpState state, boolean pks)
      Description copied from interface: Val
      Select the data for this value.
    • getMetaData

      public ClassMetaData getMetaData()
      Description copied from interface: Value
      Return any associated persistent type.
    • setImplicitType

      public void setImplicitType(Class type)
      Description copied from interface: Value
      Set the implicit type of the value, based on how it is used in the filter. This method is only called on values who return Object from Value.getType().
    • setMetaData

      public void setMetaData(ClassMetaData meta)
      Description copied from interface: Value
      Associate a persistent type with this value.
    • setOtherPath

      public void setOtherPath(Value other)
    • getOtherPath

      public Value getOtherPath()
    • setOtherState

      public void setOtherState(ExpState otherState)
    • getOtherState

      public ExpState getOtherState()
    • isVariable

      public boolean isVariable()
      Description copied from interface: Value
      Return true if this value is a variable.
      Specified by:
      isVariable in interface Value
    • isAggregate

      public boolean isAggregate()
      Description copied from interface: Value
      Return true if this value is an aggregate.
      Specified by:
      isAggregate in interface Value
    • isXPath

      public boolean isXPath()
      Description copied from interface: Value
      Return true if this value is an XML Path.
      Specified by:
      isXPath in interface Value
    • toDataStoreValue

      public Object toDataStoreValue(Select sel, ExpContext ctx, ExpState state, Object val)
      Description copied from interface: Val
      Return the datastore value of the given object in the context of this value.
      Specified by:
      toDataStoreValue in interface Val
    • appendIsEmpty

      public void appendIsEmpty(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
      Description copied from interface: Val
      Append the SQL testing whether this value is empty to the given buffer.
      Specified by:
      appendIsEmpty in interface Val
    • appendIsNotEmpty

      public void appendIsNotEmpty(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
      Description copied from interface: Val
      Append the SQL testing whether this value is not empty to the given buffer.
      Specified by:
      appendIsNotEmpty in interface Val
    • appendIsNull

      public void appendIsNull(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
      Description copied from interface: Val
      Append the SQL testing whether this value is null to the given buffer.
      Specified by:
      appendIsNull in interface Val
    • appendIsNotNull

      public void appendIsNotNull(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
      Description copied from interface: Val
      Append the SQL testing whether this value is not null to the given buffer.
      Specified by:
      appendIsNotNull in interface Val
    • appendIndex

      public void appendIndex(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
      Description copied from interface: Val
      Append the SQL checking the index of this value.
      Specified by:
      appendIndex in interface Val
    • appendType

      public void appendType(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
      Description copied from interface: Val
      Append the SQL checking the type of this value.
      Specified by:
      appendType in interface Val
    • appendSize

      public void appendSize(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql)
      Description copied from interface: Val
      Append the SQL checking the size of this value.
      Specified by:
      appendSize in interface Val
    • getAlias

      public String getAlias()
      Description copied from interface: Value
      Return select item alias
      Specified by:
      getAlias in interface Value
    • setAlias

      public void setAlias(String alias)
      Description copied from interface: Value
      Set select item alias
      Specified by:
      setAlias in interface Value
    • getSelectAs

      public Value getSelectAs()
      Description copied from interface: Value
      Return 'this' concrete class if alias is set, otherwise null
      Specified by:
      getSelectAs in interface Val
      Specified by:
      getSelectAs in interface Value
    • getPath

      public Path getPath()
      Specified by:
      getPath in interface Value
    • getName

      public String getName()
      Specified by:
      getName in interface Value