public class VariableNode extends Node implements AliasableNode
Purpose: The node that represents typed variables, local variables, remote variables and TYPE constants
shouldGenerateExpression
Constructor and Description |
---|
VariableNode()
VariableNode constructor comment.
|
VariableNode(java.lang.String newVariableName) |
Modifier and Type | Method and Description |
---|---|
void |
applyToQuery(ObjectLevelReadQuery theQuery,
GenerationContext generationContext)
INTERNAL
Apply this node to the passed query
|
Expression |
generateBaseBuilderExpression(GenerationContext context) |
Expression |
generateExpression(GenerationContext generationContext)
INTERNAL
Generate an expression for the node.
|
Expression |
generateExpressionForAlias(GenerationContext context) |
java.lang.String |
getAsString()
INTERNAL
Get the string representation of this node.
|
java.lang.String |
getCanonicalVariableName() |
Node |
getNodeForAlias(GenerationContext context) |
java.lang.Object |
getTypeForMapKey(ParseTreeContext context) |
java.lang.String |
getVariableName() |
boolean |
isAlias(GenerationContext context)
isAlias: Answer true if this variable represents an alias in the FROM clause.
|
boolean |
isAlias(ParseTreeContext context) |
boolean |
isAliasableNode() |
boolean |
isVariableNode()
INTERNAL
Is this node a VariableNode
|
Node |
qualifyAttributeAccess(ParseTreeContext context)
INTERNAL
This node represent an unqualified field access in the case the method
is called and the variableName is not defined as identification variable.
|
java.lang.Class |
resolveClass(GenerationContext generationContext)
resolveClass: Answer the class which corresponds to my variableName.
|
void |
setVariableName(java.lang.String newVariableName) |
java.lang.String |
toString(int indent) |
void |
validate(ParseTreeContext context)
INTERNAL
Validate node and calculate its type.
|
addToExpression, appendExpression, getAlias, getColumn, getLeft, getLine, getRight, getType, hasLeft, hasRight, isAggregateNode, isAttributeNode, isConstructorNode, isCountNode, isDivideNode, isDotNode, isEscape, isLiteralNode, isMapKeyNode, isMinusNode, isMultiplyNode, isNotNode, isParameterNode, isPlusNode, isSubqueryNode, resolveAttribute, resolveClass, resolveMapping, resolveMapping, setAlias, setColumn, setLeft, setLine, setRight, setType, toString, toStringDisplayName, toStringIndent, validateParameter
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
getAlias, setAlias
public VariableNode()
public VariableNode(java.lang.String newVariableName)
public java.lang.String getVariableName()
public void setVariableName(java.lang.String newVariableName)
public java.lang.String getCanonicalVariableName()
public boolean isVariableNode()
isVariableNode
in class Node
public void applyToQuery(ObjectLevelReadQuery theQuery, GenerationContext generationContext)
applyToQuery
in class Node
public Node qualifyAttributeAccess(ParseTreeContext context)
qualifyAttributeAccess
in class Node
public void validate(ParseTreeContext context)
public Expression generateBaseBuilderExpression(GenerationContext context)
public Expression generateExpression(GenerationContext generationContext)
Node
generateExpression
in class Node
public Expression generateExpressionForAlias(GenerationContext context)
public Node getNodeForAlias(GenerationContext context)
public boolean isAlias(GenerationContext context)
public boolean isAlias(ParseTreeContext context)
public java.lang.Class resolveClass(GenerationContext generationContext)
resolveClass
in class Node
public java.lang.String getAsString()
getAsString
in class Node
public java.lang.Object getTypeForMapKey(ParseTreeContext context)
public boolean isAliasableNode()
isAliasableNode
in class Node
EclipseLink 2.6.3, "build v20160428-59c81c5" API Reference