|
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.Objectorg.eclipse.persistence.jpa.jpql.parser.AnonymousExpressionVisitor
org.eclipse.persistence.jpa.jpql.AbstractValidator
org.eclipse.persistence.jpa.jpql.AbstractGrammarValidator
org.eclipse.persistence.jpa.jpql.EclipseLinkGrammarValidator
public class EclipseLinkGrammarValidator
This validator adds EclipseLink extension over what the JPA functional specification had defined.
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 | |
|---|---|
protected static class |
EclipseLinkGrammarValidator.EclipseLinkOwningClauseVisitor
|
protected static class |
EclipseLinkGrammarValidator.InExpressionVisitor
|
| 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 | |
|---|---|
EclipseLinkGrammarValidator(JPQLGrammar jpqlGrammar)
Creates a new EclipseLinkGrammarValidator. |
|
EclipseLinkGrammarValidator(JPQLQueryContext queryContext)
Deprecated. This constructor only exists for backward compatibility. JPQLQueryContext
is no longer required, only JPQLGrammar |
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.eclipse.persistence.jpa.jpql.parser.ExpressionVisitor |
|---|
visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit |
| Constructor Detail |
|---|
public EclipseLinkGrammarValidator(JPQLGrammar jpqlGrammar)
EclipseLinkGrammarValidator.
jpqlGrammar - The JPQLGrammar that defines how the JPQL query was parsed@Deprecated public EclipseLinkGrammarValidator(JPQLQueryContext queryContext)
JPQLQueryContext
is no longer required, only JPQLGrammar
EclipseLinkGrammarValidator.
queryContext - The context used to query information about the JPQL queryEclipseLinkGrammarValidator(JPQLGrammar)| Method Detail |
|---|
protected AbstractGrammarValidator.AbstractSingleEncapsulatedExpressionHelper<CastExpression> buildCastExpressionHelper()
protected AbstractGrammarValidator.AbstractDoubleEncapsulatedExpressionHelper<DatabaseType> buildDatabaseTypeHelper()
protected AbstractGrammarValidator.AbstractSingleEncapsulatedExpressionHelper<ExtractExpression> buildExtractExpressionHelper()
protected EclipseLinkGrammarValidator.InExpressionVisitor buildInExpressionVisitor()
protected LiteralVisitor buildLiteralVisitor()
buildLiteralVisitor in class AbstractValidatorLiteralVisitorprotected AbstractValidator.OwningClauseVisitor buildOwningClauseVisitor()
Expression and stops at
the first Expression that is a clause.
buildOwningClauseVisitor in class AbstractValidatorAbstractValidator.OwningClauseVisitorprotected AbstractGrammarValidator.AbstractSingleEncapsulatedExpressionHelper<TableExpression> buildTableExpressionHelper()
protected AbstractGrammarValidator.AbstractSingleEncapsulatedExpressionHelper<CastExpression> castExpressionHelper()
protected AbstractGrammarValidator.AbstractDoubleEncapsulatedExpressionHelper<DatabaseType> databaseTypeHelper()
protected AbstractGrammarValidator.AbstractSingleEncapsulatedExpressionHelper<ExtractExpression> extractExpressionHelper()
protected EclipseLinkGrammarValidator.InExpressionVisitor getInExpressionVisitor()
protected EclipseLinkGrammarValidator.EclipseLinkOwningClauseVisitor getOwningClauseVisitor()
Expression and stops at
the first Expression that is a clause.
getOwningClauseVisitor in class AbstractValidatorAbstractValidator.OwningClauseVisitorprotected boolean isInputParameterInValidLocation(InputParameter expression)
isInputParameterInValidLocation in class AbstractGrammarValidatorprotected boolean isJoinFetchIdentifiable()
JOIN FETCH expression can be identified by with an
identification variable or not.
isJoinFetchIdentifiable in class AbstractGrammarValidatortrue if the expression can have an identification variable;
false otherwiseprotected boolean isOwnedByInExpression(Expression expression)
protected boolean isOwnedByUnionClause(Expression expression)
Expression is a child of the UNION clause.
expression - The Expression to visit its parent hierarchy up to the clause
true if the first parent being a clause is the UNION clause;
false otherwiseprotected boolean isSubqueryAllowedAnywhere()
isSubqueryAllowedAnywhere in class AbstractGrammarValidatortrue 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 documentprotected AbstractGrammarValidator.AbstractSingleEncapsulatedExpressionHelper<TableExpression> tableExpressionHelper()
protected void validateAbstractSelectClause(AbstractSelectClause expression,
boolean multipleSelectItemsAllowed)
SELECT clause. The select expression
will only be visited if its JPQL query BNF is part of the select item BNF.
validateAbstractSelectClause in class AbstractGrammarValidatorexpression - The AbstractSelectClause to validatemultipleSelectItemsAllowed - Determines whether the SELECT can have
one or more select expression or notpublic void visit(CastExpression expression)
CastExpression expression.
visit in interface EclipseLinkExpressionVisitorexpression - The Expression to visitpublic void visit(DatabaseType expression)
DatabaseType expression.
visit in interface EclipseLinkExpressionVisitorexpression - The DatabaseType to visitpublic void visit(ExtractExpression expression)
ExtractExpression expression.
visit in interface EclipseLinkExpressionVisitorexpression - The Expression to visitpublic void visit(RegexpExpression expression)
visit in interface EclipseLinkExpressionVisitorpublic void visit(TableExpression expression)
TableExpression expression.
visit in interface EclipseLinkExpressionVisitorexpression - The Expression to visitpublic void visit(TableVariableDeclaration expression)
TableVariableDeclaration expression.
visit in interface EclipseLinkExpressionVisitorexpression - The Expression to visitpublic void visit(UnionClause expression)
UnionClause expression.
visit in interface EclipseLinkExpressionVisitorexpression - The Expression to visit
|
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 | ||||||||