Package org.apache.cayenne.exp.parser
Class ASTExtract
- java.lang.Object
-
- org.apache.cayenne.exp.Expression
-
- org.apache.cayenne.exp.parser.SimpleNode
-
- org.apache.cayenne.exp.parser.EvaluatedNode
-
- org.apache.cayenne.exp.parser.ASTFunctionCall
-
- org.apache.cayenne.exp.parser.ASTExtract
-
- All Implemented Interfaces:
Serializable
,Node
,XMLSerializable
public class ASTExtract extends ASTFunctionCall
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ASTExtract.DateTimePart
Available components of date/time.
-
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, 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 ASTExtract(Expression expression)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
appendFunctionNameAsString(Appendable out)
protected Object
evaluateSubNode(Object o, Object[] evaluatedChildren)
String
getFunctionName()
ASTExtract.DateTimePart
getPart()
String
getPartCamelCaseName()
protected int
getRequiredChildrenCount()
void
setPart(ASTExtract.DateTimePart part)
This method is used by FunctionExpressionFactoryExpression
shallowCopy()
Creates a copy of this expression node, without copying children.-
Methods inherited from class org.apache.cayenne.exp.parser.ASTFunctionCall
appendAsEJBQL, appendAsString, equals, getExpressionOperator, getType, hashCode, nameToCamelCase, needParenthesis, setFunctionName
-
Methods inherited from class org.apache.cayenne.exp.parser.EvaluatedNode
evaluateNode
-
Methods inherited from class org.apache.cayenne.exp.parser.SimpleNode
appendAsEJBQL, appendAsEscapedString, appendChildrenAsEJBQL, appendScalarAsString, connectChildren, encodeScalarAsEJBQL, evaluate, evaluateChild, expName, flattenTree, getEJBQLExpressionOperator, getOperand, getOperandCount, getPathAliases, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, 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 Detail
-
ASTExtract
public ASTExtract(Expression expression)
-
-
Method Detail
-
getFunctionName
public String getFunctionName()
- Overrides:
getFunctionName
in classASTFunctionCall
-
appendFunctionNameAsString
protected void appendFunctionNameAsString(Appendable out) throws IOException
- Overrides:
appendFunctionNameAsString
in classASTFunctionCall
- Throws:
IOException
-
setPart
public void setPart(ASTExtract.DateTimePart part)
This method is used by FunctionExpressionFactory- Parameters:
part
- date/time part to extract
-
getPart
public ASTExtract.DateTimePart getPart()
-
getPartCamelCaseName
public String getPartCamelCaseName()
-
shallowCopy
public Expression shallowCopy()
Description copied from class:Expression
Creates a copy of this expression node, without copying children.- Specified by:
shallowCopy
in classExpression
-
getRequiredChildrenCount
protected int getRequiredChildrenCount()
- Specified by:
getRequiredChildrenCount
in classEvaluatedNode
-
evaluateSubNode
protected Object evaluateSubNode(Object o, Object[] evaluatedChildren) throws Exception
- Specified by:
evaluateSubNode
in classEvaluatedNode
- Throws:
Exception
-
-