|
EclipseLink 2.4.2, build 'v20130514-5956486' API Reference | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.eclipse.persistence.jpa.jpql.parser.AnonymousExpressionVisitor org.eclipse.persistence.jpa.jpql.AbstractValidator org.eclipse.persistence.jpa.jpql.AbstractGrammarValidator org.eclipse.persistence.jpa.jpql.DefaultGrammarValidator
public class DefaultGrammarValidator
This validator is responsible to validate a JPQL query grammatically purely based on the JPA specification document.
Provisional API: This interface is part of an interim API that is still under development and
expected to change significantly before reaching stability. It is available at this early stage
to solicit feedback from pioneering adopters on the understanding that any code that uses this
API will almost certainly be broken (repeatedly) as the API evolves.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class org.eclipse.persistence.jpa.jpql.AbstractValidator |
---|
AbstractValidator.BypassChildCollectionExpressionVisitor, AbstractValidator.BypassParentSubExpressionVisitor, AbstractValidator.ChildrenCollectorVisitor, AbstractValidator.JPQLQueryBNFValidator, AbstractValidator.OwningClauseVisitor, AbstractValidator.OwningStatementVisitor, AbstractValidator.SubqueryVisitor |
Constructor Summary | |
---|---|
DefaultGrammarValidator(JPQLGrammar jpqlGrammar)
Creates a new DefaultGrammarValidator . |
|
DefaultGrammarValidator(JPQLQueryContext queryContext)
Deprecated. This constructor only exists for backward compatibility. JPQLQueryContext
is no longer required, only JPQLGrammar |
Method Summary | |
---|---|
protected LiteralVisitor |
buildLiteralVisitor()
Creates the visitor that can retrieve some information about various literal. |
protected AbstractValidator.OwningClauseVisitor |
buildOwningClauseVisitor()
Creates the visitor that traverses the parent hierarchy of any Expression and stops at
the first Expression that is a clause. |
protected boolean |
isJoinFetchIdentifiable()
Determines whether a JOIN FETCH expression can be identified by with an
identification variable or not. |
protected boolean |
isSubqueryAllowedAnywhere()
Determines whether a subquery can be used in any clause of the top-level query. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public DefaultGrammarValidator(JPQLGrammar jpqlGrammar)
DefaultGrammarValidator
.
jpqlGrammar
- The JPQLGrammar
that defines how the JPQL query was parsed@Deprecated public DefaultGrammarValidator(JPQLQueryContext queryContext)
JPQLQueryContext
is no longer required, only JPQLGrammar
DefaultGrammarValidator
.
queryContext
- The context used to query information about the JPQL queryDefaultGrammarValidator(JPQLGrammar)
Method Detail |
---|
protected LiteralVisitor buildLiteralVisitor()
buildLiteralVisitor
in class AbstractValidator
LiteralVisitor
protected AbstractValidator.OwningClauseVisitor buildOwningClauseVisitor()
Expression
and stops at
the first Expression
that is a clause.
buildOwningClauseVisitor
in class AbstractValidator
AbstractValidator.OwningClauseVisitor
protected boolean isJoinFetchIdentifiable()
JOIN FETCH
expression can be identified by with an
identification variable or not.
isJoinFetchIdentifiable
in class AbstractGrammarValidator
true
if the expression can have an identification variable;
false
otherwiseprotected boolean isSubqueryAllowedAnywhere()
isSubqueryAllowedAnywhere
in class AbstractGrammarValidator
true
if a subquery can be defined in any clause; false
if
it can only be used within the WHERE
and HAVING
defined by the JPA
1.0 and 2.0 specification document
|
EclipseLink 2.4.2, build 'v20130514-5956486' API Reference | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |