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.
- Since:
- 2.4
- Version:
- 2.5.1
- Author:
- Pascal Filion
-
-
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:
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()
Description copied from class:AbstractContentAssistVisitorReturns 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()
-
getUnionClauseStatementHelper
protected EclipseLinkContentAssistVisitor.UnionClauseStatementHelper getUnionClauseStatementHelper()
-
initialize
protected void initialize()
Description copied from class:AbstractContentAssistVisitorInitializes this visitor.- Overrides:
initializein classAbstractContentAssistVisitor
-
isJoinFetchIdentifiable
protected boolean isJoinFetchIdentifiable()
Description copied from class:AbstractContentAssistVisitorDetermines 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)
Description copied from interface:EclipseLinkExpressionVisitorVisits theAsOfClauseexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(CastExpression expression)
Description copied from interface:EclipseLinkExpressionVisitorVisits theCastExpressionexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(ConnectByClause expression)
Description copied from interface:EclipseLinkExpressionVisitorVisits theConnectByClauseexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheConnectByClauseto visit
-
visit
public void visit(DatabaseType expression)
Description copied from interface:EclipseLinkExpressionVisitorVisits theDatabaseTypeexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheDatabaseTypeto visit
-
visit
public void visit(ExtractExpression expression)
Description copied from interface:EclipseLinkExpressionVisitorVisits theExtractExpressionexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(HierarchicalQueryClause expression)
Description copied from interface:EclipseLinkExpressionVisitorVisits theHierarchicalQueryClauseexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheHierarchicalQueryClauseto visit
-
visit
public void visit(OrderByItem expression)
Description copied from interface:ExpressionVisitorVisits theOrderByItemexpression.- Specified by:
visitin interfaceExpressionVisitor- Overrides:
visitin classAbstractContentAssistVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(OrderSiblingsByClause expression)
Description copied from interface:EclipseLinkExpressionVisitorVisits theOrderSiblingsByClauseexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(RegexpExpression expression)
Description copied from interface:EclipseLinkExpressionVisitorVisits theRegexpExpressionexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(StartWithClause expression)
Description copied from interface:EclipseLinkExpressionVisitorVisits theStartWithClauseexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheStartWithClauseto visit
-
visit
public void visit(TableExpression expression)
Description copied from interface:EclipseLinkExpressionVisitorVisits theTableExpressionexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(TableVariableDeclaration expression)
Description copied from interface:EclipseLinkExpressionVisitorVisits theTableVariableDeclarationexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visit
public void visit(UnionClause expression)
Description copied from interface:EclipseLinkExpressionVisitorVisits theUnionClauseexpression.- Specified by:
visitin interfaceEclipseLinkExpressionVisitor- Parameters:
expression- TheExpressionto visit
-
visitThirdPartyPathExpression
protected void visitThirdPartyPathExpression(AbstractPathExpression expression, String variableName)
Description copied from class:AbstractContentAssistVisitorVisits 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
-
-