Package org.apache.cayenne.exp.parser
Class ASTCustomAggregate
- All Implemented Interfaces:
Serializable
,Node
,XMLSerializable
Class for custom aggregation functions expressions.
- Since:
- 5.0
- See Also:
-
Field Summary
Fields inherited from class org.apache.cayenne.exp.parser.ASTFunctionCall
functionName
Fields inherited from class org.apache.cayenne.exp.parser.SimpleNode
children, id, parent
Fields inherited from class org.apache.cayenne.exp.Expression
ADD, 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 Summary
ConstructorsModifierConstructorDescriptionprotected
ASTCustomAggregate
(String functionName) Creates a new aggregate function expression with provided name.ASTCustomAggregate
(String functionName, Expression... expressions) Creates a new aggregate function expression with provided name. -
Method Summary
Modifier and TypeMethodDescriptionvoid
appendAsString
(Appendable out) Appends own content as a String to the provided Appendable.void
jjtAddChild
(Node n, int i) This method tells the node to add its argument to the node's list of children.protected void
setFunctionName
(String functionName) Creates a copy of this expression node, without copying children.Methods inherited from class org.apache.cayenne.exp.parser.ASTAggregateFunctionCall
evaluateCollection, evaluateNode, evaluateSubNode, getRequiredChildrenCount
Methods inherited from class org.apache.cayenne.exp.parser.ASTFunctionCall
appendAsEJBQL, appendFunctionNameAsString, equals, getExpressionOperator, getFunctionName, getType, hashCode, nameToCamelCase, needParenthesis
Methods inherited from class org.apache.cayenne.exp.parser.SimpleNode
appendAsEJBQL, appendAsEscapedString, appendChildrenAsEJBQL, appendScalarAsString, connectChildren, encodeScalarAsEJBQL, evaluate, evaluateChild, exists, expName, flattenTree, getEJBQLExpressionOperator, getOperand, getOperandCount, getPathAliases, isValidParent, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, notExists, notExp, pruneNodeForPrunedChild, setOperand, unwrapChild, wrapChild
Methods inherited from class org.apache.cayenne.exp.Expression
andExp, andExp, deepCopy, encodeAsXML, filter, filterObjects, first, joinExp, joinExp, match, orExp, orExp, params, params, paramsArray, setType, toEJBQL, toEJBQL, toString, transform, transformExpression, traverse, traverse
-
Constructor Details
-
ASTCustomAggregate
Creates a new aggregate function expression with provided name.- Parameters:
functionName
- name of the aggregate function
-
ASTCustomAggregate
Creates a new aggregate function expression with provided name.- Parameters:
functionName
- name of the aggregate functionexpressions
- the expressions this aggregate function is applied to
-
-
Method Details
-
shallowCopy
Description copied from class:Expression
Creates a copy of this expression node, without copying children.- Specified by:
shallowCopy
in classExpression
-
setFunctionName
- Overrides:
setFunctionName
in classASTFunctionCall
-
jjtAddChild
Description copied from interface:Node
This method tells the node to add its argument to the node's list of children.- Specified by:
jjtAddChild
in interfaceNode
- Overrides:
jjtAddChild
in classSimpleNode
-
appendAsString
Description copied from class:Expression
Appends own content as a String to the provided Appendable.- Overrides:
appendAsString
in classASTFunctionCall
- Throws:
IOException
-