Class EclipseLinkContentAssistVisitor
- java.lang.Object
-
- org.eclipse.persistence.jpa.jpql.parser.AnonymousExpressionVisitor
-
- org.eclipse.persistence.jpa.jpql.tools.AbstractContentAssistVisitor
-
- org.eclipse.persistence.jpa.jpql.tools.EclipseLinkContentAssistVisitor
-
- All Implemented Interfaces:
EclipseLinkExpressionVisitor,ExpressionVisitor
public class EclipseLinkContentAssistVisitor extends AbstractContentAssistVisitor implements EclipseLinkExpressionVisitor
This extension over the default content assist visitor adds the additional support EclipseLink provides.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.
- Version:
- 2.5.1
- Author:
- Pascal Filion
- Since:
- 2.4
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.eclipse.persistence.jpa.jpql.tools.AbstractContentAssistVisitor
AbstractContentAssistVisitor.AbstractAppendableExpressionVisitor, AbstractContentAssistVisitor.AbstractConditionalClauseCollectionHelper<T extends Expression>, AbstractContentAssistVisitor.AbstractFromClauseStatementHelper<T extends AbstractSelectStatement>, AbstractContentAssistVisitor.AbstractGroupByClauseStatementHelper<T extends AbstractSelectStatement>, AbstractContentAssistVisitor.AbstractHavingClauseStatementHelper<T extends AbstractSelectStatement>, AbstractContentAssistVisitor.AbstractSelectClauseCollectionHelper<T extends AbstractSelectClause>, AbstractContentAssistVisitor.AbstractSelectClauseStatementHelper, AbstractContentAssistVisitor.AbstractWhereClauseSelectStatementHelper<T extends AbstractSelectStatement>, AbstractContentAssistVisitor.AppendableType, AbstractContentAssistVisitor.CollectionExpressionHelper<T extends Expression>, AbstractContentAssistVisitor.CollectionExpressionVisitor, AbstractContentAssistVisitor.CollectionMappingFilter, AbstractContentAssistVisitor.ConcatExpressionCollectionHelper, AbstractContentAssistVisitor.ConditionalClauseCollectionHelper, AbstractContentAssistVisitor.ConstrutorCollectionHelper, AbstractContentAssistVisitor.DeclarationVisitor, AbstractContentAssistVisitor.DefaultMappingCollector, AbstractContentAssistVisitor.DeleteClauseCollectionHelper, AbstractContentAssistVisitor.DeleteClauseStatementHelper, AbstractContentAssistVisitor.DifferentComparisonFilter, AbstractContentAssistVisitor.DoubleEncapsulatedCollectionHelper, AbstractContentAssistVisitor.EncapsulatedExpressionVisitor, AbstractContentAssistVisitor.EnumVisitor, AbstractContentAssistVisitor.FilteringMappingCollector, AbstractContentAssistVisitor.FollowingInvalidExpressionVisitor, AbstractContentAssistVisitor.GroupByClauseCollectionHelper, AbstractContentAssistVisitor.GroupByClauseStatementHelper, AbstractContentAssistVisitor.HavingClauseStatementHelper, AbstractContentAssistVisitor.IdentificationVariableType, AbstractContentAssistVisitor.InvalidExpressionVisitor, AbstractContentAssistVisitor.JoinCollectionHelper, AbstractContentAssistVisitor.MappingCollector, AbstractContentAssistVisitor.MappingFilterBuilder, AbstractContentAssistVisitor.MappingTypeFilter, AbstractContentAssistVisitor.NotExpressionVisitor, AbstractContentAssistVisitor.OrderByClauseCollectionHelper, AbstractContentAssistVisitor.PropertyMappingFilter, AbstractContentAssistVisitor.RangeVariableDeclarationVisitor, AbstractContentAssistVisitor.ResultVariableVisitor, AbstractContentAssistVisitor.SelectClauseCollectionHelper, AbstractContentAssistVisitor.SelectClauseStatementHelper, AbstractContentAssistVisitor.SimpleGroupByClauseStatementHelper, AbstractContentAssistVisitor.SimpleHavingClauseStatementHelper, AbstractContentAssistVisitor.SimpleSelectClauseCollectionHelper, AbstractContentAssistVisitor.SimpleSelectClauseStatementHelper, AbstractContentAssistVisitor.SimpleWhereClauseSelectStatementHelper, AbstractContentAssistVisitor.StatementHelper<T extends Expression>, AbstractContentAssistVisitor.SubqueryAppendableExpressionVisitor, AbstractContentAssistVisitor.SubqueryVisitor, AbstractContentAssistVisitor.TripleEncapsulatedCollectionHelper, AbstractContentAssistVisitor.UpdateClauseStatementHelper, AbstractContentAssistVisitor.UpdateItemCollectionHelper, AbstractContentAssistVisitor.VisitParentVisitor, AbstractContentAssistVisitor.WhenClauseConditionalClauseCollectionHelper, AbstractContentAssistVisitor.WhereClauseDeleteStatementHelper, AbstractContentAssistVisitor.WhereClauseSelectStatementHelper, AbstractContentAssistVisitor.WhereClauseUpdateStatementHelper, AbstractContentAssistVisitor.WithinInvalidExpressionVisitor
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.jpa.jpql.tools.AbstractContentAssistVisitor
corrections, helpers, identifierFilters, INVALID_IDENTIFIER_FILTER, lockedExpressions, proposals, queryContext, queryPosition, SPACE_LENGTH, VALID_IDENTIFIER_FILTER, virtualSpaces, word, wordParser
-
-
Constructor Summary
Constructors Constructor Description EclipseLinkContentAssistVisitor(JPQLQueryContext queryContext)Creates a newEclipseLinkContentAssistVisitor.
-
Method Summary
-
Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.AbstractContentAssistVisitor
addAggregateIdentifier, addAggregateIdentifiers, addAggregateIdentifiers, addArithmeticIdentifiers, addClauseIdentifier, addClauseIdentifiers, addClauseIdentifiers, addComparisonIdentifiers, addCompositeIdentifier, addCompoundIdentifier, addCompoundIdentifiers, addCompoundIdentifiers, addEntities, addEntities, addEnumConstant, addEnumConstants, addExpressionFactoryIdentifiers, addExpressionFactoryIdentifiers, addFunctionIdentifier, addFunctionIdentifiers, addFunctionIdentifiers, addFunctionIdentifiers, addIdentificationVariable, addIdentificationVariables, addIdentificationVariables, addIdentifier, addJoinIdentifiers, addLeftIdentificationVariables, addLogicalIdentifiers, addRangeIdentificationVariable, addResultVariables, addVirtualSpace, areArithmeticSymbolsAppendable, areComparisonSymbolsAppendable, areLogicalSymbolsAppendable, buildCollectionCompoundTypeFilter, buildCollectionExpressionVisitor, buildCollectionMappingFilter, buildConcatExpressionCollectionHelper, buildConditionalClauseCollectionHelper, buildConstrutorCollectionHelper, buildDeclarationVisitor, buildDefaultMappingCollector, buildDeleteClauseCollectionHelper, buildDeleteClauseStatementHelper, buildDifferentComparisonFilter, buildDoubleEncapsulatedCollectionHelper, buildEncapsulatedExpressionVisitor, buildEndingPositionFromInvalidExpression, buildEnumVisitor, buildFilteringMappingCollector, buildFollowingInvalidExpressionVisitor, buildGroupByClauseStatementHelper, buildHavingClauseStatementHelper, buildInvalidExpressionVisitor, buildJoinCollectionHelper, buildJPQLQueryBNFValidator, buildMappingCollector, buildMappingFilter, buildMappingFilter, buildMappingFilterBuilder, buildNonCollectionCompoundTypeFilter, buildNotExpressionVisitor, buildOrderByClauseCollectionHelper, buildPropertyMappingFilter, buildProposals, buildProposals, buildRangeVariableDeclarationVisitor, buildResultVariableVisitor, buildSelectClauseCollectionHelper, buildSelectClauseStatementHelper, buildSimpleGroupByClauseStatementHelper, buildSimpleHavingClauseStatementHelper, buildSimpleSelectClauseCollectionHelper, buildSimpleSelectClauseStatementHelper, buildSimpleWhereClauseSelectStatementHelper, buildSubqueryAppendableExpressionVisitor, buildSubqueryVisitor, buildTripleEncapsulatedCollectionHelper, buildUpdateClauseStatementHelper, buildUpdateItemCollectionHelper, buildVisitParentVisitor, buildWhenClauseConditionalClauseCollectionHelper, buildWhereClauseDeleteStatementHelper, buildWhereClauseSelectStatementHelper, buildWhereClauseUpdateStatementHelper, buildWithinInvalidExpressionVisitor, dispose, findRangeVariableDeclaration, getAcceptableType, getAppendableExpressionVisitor, getCollectionExpression, getCollectionExpressionVisitor, getConcatExpressionCollectionHelper, getConditionalClauseCollectionHelper, getConstructorCollectionHelper, getDeclarationVisitor, getDefaultMappingCollector, getDeleteClauseCollectionHelper, getDeleteClauseStatementHelper, getDoubleEncapsulatedCollectionHelper, getEncapsulatedExpressionVisitor, getEndingQueryPositionBuilder, getEnumVisitor, getExpressionFactory, getExpressionTypeVisitor, getFilter, getFollowingClausesVisitor, getFollowingInvalidExpressionVisitor, getFromClauseCollectionHelper, getFromClauseStatementHelper, getGroupByClauseCollectionHelper, getGroupByClauseStatementHelper, getHavingClauseStatementHelper, getHelper, getIdentifierRole, getIncompleteCollectionExpressionVisitor, getInvalidExpressionVisitor, getJoinCollectionHelper, getMappingCollectionFilter, getMappingFilterBuilder, getMappingPropertyFilter, getNotExpressionVisitor, getOrderByClauseCollectionHelper, getOrderByClauseStatementHelper, getQueryBNF, getRangeVariableDeclarationVisitor, getResultVariableVisitor, getSelectClauseCollectionHelper, getSelectClauseStatementHelper, getSimpleFromClauseStatementHelper, getSimpleGroupByClauseStatementHelper, getSimpleHavingClauseStatementHelper, getSimpleSelectClauseCollectionHelper, getSimpleSelectClauseStatementHelper, getSimpleWhereClauseSelectStatementHelper, getSubqueryAppendableExpressionVisitor, getSubqueryVisitor, getTripleEncapsulatedCollectionHelper, getUpdateClauseStatementHelper, getUpdateItemCollectionHelper, getVisitParentVisitor, getWhenClauseConditionalClauseCollectionHelper, getWhereClauseDeleteStatementHelper, getWhereClauseSelectStatementHelper, getWhereClauseUpdateStatementHelper, getWithinInvalidExpressionVisitor, hasClausesDefinedBetween, hasVirtualSpace, isAggregate, isAppendable, isAppendableToCollection, isClause, isClauseAppendable, isComplete, isCompoundable, isCompoundFunction, isDeclaration, isEncapsulated, isEnumAllowed, isFollowingInvalidExpression, isFunction, isInSubquery, isInvalidExpression, isLocked, isNotExpression, isPositionWithin, isPositionWithin, isSubqueryAppendable, isValid, isValid, isValid, isValid, isValid, isValidProposal, isValidVersion, isWithinInvalidExpression, registerHelper, removeVirtualSpace, toString, 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, visitAggregateFunction, visitArithmeticExpression, visitCollectionExpression, visitEndingExpression, visitEnumConstant, visitInvalidExpression, visitLogicalExpression, visitPathExpression, visitPathExpression, visitSingleEncapsulatedExpression, visitSingleEncapsulatedExpression, visitStatement
-
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.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
-
-
-
-
Constructor Detail
-
EclipseLinkContentAssistVisitor
public EclipseLinkContentAssistVisitor(JPQLQueryContext queryContext)
Creates a newEclipseLinkContentAssistVisitor.- Parameters:
queryContext- The context used to query information about the query- Throws:
java.lang.NullPointerException- TheJPQLQueryContextcannot benull
-
-
Method Detail
-
buildAcceptableTypeVisitor
protected EclipseLinkContentAssistVisitor.AcceptableTypeVisitor buildAcceptableTypeVisitor()
- Specified by:
buildAcceptableTypeVisitorin classAbstractContentAssistVisitor
-
buildAppendableExpressionVisitor
protected EclipseLinkContentAssistVisitor.AppendableExpressionVisitor buildAppendableExpressionVisitor()
- Overrides:
buildAppendableExpressionVisitorin classAbstractContentAssistVisitor
-
buildEndingQueryPositionBuilder
protected EclipseLinkContentAssistVisitor.EndingQueryPositionBuilder buildEndingQueryPositionBuilder()
- Overrides:
buildEndingQueryPositionBuilderin classAbstractContentAssistVisitor
-
buildFollowingClausesVisitor
protected EclipseLinkContentAssistVisitor.FollowingClausesVisitor buildFollowingClausesVisitor()
- Overrides:
buildFollowingClausesVisitorin classAbstractContentAssistVisitor
-
buildFromClauseCollectionHelper
protected EclipseLinkContentAssistVisitor.FromClauseCollectionHelper buildFromClauseCollectionHelper()
- Overrides:
buildFromClauseCollectionHelperin classAbstractContentAssistVisitor
-
buildFromClauseStatementHelper
protected EclipseLinkContentAssistVisitor.FromClauseStatementHelper buildFromClauseStatementHelper()
- Overrides:
buildFromClauseStatementHelperin classAbstractContentAssistVisitor
-
buildGroupByClauseCollectionHelper
protected AbstractContentAssistVisitor.GroupByClauseCollectionHelper buildGroupByClauseCollectionHelper()
- Overrides:
buildGroupByClauseCollectionHelperin classAbstractContentAssistVisitor
-
buildIncompleteCollectionExpressionVisitor
protected EclipseLinkContentAssistVisitor.IncompleteCollectionExpressionVisitor buildIncompleteCollectionExpressionVisitor()
- Overrides:
buildIncompleteCollectionExpressionVisitorin classAbstractContentAssistVisitor
-
buildOrderByClauseStatementHelper
protected EclipseLinkContentAssistVisitor.OrderByClauseStatementHelper buildOrderByClauseStatementHelper()
- Overrides:
buildOrderByClauseStatementHelperin classAbstractContentAssistVisitor
-
buildSimpleFromClauseStatementHelper
protected EclipseLinkContentAssistVisitor.SimpleFromClauseStatementHelper buildSimpleFromClauseStatementHelper()
- Overrides:
buildSimpleFromClauseStatementHelperin classAbstractContentAssistVisitor
-
buildTableExpressionVisitor
protected EclipseLinkContentAssistVisitor.TableExpressionVisitor buildTableExpressionVisitor()
-
buildUnionClauseStatementHelper
protected EclipseLinkContentAssistVisitor.UnionClauseStatementHelper buildUnionClauseStatementHelper()
-
getEcliseLinkVersion
protected EclipseLinkVersion getEcliseLinkVersion()
Returns the enum constant of the EclipseLink version specified in theJPQLQueryContext.- Returns:
- The EclipseLink version specified or the default version (i.e. the version of the current release)
- Since:
- 2.5
-
getLatestGrammar
protected JPQLGrammar getLatestGrammar()
Returns the latest supported JPQL grammar, which is required when checking the validity of a JPQL identifier. This is due to the fact that any JPQL identifiers defined in a more recent spec will be seen to be registered in version 1.0 of the spec. By returning the latest version, any JPQL identifiers should have a version registered.- Specified by:
getLatestGrammarin classAbstractContentAssistVisitor- Returns:
- The latest
JPQLGrammarsupported by the provider
-
getTableExpressionVisitor
protected EclipseLinkContentAssistVisitor.TableExpressionVisitor getTableExpressionVisitor()
-
getTableName
protected java.lang.String getTableName(java.lang.String variableName)
-
getUnionClauseStatementHelper
protected EclipseLinkContentAssistVisitor.UnionClauseStatementHelper getUnionClauseStatementHelper()
-
initialize
protected void initialize()
Initializes this visitor.- Overrides:
initializein classAbstractContentAssistVisitor
-
isJoinFetchIdentifiable
protected boolean isJoinFetchIdentifiable()
Determines whether aJOIN FETCHexpression can be identified by with an identification variable or not.- Specified by:
isJoinFetchIdentifiablein classAbstractContentAssistVisitor- Returns:
trueif the expression can have an identification variable;falseotherwise
-
isTableExpression
protected boolean isTableExpression(Expression expression)
-
visit
public void visit(AsOfClause expression)
Visits theAsOfClauseexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(CastExpression expression)
Visits theCastExpressionexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(ConnectByClause expression)
Visits theConnectByClauseexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheConnectByClauseto visit
-
visit
public void visit(DatabaseType expression)
Visits theDatabaseTypeexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheDatabaseTypeto visit
-
visit
public void visit(ExtractExpression expression)
Visits theExtractExpressionexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(HierarchicalQueryClause expression)
Visits theHierarchicalQueryClauseexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheHierarchicalQueryClauseto visit
-
visit
public void visit(OrderByItem expression)
Visits theOrderByItemexpression.- Specified by:
visitin interfaceExpressionVisitor- Overrides:
visitin classAbstractContentAssistVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(OrderSiblingsByClause expression)
Visits theOrderSiblingsByClauseexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(RegexpExpression expression)
Visits theRegexpExpressionexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(StartWithClause expression)
Visits theStartWithClauseexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheStartWithClauseto visit
-
visit
public void visit(TableExpression expression)
Visits theTableExpressionexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(TableVariableDeclaration expression)
Visits theTableVariableDeclarationexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(UnionClause expression)
Visits theUnionClauseexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visitThirdPartyPathExpression
protected void visitThirdPartyPathExpression(AbstractPathExpression expression, java.lang.String variableName)
Visits the givenAbstractPathExpressionand attempts to find valid proposals that is not provided by the default implementation. Subclasses can add additional proposals that is outside of the scope of generic JPA metadata.- Overrides:
visitThirdPartyPathExpressionin classAbstractContentAssistVisitor- Parameters:
expression- TheAbstractPathExpressionto inspectvariableName- The beginning of the path expression
-
-