# Class ASTDbIdPath

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
org.apache.cayenne.exp.parser.ASTDbIdPath

All Implemented Interfaces:
  `Serializable, Node, XMLSerializable`

public class ASTDbIdPath extends ASTDbPath

Since:
  4.2
See Also:
  - Serialized Form

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `DBID_PREFIX`

  ### Fields inherited from class ASTDbPath

  `DB_PREFIX`

  ### Fields inherited from class ASTPath

  `path, pathAliases`

  ### Fields inherited from class SimpleNode

  `children, id, parent`

  ### Fields inherited from class 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

  Constructors
  Constructor
  Description
  `ASTDbIdPath()`
  `ASTDbIdPath(String value)`
  `ASTDbIdPath(CayennePath value)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `appendAsEJBQL(List<Object> parameterAccumulator, Appendable out, String rootId)`
  Stores a String representation of Expression as EJBQL using a provided PrintWriter.
  `void`
  `appendAsString(Appendable out)`
  Appends own content as a String to the provided Appendable.
  `protected CayenneMapEntry`
  `evaluateEntityNode(Entity<?,?,?> entity)`
  Helper method to evaluate path expression with Cayenne Entity.
  `protected Object`
  `evaluateNode(Object o)`
  Evaluates itself with object, pushing result on the stack.
  `protected Object`
  `evaluateNode(Object o, CayennePath localPath)`
  `int`
  `getType()`
  Returns a type of expression.
  `Expression`
  `shallowCopy()`
  Creates a copy of this expression node, without copying children.
  `protected Map<?,?>`
  `toMap(Object o)`

  ### Methods inherited from class ASTPath

  `exists, getExpressionOperator, getOperand, getOperandCount, getPath, getPathAliases, hashCode, notExists, setOperand, setPath, setPath, setPathAliases`

  ### Methods inherited from class SimpleNode

  `appendAsEJBQL, appendAsEscapedString, appendChildrenAsEJBQL, appendScalarAsString, connectChildren, encodeScalarAsEJBQL, evaluate, evaluateChild, expName, flattenTree, getEJBQLExpressionOperator, isValidParent, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, notExp, numericToString, pruneNodeForPrunedChild, unwrapChild, wrapChild`

  ### Methods inherited from class 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`

  ### Methods inherited from class Object

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

- ## Field Details

  - ### DBID_PREFIX

    public static final String DBID_PREFIX
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### ASTDbIdPath

    public ASTDbIdPath()

  - ### ASTDbIdPath

    public ASTDbIdPath(String value)

  - ### ASTDbIdPath

    public ASTDbIdPath(CayennePath value)

- ## Method Details

  - ### shallowCopy

    public Expression shallowCopy()
    Creates a copy of this expression node, without copying children.
    Overrides:
      `shallowCopy` in class `ASTDbPath`

  - ### evaluateNode

    protected Object evaluateNode(Object o, CayennePath localPath)

  - ### evaluateNode

    protected Object evaluateNode(Object o)
    Description copied from class: `SimpleNode`
    Evaluates itself with object, pushing result on the stack.
    Overrides:
      `evaluateNode` in class `ASTDbPath`

  - ### evaluateEntityNode

    protected CayenneMapEntry evaluateEntityNode(Entity<?,?,?> entity)
    Description copied from class: `ASTDbPath`
    Helper method to evaluate path expression with Cayenne Entity.
    Overrides:
      `evaluateEntityNode` in class `ASTDbPath`

  - ### toMap

    protected Map<?,?> toMap(Object o)
    Overrides:
      `toMap` in class `ASTDbPath`

  - ### getType

    public int getType()
    Description copied from class: `Expression`
    Returns a type of expression. Most common types are defined as public static fields of this interface.
    Overrides:
      `getType` in class `ASTDbPath`

  - ### appendAsEJBQL

    public void appendAsEJBQL(List<Object> parameterAccumulator, Appendable out, String rootId) throws IOException
    Description copied from class: `Expression`
    Stores 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:
      `appendAsEJBQL` in class `ASTDbPath`
    Throws:
      `IOException`

  - ### appendAsString

    public void appendAsString(Appendable out) throws IOException
    Description copied from class: `Expression`
    Appends own content as a String to the provided Appendable.
    Overrides:
      `appendAsString` in class `ASTDbPath`
    Throws:
      `IOException`