Package org.apache.cayenne.exp.parser

# Class ConditionNode

java.lang.Object
org.apache.cayenne.exp.Expression
org.apache.cayenne.exp.parser.SimpleNode
org.apache.cayenne.exp.parser.ConditionNode

All Implemented Interfaces:
  `Serializable`, `Node`, `XMLSerializable`

Direct Known Subclasses:
  `ASTBetween`, `ASTEqual`, `ASTExists`, `ASTFalse`, `ASTGreater`, `ASTGreaterOrEqual`, `ASTIn`, `ASTLess`, `ASTLessOrEqual`, `ASTNotBetween`, `ASTNotEqual`, `ASTNotExists`, `ASTNotIn`, `ASTTrue`, `PatternMatchNode`

public abstract class ConditionNode extends SimpleNode
Superclass of conditional expressions.

Since:
  1.1
See Also:
  - Serialized Form

- ## Field Summary

  ### Fields inherited from class org.apache.cayenne.exp.parser.SimpleNode

  `children, id, parent`

  ### Fields inherited from class org.apache.cayenne.exp.Expression

  `ADD, AND, ASTERISK, BETWEEN, BITWISE_AND, BITWISE_LEFT_SHIFT, BITWISE_NOT, BITWISE_OR, BITWISE_RIGHT_SHIFT, BITWISE_XOR, CUSTOM_OP, DB_PATH, DBID_PATH, DIVIDE, ENCLOSING_OBJECT, EQUAL_TO, EXISTS, FALSE, FULL_OBJECT, FUNCTION_CALL, GREATER_THAN, GREATER_THAN_EQUAL_TO, IN, LESS_THAN, LESS_THAN_EQUAL_TO, LIKE, LIKE_IGNORE_CASE, LIST, MULTIPLY, NEGATIVE, NOT, NOT_BETWEEN, NOT_EQUAL_TO, NOT_EXISTS, NOT_IN, NOT_LIKE, NOT_LIKE_IGNORE_CASE, OBJ_PATH, OR, PRUNED_NODE, SUBQUERY, SUBTRACT, TRUE, type`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ConditionNode(int i)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected Object`
  `evaluateNode(Object o)`
  Evaluates itself with object, pushing result on the stack.
  `protected abstract Boolean`
  `evaluateSubNode(Object o, Object[] evaluatedChildren)`
  `protected abstract int`
  `getRequiredChildrenCount()`
  `void`
  `jjtSetParent(Node n)`
  This pair of methods are used to inform the node of its parent.

  ### Methods inherited from class org.apache.cayenne.exp.parser.SimpleNode

  `appendAsEJBQL, appendAsEJBQL, appendAsEscapedString, appendAsString, appendChildrenAsEJBQL, appendScalarAsString, connectChildren, encodeScalarAsEJBQL, evaluate, evaluateChild, expName, flattenTree, getEJBQLExpressionOperator, getExpressionOperator, getOperand, getOperandCount, getPathAliases, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, notExp, pruneNodeForPrunedChild, setOperand, unwrapChild, wrapChild`

  ### Methods inherited from class org.apache.cayenne.exp.Expression

  `andExp, andExp, deepCopy, encodeAsXML, equals, filter, filterObjects, first, getType, hashCode, joinExp, joinExp, match, orExp, orExp, params, params, paramsArray, setType, shallowCopy, toEJBQL, toEJBQL, toString, transform, transformExpression, traverse, traverse`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### ConditionNode

    public ConditionNode(int i)

- ## Method Details

  - ### jjtSetParent

    public void jjtSetParent(Node n)
    Description copied from interface: `Node`
    This pair of methods are used to inform the node of its parent.
    Specified by:
      `jjtSetParent` in interface `Node`
    Overrides:
      `jjtSetParent` in class `SimpleNode`

  - ### evaluateNode

    protected Object evaluateNode(Object o) throws Exception
    Description copied from class: `SimpleNode`
    Evaluates itself with object, pushing result on the stack.
    Specified by:
      `evaluateNode` in class `SimpleNode`
    Throws:
      `Exception`

  - ### getRequiredChildrenCount

    protected abstract int getRequiredChildrenCount()

  - ### evaluateSubNode

    protected abstract Boolean evaluateSubNode(Object o, Object[] evaluatedChildren) throws Exception
    Throws:
      `Exception`