Requirements:
An identification variable can range over an entity, embeddable, or basic abstract schema type. An identification variable designates an instance of an abstract schema type or an element of a collection of abstract schema type instances.
Note that for identification variables referring to an instance of an association or collection
represented as a java., the identification variable is of the abstract schema
type of the map value.
An identification variable always designates a reference to a single value. It is declared in one of three ways:
All identification variables used in the SELECT, WHERE, ORDER BY, GROUP BY, or HAVING clause of a SELECT or DELETE statement must be declared in the FROM clause. The identification variables used in the WHERE clause of an UPDATE statement must be declared in the UPDATE clause.
An identification variable is scoped to the query (or subquery) in which it is defined and is also visible to any subqueries within that query scope that do not define an identification variable of the same name.
| Modifier and Type | Field and Description |
|---|---|
| private StateFieldPathExpression | stateFieldPathExpression
The virtual state field path expression having |
| private String | variableName
The uppercase version of the identification variable. |
| private boolean | virtual
Determines whether this identification variable is virtual, meaning it's not part of the query but is required for proper navigability. |
| Access | Constructor and Description |
|---|---|
| public | IdentificationVariable(AbstractExpression
The parent of this expression parent, String The actual identification variable identificationVariable)Creates a new |
| public | IdentificationVariable(AbstractExpression
The parent of this expression parent, String The actual identification variable identificationVariable, boolean Determines whether this identification variable is virtual, meaning it's not
part of the query but is required for proper navigability virtual)Creates a new |
| Modifier and Type | Method and Description |
|---|---|
| public void | accept(ExpressionVisitor
The visitor)ExpressionVisitor to visit this objectImplements org. Expression by the given visitor.
|
| public void | acceptChildren(ExpressionVisitor
The visitor)visitor to visit the children of this object.Implements org. Expression.
|
| protected void | addOrderedChildrenTo(List<Expression>
The list used to store the string representation of this children)AbstractExpressionOverrides org. AbstractExpression to the given list.
|
| public JPQLQueryBNF | getQueryBNF()
Implements org. Expression.
|
| public StateFieldPathExpression | Returns: The path expression that is qualified by the virtual identification variableReturns the actual representation of the parsed information. |
| public String | getText()
Overrides org. AbstractExpression, which can be used in various
ways, it can be a keyword, a literal, etc.
|
| public String | Returns: The uppercase version of the identification variableReturns the identification variable, which has been changed to be upper case. |
| public boolean | isVirtual()
Overrides org. AbstractExpression is virtual, meaning it's not part of the
query but is required for proper navigability.
|
| protected void | parse(WordParser
The text to parse based on the current position of the cursor wordParser, boolean Determines whether the parsing system should be tolerant, meaning if it should
try to parse invalid or incomplete queries tolerant)Implements abstract org. WordParser.
|
| public void | setVirtualIdentificationVariable(String
The identification variable that was generated to identify the "root" object variableName)Sets a virtual identification variable because the abstract schema name was parsed without one. |
| public String | toParsedText()
Overrides org. Implements org. Expression and its children.
|
| protected void | toParsedText(StringBuilder
The buffer used to append this writer, boolean Expression's string representationDetermines whether the string representation should represent what was parsed,
i.e. include any "virtual" whitespace (such as ending whitespace) and the actual case of the
JPQL identifiers actual)Implements abstract org. Expression, including its children,
if it has any.
|
| stateFieldPathExpression | back to summary |
|---|---|
| private StateFieldPathExpression stateFieldPathExpression The virtual state field path expression having | |
| variableName | back to summary |
|---|---|
| private String variableName The uppercase version of the identification variable. | |
| virtual | back to summary |
|---|---|
| private boolean virtual Determines whether this identification variable is virtual, meaning it's not part of the query but is required for proper navigability. | |
| IdentificationVariable | back to summary |
|---|---|
| public IdentificationVariable(AbstractExpression parent, String identificationVariable) Creates a new
| |
| IdentificationVariable | back to summary |
|---|---|
| public IdentificationVariable(AbstractExpression parent, String identificationVariable, boolean virtual) Creates a new
| |
| accept | back to summary |
|---|---|
| public void accept(ExpressionVisitor visitor) Implements org. Doc from org. Visits this
| |
| acceptChildren | back to summary |
|---|---|
| public void acceptChildren(ExpressionVisitor visitor) Implements org. Doc from org. Visits the children of this
This does not traverse the
| |
| addOrderedChildrenTo | back to summary |
|---|---|
| protected void addOrderedChildrenTo(List<Expression> children) Overrides org. Doc from org. Adds the children of this
| |
| getQueryBNF | back to summary |
|---|---|
| public JPQLQueryBNF getQueryBNF() Implements org. Doc from org. Returns the BNF of this
| |
| getStateFieldPathExpression | back to summary |
|---|---|
| public StateFieldPathExpression getStateFieldPathExpression() Returns the actual representation of the parsed information. This method should only be called
if
| |
| getText | back to summary |
|---|---|
| public String getText() Overrides org. Doc from org. Returns the encapsulated text of this
| |
| getVariableName | back to summary |
|---|---|
| public String getVariableName() Returns the identification variable, which has been changed to be upper case.
| |
| isVirtual | back to summary |
|---|---|
| public boolean isVirtual() Overrides org. Doc from org. Determines whether this
| |
| parse | back to summary |
|---|---|
| protected void parse(WordParser wordParser, boolean tolerant) Implements abstract org. Doc from org. Parses the query by starting at the current position, which is part of the given
| |
| setVirtualIdentificationVariable | back to summary |
|---|---|
| public void setVirtualIdentificationVariable(String variableName) Sets a virtual identification variable because the abstract schema name was parsed without one. This is valid in an UPDATE and DELETE queries. This internally transforms the what was thought to be an identification variable to a path expression.
| |
| toParsedText | back to summary |
|---|---|
| public String toParsedText() Overrides org. Implements org. Doc from org. Returns a string representation of this
| |
| toParsedText | back to summary |
|---|---|
| protected void toParsedText(StringBuilder writer, boolean actual) Implements abstract org. Doc from org. Generates a string representation of this
| |