Package org.apache.cayenne.exp.parser
Class ASTDbPath
- java.lang.Object
-
- org.apache.cayenne.exp.Expression
-
- org.apache.cayenne.exp.parser.SimpleNode
-
- org.apache.cayenne.exp.parser.ASTPath
-
- org.apache.cayenne.exp.parser.ASTDbPath
-
- All Implemented Interfaces:
Serializable,Node,XMLSerializable
public class ASTDbPath extends ASTPath
Path expression traversing DB relationships and attributes.- Since:
- 1.1
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static StringDB_PREFIX-
Fields inherited from class org.apache.cayenne.exp.parser.ASTPath
path, pathAliases
-
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, DB_PATH, DIVIDE, EQUAL_TO, 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_IN, NOT_LIKE, NOT_LIKE_IGNORE_CASE, OBJ_PATH, OR, PRUNED_NODE, SUBTRACT, TRUE, type
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidappendAsEJBQL(List<Object> parameterAccumulator, Appendable out, String rootId)Stores a String representation of Expression as EJBQL using a provided PrintWriter.voidappendAsString(Appendable out)Appends own content as a String to the provided Appendable.protected ObjectevaluateNode(Object o)Evaluates itself with object, pushing result on the stack.intgetType()Returns a type of expression.ExpressionshallowCopy()Creates a copy of this expression node, without copying children.protected Map<?,?>toMap(Object o)-
Methods inherited from class org.apache.cayenne.exp.parser.ASTPath
evaluateEntityNode, getExpressionOperator, getOperand, getOperandCount, getPath, getPathAliases, hashCode, setOperand, setPath, setPathAliases
-
Methods inherited from class org.apache.cayenne.exp.parser.SimpleNode
appendAsEJBQL, appendAsEscapedString, appendChildrenAsEJBQL, appendScalarAsString, connectChildren, encodeScalarAsEJBQL, evaluate, evaluateChild, expName, flattenTree, getEJBQLExpressionOperator, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, notExp, pruneNodeForPrunedChild, unwrapChild, wrapChild
-
Methods inherited from class org.apache.cayenne.exp.Expression
andExp, andExp, deepCopy, encodeAsXML, equals, filter, filterObjects, first, joinExp, joinExp, match, orExp, orExp, params, params, paramsArray, setType, toEJBQL, toEJBQL, toString, transform, transformExpression, traverse, traverse
-
-
-
-
Field Detail
-
DB_PREFIX
public static final String DB_PREFIX
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ASTDbPath
public ASTDbPath()
-
ASTDbPath
public ASTDbPath(Object value)
-
-
Method Detail
-
evaluateNode
protected Object evaluateNode(Object o) throws Exception
Description copied from class:SimpleNodeEvaluates itself with object, pushing result on the stack.- Specified by:
evaluateNodein classSimpleNode- Throws:
Exception
-
shallowCopy
public Expression shallowCopy()
Creates a copy of this expression node, without copying children.- Specified by:
shallowCopyin classExpression
-
appendAsEJBQL
public 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 classSimpleNode- Throws:
IOException- Since:
- 4.0
-
appendAsString
public void appendAsString(Appendable out) throws IOException
Description copied from class:ExpressionAppends own content as a String to the provided Appendable.- Overrides:
appendAsStringin classSimpleNode- Throws:
IOException- Since:
- 4.0
-
getType
public 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 classExpression
-
-