Package org.apache.cayenne.exp.parser
Class ASTWhen
java.lang.Object
org.apache.cayenne.exp.Expression
org.apache.cayenne.exp.parser.SimpleNode
org.apache.cayenne.exp.parser.AggregateConditionNode
org.apache.cayenne.exp.parser.ASTWhen
- All Implemented Interfaces:
- Serializable,- Node,- XMLSerializable
"WHEN" part of the case-when expression.
- Since:
- 5.0
- See Also:
- 
Field SummaryFields inherited from class org.apache.cayenne.exp.parser.SimpleNodechildren, id, parentFields inherited from class org.apache.cayenne.exp.ExpressionADD, ALL, AND, ANY, ASTERISK, BETWEEN, BITWISE_AND, BITWISE_LEFT_SHIFT, BITWISE_NOT, BITWISE_OR, BITWISE_RIGHT_SHIFT, BITWISE_XOR, CASE_WHEN, CUSTOM_OP, DB_PATH, DBID_PATH, DIVIDE, ELSE, 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, SCALAR, SUBQUERY, SUBTRACT, THEN, TRUE, type, WHEN
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidappendAsEJBQL(List<Object> parameterAccumulator, Appendable out, String rootId) Stores a String representation of Expression as EJBQL using a provided PrintWriter.protected ObjectEvaluates itself with object, pushing result on the stack.protected StringgetExpressionOperator(int index) intgetType()Returns a type of expression.voidjjtSetParent(Node n) This pair of methods are used to inform the node of its parent.Creates a copy of this expression node, without copying children.Methods inherited from class org.apache.cayenne.exp.parser.AggregateConditionNodeexists, isValidParent, jjtAddChild, notExists, pruneNodeForPrunedChild, transformExpressionMethods inherited from class org.apache.cayenne.exp.parser.SimpleNodeappendAsEJBQL, appendAsEscapedString, appendAsString, appendChildrenAsEJBQL, appendScalarAsString, connectChildren, encodeScalarAsEJBQL, evaluate, evaluateChild, expName, flattenTree, getEJBQLExpressionOperator, getOperand, getOperandCount, getPathAliases, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, notExp, setOperand, unwrapChild, wrapChild
- 
Constructor Details- 
ASTWhen
- 
ASTWhenpublic ASTWhen(int id) 
 
- 
- 
Method Details- 
shallowCopyDescription copied from class:ExpressionCreates a copy of this expression node, without copying children.- Specified by:
- shallowCopyin class- Expression
 
- 
getExpressionOperator- Specified by:
- getExpressionOperatorin class- SimpleNode
 
- 
evaluateNodeDescription copied from class:SimpleNodeEvaluates itself with object, pushing result on the stack.- Specified by:
- evaluateNodein class- SimpleNode
- Throws:
- Exception
 
- 
getTypepublic int getType()Description copied from class:ExpressionReturns a type of expression. Most common types are defined as public static fields of this interface.- Overrides:
- getTypein class- Expression
 
- 
jjtSetParentDescription copied from interface:NodeThis pair of methods are used to inform the node of its parent.- Specified by:
- jjtSetParentin interface- Node
- Overrides:
- jjtSetParentin class- SimpleNode
 
- 
appendAsEJBQLpublic void appendAsEJBQL(List<Object> parameterAccumulator, Appendable out, String rootId) throws IOException Description copied from class:ExpressionStores a String representation of Expression as EJBQL using a provided PrintWriter. DB path expressions produce non-standard EJBQL path expressions. If the parameterAccumulator is supplied then as the EJBQL is output, it may load parameters into this list. In this case, the EJBQL output will contain reference to positional parameters. If no parameterAccumulator is supplied and a scalar type is encountered for which there is no EJBQL literal representation (such as dates) then this method will throw a runtime exception to indicate that it was not possible to generate a string-only representation of the Expression in EJBQL.- Overrides:
- appendAsEJBQLin class- SimpleNode
- Throws:
- IOException
 
 
-