Class EclipseLinkJPQLQueryContext
java.lang.Object
org.eclipse.persistence.jpa.jpql.tools.JPQLQueryContext
org.eclipse.persistence.jpa.jpql.tools.EclipseLinkJPQLQueryContext
This context is used to store information related to the JPQL query. It supports the EclipseLink
extension over the default JPQL grammar.
IQuery externalQuery = ...;
JPQLQueryContext context = new JPQLQueryContext(DefaultJPQLGrammar.instance());
context.setQuery(query);
If the JPQL query is already parsed, then the context can use it and it needs to be set before
setting the IQuery:
JPQLExpression jpqlExpression = ...;
JPQLQueryContext context = new JPQLQueryContext(DefaultJPQLGrammar.instance());
context.setJPQLExpression(jpqlExpression);
context.setQuery(query);- Since:
- 2.4
- Version:
- 2.4
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.persistence.jpa.jpql.tools.JPQLQueryContext
JPQLQueryContext.InputParameterVisitor, JPQLQueryContext.QueryExpressionVisitor -
Field Summary
Fields inherited from class org.eclipse.persistence.jpa.jpql.tools.JPQLQueryContext
currentContext, parent -
Constructor Summary
ConstructorsModifierConstructorDescriptionEclipseLinkJPQLQueryContext(JPQLGrammar jpqlGrammar) Creates a newEclipseLinkJPQLQueryContext.protectedEclipseLinkJPQLQueryContext(JPQLQueryContext parent, Expression currentQuery) Creates a newEclipseLinkJPQLQueryContext. -
Method Summary
Modifier and TypeMethodDescriptionprotected DeclarationResolverprotected JPQLQueryContextbuildJPQLQueryContext(JPQLQueryContext currentContext, Expression currentQuery) protected LiteralVisitorprotected EclipseLinkParameterTypeVisitorprotected ResolverBuilderReturns the parent context if the current context is not the root context.Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.JPQLQueryContext
buildDeclarationResolver, buildInputParameter, buildQueryExpressionVisitor, convertUnqualifiedDeclaration, dispose, disposeSubqueryContext, findInputParameters, getActualCurrentQuery, getActualDeclarationResolver, getCurrentContext, getCurrentQuery, getDeclaration, getDeclarationResolver, getDeclarationResolver, getDeclarationResolverImp, getDeclarations, getEnumType, getExpressionRegistry, getGrammar, getInputParameterVisitor, getJPAVersion, getJPQLExpression, getJPQLQuery, getLiteralVisitor, getMapping, getParameterType, getParameterTypeVisitor, getProvider, getProviderVersion, getQuery, getQueryExpression, getQueryExpressionVisitor, getResolver, getResolver, getResolverBuilder, getResultVariables, getType, getType, getType, getTypeDeclaration, getTypeHelper, getTypeRepository, hasJoins, initialize, initializeRoot, isCollectionIdentificationVariable, isRangeIdentificationVariable, isResultVariable, isSubquery, isTolerant, literal, newSubqueryContext, setJPQLExpression, setQuery, setTolerant, store, toString
-
Constructor Details
-
EclipseLinkJPQLQueryContext
Creates a newEclipseLinkJPQLQueryContext.- Parameters:
jpqlGrammar- The grammar that defines how to parse a JPQL query
-
EclipseLinkJPQLQueryContext
Creates a newEclipseLinkJPQLQueryContext.- Parameters:
parent- The parent contextcurrentQuery- The parsed tree representation of the subquery
-
-
Method Details
-
buildDeclarationResolver
- Overrides:
buildDeclarationResolverin classJPQLQueryContext
-
buildJPQLQueryContext
protected JPQLQueryContext buildJPQLQueryContext(JPQLQueryContext currentContext, Expression currentQuery) - Specified by:
buildJPQLQueryContextin classJPQLQueryContext
-
buildLiteralVisitor
- Specified by:
buildLiteralVisitorin classJPQLQueryContext
-
buildParameterTypeVisitor
- Specified by:
buildParameterTypeVisitorin classJPQLQueryContext
-
buildResolverBuilder
- Specified by:
buildResolverBuilderin classJPQLQueryContext
-
getParent
Description copied from class:JPQLQueryContextReturns the parent context if the current context is not the root context.- Overrides:
getParentin classJPQLQueryContext- Returns:
- The parent context or
nullif the current context is the root
-