Class SubqueryNode
- java.lang.Object
-
- org.eclipse.persistence.internal.jpa.parsing.Node
-
- org.eclipse.persistence.internal.jpa.parsing.SubqueryNode
-
public class SubqueryNode extends Node
INTERNALPurpose: Represent a subquery.
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.internal.jpa.parsing.Node
alias, left, right, shouldGenerateExpression
-
-
Constructor Summary
Constructors Constructor Description SubqueryNode()
Return a new SubqueryNode.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Expression
generateExpression(GenerationContext context)
INTERNAL Generate the EclipseLink expression for this nodeJPQLParseTree
getParseTree()
ReportQuery
getReportQuery(GenerationContext context)
boolean
isSubqueryNode()
INTERNAL Is this node a SubqueryNodeNode
qualifyAttributeAccess(ParseTreeContext context)
INTERNAL If called the subquery is part of the WHERE clause of an UPDATE or DELETE statement that does not define an identification variable.void
setParseTree(JPQLParseTree parseTree)
void
validate(ParseTreeContext context)
INTERNAL Validate node and calculate its type.-
Methods inherited from class org.eclipse.persistence.internal.jpa.parsing.Node
addToExpression, appendExpression, applyToQuery, getAlias, getAsString, getColumn, getLeft, getLine, getRight, getType, hasLeft, hasRight, isAggregateNode, isAliasableNode, isAttributeNode, isConstructorNode, isCountNode, isDivideNode, isDotNode, isEscape, isLiteralNode, isMapKeyNode, isMinusNode, isMultiplyNode, isNotNode, isParameterNode, isPlusNode, isVariableNode, resolveAttribute, resolveClass, resolveClass, resolveMapping, resolveMapping, setAlias, setColumn, setLeft, setLine, setRight, setType, toString, toString, toStringDisplayName, toStringIndent, validateParameter
-
-
-
-
Method Detail
-
getReportQuery
public ReportQuery getReportQuery(GenerationContext context)
-
qualifyAttributeAccess
public Node qualifyAttributeAccess(ParseTreeContext context)
INTERNAL If called the subquery is part of the WHERE clause of an UPDATE or DELETE statement that does not define an identification variable. The method checks the clauses of the subquery for unqualified fields accesses.- Overrides:
qualifyAttributeAccess
in classNode
-
validate
public void validate(ParseTreeContext context)
INTERNAL Validate node and calculate its type.
-
generateExpression
public Expression generateExpression(GenerationContext context)
INTERNAL Generate the EclipseLink expression for this node- Overrides:
generateExpression
in classNode
-
isSubqueryNode
public boolean isSubqueryNode()
INTERNAL Is this node a SubqueryNode- Overrides:
isSubqueryNode
in classNode
-
setParseTree
public void setParseTree(JPQLParseTree parseTree)
-
getParseTree
public JPQLParseTree getParseTree()
-
-