public class SelectNode extends QueryNode
Purpose: Represent a SELECT
Responsibilities:
left, right, shouldGenerateExpression
Constructor and Description |
---|
SelectNode() |
Modifier and Type | Method and Description |
---|---|
void |
applyToQuery(DatabaseQuery theQuery,
GenerationContext context)
INTERNAL
Apply this node to the passed query
|
DatabaseQuery |
createDatabaseQuery(ParseTreeContext context)
INTERNAL
Returns a DatabaseQuery instance representing the owning
ParseTree.
|
Expression |
generateExpression(GenerationContext context)
INTERNAL
Return a TopLink expression generated using the left node
|
java.lang.Class |
getReferenceClass(GenerationContext context)
Compute the Reference class for this query
|
java.util.List |
getSelectExpressions() |
boolean |
hasOneToOneSelected(GenerationContext context)
INTERNAL
|
boolean |
isSelected(java.lang.String variableName)
Answer true if the variable name given as argument is SELECTed.
|
boolean |
isSelectNode() |
boolean |
isVariableInINClauseSelected(GenerationContext context)
INTERNAL
Answer true if a variable in the IN clause is SELECTed
|
boolean |
nodeRefersToObject(Node node,
GenerationContext context)
INTERNAL
Answer true if this node refers to an object described later in the EJBQL
True: SELECT p FROM Project p
False: SELECT p.id FROM Project p
|
Node |
qualifyAttributeAccess(ParseTreeContext context)
INTERNAL
Check the select expression nodes for a path expression starting with a
unqualified field access and if so, replace it by a qualified field
access.
|
java.lang.Class |
resolveClass(GenerationContext context)
resolveClass: Answer the class associated with my left node.
|
void |
setDistinct(boolean distinct) |
void |
setSelectExpressions(java.util.List exprs) |
boolean |
usesDistinct() |
void |
validate(ParseTreeContext context)
INTERNAL
Validate node.
|
void |
verifySelectedAlias(GenerationContext context)
Verify that the selected alias is a valid alias.
|
getParseTree, isDeleteNode, isUpdateNode, setParseTree
getContext, setContext
addToExpression, appendExpression, applyToQuery, getAsString, getColumn, getLeft, getLine, getRight, getType, hasLeft, hasRight, isAggregateNode, isAttributeNode, isConstructorNode, isCountNode, isDivideNode, isDotNode, isEscape, isLiteralNode, isMinusNode, isMultiplyNode, isNotNode, isParameterNode, isPlusNode, isSubqueryNode, isVariableNode, resolveAttribute, resolveClass, resolveMapping, resolveMapping, setColumn, setLeft, setLine, setRight, setType, toString, toString, toStringDisplayName, toStringIndent, validateParameter
public java.util.List getSelectExpressions()
public void setSelectExpressions(java.util.List exprs)
public boolean usesDistinct()
public void setDistinct(boolean distinct)
public DatabaseQuery createDatabaseQuery(ParseTreeContext context)
createDatabaseQuery
in class QueryNode
public void applyToQuery(DatabaseQuery theQuery, GenerationContext context)
applyToQuery
in class QueryNode
public boolean hasOneToOneSelected(GenerationContext context)
public void verifySelectedAlias(GenerationContext context)
public boolean isSelected(java.lang.String variableName)
public boolean isSelectNode()
isSelectNode
in class QueryNode
public Node qualifyAttributeAccess(ParseTreeContext context)
qualifyAttributeAccess
in class Node
public void validate(ParseTreeContext context)
public java.lang.Class resolveClass(GenerationContext context)
resolveClass
in class QueryNode
public Expression generateExpression(GenerationContext context)
generateExpression
in class QueryNode
public java.lang.Class getReferenceClass(GenerationContext context)
getReferenceClass
in class QueryNode
context
- public boolean isVariableInINClauseSelected(GenerationContext context)
public boolean nodeRefersToObject(Node node, GenerationContext context)