Class Declaration
- java.lang.Object
-
- org.eclipse.persistence.jpa.jpql.tools.resolver.Declaration
-
- All Implemented Interfaces:
JPQLQueryDeclaration
- Direct Known Subclasses:
AbstractRangeDeclaration,CollectionDeclaration,SubqueryDeclaration,TableDeclaration,UnknownDeclaration
public abstract class Declaration extends java.lang.Object implements JPQLQueryDeclaration
The abstract definition ofJPQLQueryDeclaration.- Version:
- 2.5
- Author:
- Pascal Filion
- Since:
- 2.5
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.eclipse.persistence.jpa.jpql.JPQLQueryDeclaration
JPQLQueryDeclaration.Type
-
-
Field Summary
Fields Modifier and Type Field Description protected ExpressionbaseExpressionEither the range variable declaration if this is a range declaration otherwise the collection-valued path expression when this is a collection member declaration.protected ExpressiondeclarationExpressionThe declaration expression, which is either anIdentificationVariableDeclarationor aCollectionMemberDeclarationwhen part of a FROM clause, otherwise it's either theDeleteClauseor theUpdateClause.protected IdentificationVariableidentificationVariableThe identification variable used to declare the "root" object.protected java.lang.StringrootPathThe "root" object for objects which may not be reachable by navigation, it is either the abstract schema name (entity name), a derived path expression (which is only defined in a subquery) ornullif thisDeclarationis a collection member declaration.
-
Constructor Summary
Constructors Modifier Constructor Description protectedDeclaration()Creates a newDeclaration.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ExpressiongetBaseExpression()Returns the range variable declaration if this is a range declaration otherwise the collection-valued path expression when this is a collection member declaration.ExpressiongetDeclarationExpression()Returns the declaration expression, which is either anIdentificationVariableDeclarationor aCollectionMemberDeclarationwhen part of a FROM clause, otherwise it's either theDeleteClauseor theUpdateClause.IdentificationVariablegetIdentificationVariable()Returns theIdentificationVariableused to declare the "root" object.java.util.List<Join>getJoins()Returns theJOINexpressions defined with this declaration, if supported.java.lang.StringgetRootPath()Returns the "root" object for objects which may not be reachable by navigation, it is either the abstract schema name (entity name), a derived path expression (which is only defined in a subquery) ornullif thisDeclarationis a collection member declaration.java.lang.StringgetVariableName()Returns the identification variable name that is defining either the abstract schema name or the collection-valued path expressionbooleanhasJoins()Determines whether the declaration contains JOIN expressions.java.lang.StringtoString()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.persistence.jpa.jpql.JPQLQueryDeclaration
getType
-
-
-
-
Field Detail
-
baseExpression
protected Expression baseExpression
Either the range variable declaration if this is a range declaration otherwise the collection-valued path expression when this is a collection member declaration.
-
declarationExpression
protected Expression declarationExpression
The declaration expression, which is either anIdentificationVariableDeclarationor aCollectionMemberDeclarationwhen part of a FROM clause, otherwise it's either theDeleteClauseor theUpdateClause.
-
identificationVariable
protected IdentificationVariable identificationVariable
The identification variable used to declare the "root" object.
-
rootPath
protected java.lang.String rootPath
The "root" object for objects which may not be reachable by navigation, it is either the abstract schema name (entity name), a derived path expression (which is only defined in a subquery) ornullif thisDeclarationis a collection member declaration.
-
-
Method Detail
-
getBaseExpression
public Expression getBaseExpression()
Returns the range variable declaration if this is a range declaration otherwise the collection-valued path expression when this is a collection member declaration.- Specified by:
getBaseExpressionin interfaceJPQLQueryDeclaration- Returns:
- Either the range variable declaration or the collection-valued path expression
-
getDeclarationExpression
public Expression getDeclarationExpression()
Returns the declaration expression, which is either anIdentificationVariableDeclarationor aCollectionMemberDeclarationwhen part of a FROM clause, otherwise it's either theDeleteClauseor theUpdateClause.- Specified by:
getDeclarationExpressionin interfaceJPQLQueryDeclaration- Returns:
- The root of the declaration expression
-
getIdentificationVariable
public IdentificationVariable getIdentificationVariable()
Returns theIdentificationVariableused to declare the "root" object.- Returns:
- The alias for the "root" object
-
getJoins
public java.util.List<Join> getJoins()
Returns theJOINexpressions defined with this declaration, if supported. The list contains theJOINexpressions in ordered they were declared.- Specified by:
getJoinsin interfaceJPQLQueryDeclaration- Returns:
- The JOIN expressions defined with this declaration or an empty list if this declaration does not support it
-
getRootPath
public java.lang.String getRootPath()
Returns the "root" object for objects which may not be reachable by navigation, it is either the abstract schema name (entity name), a derived path expression (which is only defined in a subquery) ornullif thisDeclarationis a collection member declaration.- Returns:
- The "root" object for objects which may not be reachable by navigation or
nullif thisDeclarationis a collection member declaration
-
getVariableName
public java.lang.String getVariableName()
Returns the identification variable name that is defining either the abstract schema name or the collection-valued path expression- Specified by:
getVariableNamein interfaceJPQLQueryDeclaration- Returns:
- The identification variable or an empty string if none was defined
-
hasJoins
public boolean hasJoins()
Determines whether the declaration contains JOIN expressions. This can betrueonly whenJPQLQueryDeclaration.Type.isRange()returnstrue. A collection member declaration does not have JOIN expressions.- Specified by:
hasJoinsin interfaceJPQLQueryDeclaration- Returns:
trueif at least one JOIN expression was parsed; otherwisefalse
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-