EclipseLink 2.4.1, build 'v20121003-ad44345' API Reference

org.eclipse.persistence.jpa.jpql
Class AbstractContentAssistVisitor

java.lang.Object
  extended by org.eclipse.persistence.jpa.jpql.parser.AnonymousExpressionVisitor
      extended by org.eclipse.persistence.jpa.jpql.AbstractContentAssistVisitor
All Implemented Interfaces:
ExpressionVisitor
Direct Known Subclasses:
DefaultContentAssistVisitor, EclipseLinkContentAssistVisitor

public abstract class AbstractContentAssistVisitor
extends AnonymousExpressionVisitor

The abstract definition that provides support for finding the possible proposals within a JPQL query at a certain position.

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.4
Author:
Pascal Filion
Since:
2.4

Nested Class Summary
protected  class AbstractContentAssistVisitor.AbstractFromClauseSelectStatementHelper<T extends AbstractSelectStatement>
           
protected  class AbstractContentAssistVisitor.AbstractGroupByClauseSelectStatementHelper<T extends AbstractSelectStatement>
           
protected  class AbstractContentAssistVisitor.AbstractHavingClauseSelectStatementHelper<T extends AbstractSelectStatement>
           
protected  class AbstractContentAssistVisitor.AbstractSelectClauseSelectStatementHelper
           
protected  class AbstractContentAssistVisitor.AbstractWhereClauseSelectStatementHelper<T extends AbstractSelectStatement>
           
protected  class AbstractContentAssistVisitor.AcceptableTypeVisitor
          This visitor retrieves the permitted type from the path expression's parent.
protected  class AbstractContentAssistVisitor.AppendableExpressionVisitor
          This visitor scans the visited Expression and determines if a JPQL identifier can be added when the position is at the end of a clause and the ending of the clause can be seen as the beginning of an identifier.
protected static interface AbstractContentAssistVisitor.ClauseHelper<T extends Expression>
          This helper is responsible to add the proposals
protected static interface AbstractContentAssistVisitor.CollectionExpressionHelper<T extends Expression>
           
protected static class AbstractContentAssistVisitor.CollectionExpressionVisitor
          This visitor retrieves the CollectionExpression if it is visited.
protected  class AbstractContentAssistVisitor.CollectionMappingFilter
           
protected  class AbstractContentAssistVisitor.CompletenessVisitor
           
protected  class AbstractContentAssistVisitor.CompoundExpressionHelper
          This helper is responsible to traverse the parsed tree and to determine if JPQL identifiers with a compound role can be appended after an Expression, which is based on the location of the cursor.
protected  class AbstractContentAssistVisitor.ConditionalExpressionCompletenessVisitor
          This visitor checks to see if the conditional expression is complete or not.
protected  class AbstractContentAssistVisitor.ConstrutorCollectionHelper
           
protected  class AbstractContentAssistVisitor.DefaultMappingCollector
          The default implementation of AbstractContentAssistVisitor.DefaultMappingCollector, which simply returns an empty collection.
protected  class AbstractContentAssistVisitor.DeleteClauseHelper
           
protected  class AbstractContentAssistVisitor.DoubleEncapsulatedCollectionHelper
           
protected  class AbstractContentAssistVisitor.FilteringMappingCollector
          This AbstractContentAssistVisitor.DefaultMappingCollector returns the possible mappings (non-collection type or collection type) from a managed type.
protected  class AbstractContentAssistVisitor.FromClauseCollectionHelper
           
protected  class AbstractContentAssistVisitor.FromClauseHelper
           
protected  class AbstractContentAssistVisitor.FromClauseSelectStatementHelper
           
protected  class AbstractContentAssistVisitor.GroupByClauseCollectionHelper
           
protected  class AbstractContentAssistVisitor.GroupByClauseSelectStatementHelper
           
protected  class AbstractContentAssistVisitor.HavingClauseHelper
           
protected  class AbstractContentAssistVisitor.HavingClauseSelectStatementHelper
           
protected static class AbstractContentAssistVisitor.IdentificationVariableType
          The various ways of retrieving identification variables from the declaration expression.
protected  class AbstractContentAssistVisitor.IncompleteCollectionExpressionVisitor
           
protected  class AbstractContentAssistVisitor.JoinCollectionHelper
           
protected static interface AbstractContentAssistVisitor.MappingCollector
          A collector is responsible to retrieve the possible proposals by using the mappings that can complete a path expression.
protected  class AbstractContentAssistVisitor.MappingFilterBuilder
          This visitor is responsible to create the right Filter based on the type of the Expression.
protected  class AbstractContentAssistVisitor.MappingTypeFilter
          This Filter is responsible to filter out the mappings that can't have their type assignable to the one passed in.
protected static class AbstractContentAssistVisitor.NullExpressionVisitor
          This visitor checks to see if the visited expression is NullExpression.
protected  class AbstractContentAssistVisitor.OrderByClauseCollectionHelper
           
protected  class AbstractContentAssistVisitor.OrderByClauseSelectStatementHelper
           
protected  class AbstractContentAssistVisitor.PropertyMappingFilter
           
protected  class AbstractContentAssistVisitor.RangeVariableDeclarationVisitor
           
protected  class AbstractContentAssistVisitor.ResultVariableVisitor
           
protected  class AbstractContentAssistVisitor.SelectClauseCompletenessVisitor
          This visitor checks the integrity of the select items.
protected  class AbstractContentAssistVisitor.SelectClauseSelectStatementHelper
           
protected static interface AbstractContentAssistVisitor.SelectStatementHelper<T extends AbstractSelectStatement,C extends Expression>
           
protected  class AbstractContentAssistVisitor.SimpleFromClauseSelectStatementHelper
           
protected  class AbstractContentAssistVisitor.SimpleGroupByClauseSelectStatementHelper
           
protected  class AbstractContentAssistVisitor.SimpleHavingClauseSelectStatementHelper
           
protected  class AbstractContentAssistVisitor.SimpleSelectClauseSelectStatementHelper
           
protected  class AbstractContentAssistVisitor.SimpleWhereClauseSelectStatementHelper
           
protected  class AbstractContentAssistVisitor.SubqueryVisitor
          This visitor determines if an Expression is in a subquery.
protected  class AbstractContentAssistVisitor.TrailingCompletenessVisitor
           
protected  class AbstractContentAssistVisitor.TripleEncapsulatedCollectionHelper
           
protected  class AbstractContentAssistVisitor.UpdateItemCollectionHelper
           
protected  class AbstractContentAssistVisitor.VisitParentVisitor
          This visitor is meant to adjust the corrections stack when traversing an Expression in order to increase the list of valid proposals.
protected  class AbstractContentAssistVisitor.WhereClauseHelper
           
protected  class AbstractContentAssistVisitor.WhereClauseSelectStatementHelper
           
 
Field Summary
protected  JPQLQueryContext context
          The context used to query information about the JPQL query.
protected  java.util.Stack<java.lang.Integer> corrections
          This is used to change the position of the cursor in order to add possible proposals
protected  java.util.Map<java.lang.Class<?>,java.lang.Object> helpers
          The cached helpers that are used by this visitor to add valid content assist proposals.
protected  java.util.Stack<Expression> lockedExpressions
          Used to prevent and infinite recursion when one of the visit method is virtually asking a child expression to be visited.
protected  java.util.Stack<java.lang.Integer> positionInCollections
          Used to determine if the cursor is an expression contained in a collection, if not, then this value is set to -1.
protected  DefaultContentAssistProposals proposals
          The set of possible proposals gathered based on the position in the query.
protected  QueryPosition queryPosition
          Contains the position of the cursor within the parsed Expression.
protected static int SPACE_LENGTH
          A constant for the length of a whitespace, which is 1.
protected  java.util.Stack<java.lang.Integer> virtualSpaces
          A virtual space is used to move the position by an amount of space in order to find some proposals within an expression.
protected  java.lang.String word
          The current word, which was retrieved from the JPQL based on the position of the cursor.
protected  WordParser wordParser
          This is used to retrieve words from the actual JPQL query.
 
Constructor Summary
protected AbstractContentAssistVisitor(JPQLQueryContext context)
          Creates a new AbstractContentAssistVisitor.
 
Method Summary
protected  void addAggregate(java.lang.String identifier)
          Adds the given JPQL identifier as a valid proposal if its role is IdentifierRole.AGGREGATE and the beginning starts with the current word.
protected  void addAllAggregates(JPQLQueryBNF queryBNF)
          Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.AGGREGATE and the beginning starts with the current word.
protected  void addAllAggregates(java.lang.String queryBNFId)
          Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.AGGREGATE and the beginning starts with the current word.
protected  void addAllArithmeticIdentifiers()
           
protected  void addAllClauses(JPQLQueryBNF queryBNF)
          Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.CLAUSE and the beginning starts with the current word.
protected  void addAllClauses(java.lang.String queryBNF)
          Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.CLAUSE and the beginning starts with the current word.
protected  void addAllComparisonIdentifiers()
           
protected  void addAllCompounds(JPQLQueryBNF queryBNF)
          Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.COMPOUND_FUNCTION and the beginning starts with the current word.
protected  void addAllCompounds(java.lang.String queryBNFId)
          Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.COMPOUND_FUNCTION and the beginning starts with the current word.
protected  void addAllExpressionFactoryIdentifiers(ExpressionFactory expressionFactory)
           
protected  void addAllExpressionFactoryIdentifiers(java.lang.String expressionFactoryId)
           
protected  void addAllFunctions(JPQLQueryBNF queryBNF)
          Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.FUNCTION and the beginning starts with the current word.
protected  void addAllFunctions(JPQLQueryBNF queryBNF, int position)
          Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.FUNCTION and the beginning starts with the current word.
protected  void addAllFunctions(java.lang.String queryBNFId)
          Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.FUNCTION and the beginning starts with the current word.
protected  void addAllFunctions(java.lang.String queryBNFId, int position)
          Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.FUNCTION and the beginning starts with the current word.
protected  void addAllIdentificationVariables()
          Adds all the identification variables defined in the current query's FROM clause.
protected  void addAllIdentifiers(JPQLQueryBNF queryBNF)
          Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if the beginning starts with the current word.
protected  void addAllIdentifiers(java.lang.String queryBNFId)
          Adds the unique identifier of the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if the beginning starts with the current word.
protected  void addAllLogicIdentifiers()
           
protected  void addAllResultVariables()
          Adds the result variables defined in the SELECT clause as valid proposals.
protected  void addClause(java.lang.String identifier)
          Adds the given JPQL identifier as a valid proposal if its role is IdentifierRole.CLAUSE and the beginning starts with the current word.
protected  void addCompound(java.lang.String identifier)
          Adds the given JPQL identifier as a valid proposal if its role is IdentifierRole.COMPOUND_FUNCTION and the beginning starts with the current word.
protected  void addEntities()
          Adds the abstract schema types as possible content assist proposals but will be filtered using the current word.
protected  void addEntities(IType type)
          Adds the abstract schema types as possible content assist proposals but will be filtered using the current word and the entity's type will have to match the one from the given IType.
protected  void addFunction(java.lang.String identifier, int position)
          Adds the given JPQL identifier as a valid proposal if its role is IdentifierRole.FUNCTION and the beginning starts with the current word.
protected  void addIdentificationVariable(java.lang.String identificationVariable)
          Adds the given identification variable as a valid proposal.
protected  void addIdentificationVariables(AbstractContentAssistVisitor.IdentificationVariableType type, Expression expression)
          Adds the possible identifier variables as valid proposals but filter them based on the given type.
protected  void addIdentifier(java.lang.String identifier)
          Adds the given identifier as a proposal if it passes the checks.
protected  void addIdentifier(java.lang.String identifier, int position)
          Adds the given identifier as a proposal.
protected  boolean addIdentifier(java.lang.String identifier, int position, java.lang.String partialEnding, int endIndex)
          Adds the given identifier as a proposal.
protected  void addIdentifier(java.lang.String identifier, java.lang.String word)
          Adds the given proposal as a proposal if it passes the checks.
protected  void addJoinIdentifiers()
          Adds the join specification identifiers as proposals without validation.
protected  void addLeftIdentificationVariables(Expression expression)
          Adds the identification variables defined in the current query's FROM clause that are declared before the given Expression.
protected  void addRangeIdentificationVariable(java.lang.String identificationVariable)
          Adds the given identification variable as a proposal if it passes the checks.
protected  void addScalarExpressionProposals()
          Adds the proposals that are valid for a scalar expression.
protected  void addSelectExpressionProposals(AbstractSelectClause expression, int length)
           
protected  boolean addSelectExpressionProposals(Expression expression, java.lang.String queryBNFId, int length, int index, boolean last)
           
protected  boolean areArithmeticSymbolsAppendable(Expression expression)
           
protected  boolean areComparisonSymbolsAppendable(Expression expression)
           
protected  boolean areLogicSymbolsAppendable(Expression expression)
           
protected  AbstractContentAssistVisitor.AcceptableTypeVisitor buildAcceptableTypeVisitor()
           
protected  AbstractContentAssistVisitor.AppendableExpressionVisitor buildAppendableExpressionVisitor()
           
protected  AbstractContentAssistVisitor.CollectionExpressionVisitor buildCollectionExpressionVisitor()
          Creates a visitor that collects the CollectionExpression if it's been visited.
protected  AbstractContentAssistVisitor.CollectionMappingFilter buildCollectionMappingFilter()
           
protected  AbstractContentAssistVisitor.CompoundExpressionHelper buildCompoundExpressionHelper()
           
protected  AbstractContentAssistVisitor.ConditionalExpressionCompletenessVisitor buildConditionalExpressionCompletenessVisitor()
           
protected  AbstractContentAssistVisitor.ConstrutorCollectionHelper buildConstrutorCollectionHelper()
           
protected  AbstractContentAssistVisitor.DefaultMappingCollector buildDefaultMappingCollector()
           
protected  AbstractContentAssistVisitor.DeleteClauseHelper buildDeleteClauseHelper()
           
protected  AbstractContentAssistVisitor.DoubleEncapsulatedCollectionHelper buildDoubleEncapsulatedCollectionHelper()
           
protected  AbstractContentAssistVisitor.FilteringMappingCollector buildFilteringMappingCollector(AbstractPathExpression expression, Resolver resolver, Filter<IMapping> filter, java.lang.String pattern)
           
protected  AbstractContentAssistVisitor.FromClauseCollectionHelper buildFromClauseCollectionHelper()
           
protected  AbstractContentAssistVisitor.FromClauseHelper buildFromClauseHelper()
           
protected  AbstractContentAssistVisitor.FromClauseSelectStatementHelper buildFromClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.GroupByClauseCollectionHelper buildGroupByClauseCollectionHelper()
           
protected  AbstractContentAssistVisitor.GroupByClauseSelectStatementHelper buildGroupByClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.HavingClauseHelper buildHavingClauseHelper()
           
protected  AbstractContentAssistVisitor.HavingClauseSelectStatementHelper buildHavingClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.IncompleteCollectionExpressionVisitor buildIncompleteCollectionExpressionVisitor()
           
protected  AbstractContentAssistVisitor.JoinCollectionHelper buildJoinCollectionHelper()
           
protected  AbstractValidator.JPQLQueryBNFValidator buildJPQLQueryBNFValidator(JPQLQueryBNF queryBNF)
          Returns the AbstractValidator.JPQLQueryBNFValidator that can be used to validate an Expression by making sure its BNF is part of the given BNF.
protected  AbstractValidator.JPQLQueryBNFValidator buildJPQLQueryBNFValidator(java.lang.String queryBNFId)
          Returns the AbstractValidator.JPQLQueryBNFValidator that can be used to validate an Expression by making sure its BNF is part of the given BNF.
protected  AbstractContentAssistVisitor.MappingCollector buildMappingCollector(AbstractPathExpression expression, Resolver resolver, Filter<IMapping> filter)
           
protected  Filter<IMapping> buildMappingFilter(AbstractPathExpression expression, Filter<IMapping> filter)
           
protected  Filter<IMapping> buildMappingFilter(Expression expression)
           
protected  AbstractContentAssistVisitor.MappingFilterBuilder buildMappingFilterBuilder()
           
protected  AbstractContentAssistVisitor.NullExpressionVisitor buildNullExpressionVisitor()
          Creates a visitor that collects the NullExpression if it's been visited.
protected  AbstractContentAssistVisitor.OrderByClauseCollectionHelper buildOrderByClauseCollectionHelper()
           
protected  AbstractContentAssistVisitor.OrderByClauseSelectStatementHelper buildOrderByClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.PropertyMappingFilter buildPropertyMappingFilter()
           
 ContentAssistProposals buildProposals(int position)
          Prepares this visitor by prepopulating it with the necessary data that is required to properly gather the list of proposals based on the given caret position.
protected  AbstractContentAssistVisitor.RangeVariableDeclarationVisitor buildRangeVariableDeclarationVisitor()
           
protected  AbstractContentAssistVisitor.ResultVariableVisitor buildResultVariableVisitor()
           
protected  AbstractContentAssistVisitor.SelectClauseCompletenessVisitor buildSelectClauseCompleteness()
           
protected  AbstractContentAssistVisitor.SelectClauseSelectStatementHelper buildSelectClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.SimpleFromClauseSelectStatementHelper buildSimpleFromClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.SimpleGroupByClauseSelectStatementHelper buildSimpleGroupByClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.SimpleHavingClauseSelectStatementHelper buildSimpleHavingClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.SimpleSelectClauseSelectStatementHelper buildSimpleSelectClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.SimpleWhereClauseSelectStatementHelper buildSimpleWhereClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.SubqueryVisitor buildSubqueryVisitor()
           
protected  AbstractContentAssistVisitor.TrailingCompletenessVisitor buildTrailingCompleteness()
           
protected  AbstractContentAssistVisitor.TripleEncapsulatedCollectionHelper buildTripleEncapsulatedCollectionHelper()
           
protected  AbstractContentAssistVisitor.UpdateItemCollectionHelper buildUpdateItemCollectionHelper()
           
protected  AbstractContentAssistVisitor.VisitParentVisitor buildVisitParentVisitor()
           
protected  AbstractContentAssistVisitor.WhereClauseHelper buildWhereClauseHelper()
           
protected  AbstractContentAssistVisitor.WhereClauseSelectStatementHelper buildWhereClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.SelectStatementHelper<AbstractSelectStatement,Expression> cast(AbstractContentAssistVisitor.SelectStatementHelper<? extends AbstractSelectStatement,? extends Expression> helper)
           
 void dispose()
          Disposes this visitor.
protected  IterableIterator<IEntity> entities()
          Returns the collection of possible abstract schema types.
protected  int findExpressionPosition(CollectionExpression expression)
           
protected  RangeVariableDeclaration findRangeVariableDeclaration(UpdateClause expression)
           
protected  IType getAcceptableType(Expression expression)
          Determines the root IType that any type should be assignable.
protected  AbstractContentAssistVisitor.AppendableExpressionVisitor getAppendableExpressionVisitor()
           
protected  CollectionExpression getCollectionExpression(Expression expression)
          Casts the given Expression to a CollectionExpression if it is actually an object of that type.
protected  AbstractContentAssistVisitor.CollectionExpressionVisitor getCollectionExpressionVisitor()
          Returns the visitor that collects the CollectionExpression if it's been visited.
protected  AbstractContentAssistVisitor.CompletenessVisitor getCompletenessVisitor()
           
protected  AbstractContentAssistVisitor.CompoundExpressionHelper getCompoundExpressionHelper()
           
protected  AbstractContentAssistVisitor.CompletenessVisitor getConditionalExpressionCompletenessVisitor()
           
protected  AbstractContentAssistVisitor.ConstrutorCollectionHelper getConstructorCollectionHelper()
           
protected  java.util.Stack<java.lang.Integer> getCorrections()
          Returns
protected  AbstractContentAssistVisitor.MappingCollector getDefaultMappingCollector()
           
protected  AbstractContentAssistVisitor.ClauseHelper<DeleteClause> getDeleteClauseHelper()
           
protected  AbstractContentAssistVisitor.DoubleEncapsulatedCollectionHelper getDoubleEncapsulatedCollectionHelper()
           
protected  IEmbeddable getEmbeddable(IType type)
          Retrieves the IEmbeddable for the given IType if one exists.
protected  IEntity getEntity(IType type)
          Retrieves the IEntity for the given IType if one exists.
protected  IEntity getEntityNamed(java.lang.String entityName)
          Retrieves the entity with the given abstract schema name, which can also be the entity class name.
protected  ExpressionFactory getExpressionFactory(java.lang.String expressionFactoryId)
          Retrieves the registered ExpressionFactory that was registered for the given unique identifier.
protected  ExpressionRegistry getExpressionRegistry()
          Returns the registry containing the JPQLQueryBNFs and the ExpressionFactories that are used to properly parse a JPQL query.
protected  AbstractContentAssistVisitor.AcceptableTypeVisitor getExpressionTypeVisitor()
           
protected  AbstractContentAssistVisitor.FromClauseCollectionHelper getFromClauseCollectionHelper()
           
protected  AbstractContentAssistVisitor.ClauseHelper<AbstractFromClause> getFromClauseHelper()
           
protected  AbstractContentAssistVisitor.FromClauseSelectStatementHelper getFromClauseSelectStatementHelper()
           
protected  JPQLGrammar getGrammar()
          Returns the JPQL grammar that will be used to define how to parse a JPQL query.
protected  AbstractContentAssistVisitor.GroupByClauseCollectionHelper getGroupByClauseCollectionHelper()
           
protected  AbstractContentAssistVisitor.GroupByClauseSelectStatementHelper getGroupByClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.ClauseHelper<HavingClause> getHavingClauseHelper()
           
protected  AbstractContentAssistVisitor.HavingClauseSelectStatementHelper getHavingClauseSelectStatementHelper()
           
protected
<T> T
getHelper(java.lang.Class<T> helperClass)
          Retrieves the helper associated with the given helper class.
protected  IdentifierRole getIdentifierRole(java.lang.String identifier)
          Retrieves the role of the given identifier.
protected  JPAVersion getIdentifierVersion(java.lang.String identifier)
          Retrieves the JPA version in which the identifier was first introduced.
protected  AbstractContentAssistVisitor.CompletenessVisitor getIncompleteCollectionExpressionVisitor()
           
protected  AbstractContentAssistVisitor.JoinCollectionHelper getJoinCollectionHelper()
           
protected  JPAVersion getJPAVersion()
          Returns the version of the Java Persistence this entity for which it was defined.
protected  JPQLExpression getJPQLExpression()
          Returns the parsed tree representation of the JPQL query.
protected  IManagedType getManagedType(IType type)
          Retrieves the entity for the given type.
protected  IMappedSuperclass getMappedSuperclass(IType type)
          Retrieves the IMappedSuperclass for the given IType if one exists.
protected  IMapping getMapping(Expression expression)
          Returns the IMapping for the field represented by the given Expression.
protected  Filter<IMapping> getMappingCollectionFilter()
           
protected  AbstractContentAssistVisitor.MappingFilterBuilder getMappingFilterBuilder()
           
protected  Filter<IMapping> getMappingPropertyFilter()
           
protected  AbstractContentAssistVisitor.NullExpressionVisitor getNullExpressionVisitor()
          Returns the visitor that collects the NullExpression if it's been visited.
protected  AbstractContentAssistVisitor.OrderByClauseCollectionHelper getOrderByClauseCollectionHelper()
           
protected  AbstractContentAssistVisitor.OrderByClauseSelectStatementHelper getOrderByClauseSelectStatementHelper()
           
protected  int getPosition(Expression expression)
          Returns the position of the Expression within the parsed tree representation of the JPQL query.
 DefaultContentAssistProposals getProposals()
          Returns the object that contains the valid proposals based on the position of the cursor within the JPQL query.
protected  IManagedTypeProvider getProvider()
          Retrieves the provider of managed types.
protected  IQuery getQuery()
          Returns the external form of the JPQL query.
protected  JPQLQueryBNF getQueryBNF(java.lang.String queryBNFId)
          Retrieves the BNF object that was registered for the given unique identifier.
protected  JPQLQueryContext getQueryContext()
          Returns the JPQLQueryContext that is used by this visitor.
protected  java.lang.String getQueryExpression()
          Returns the string representation of the JPQL query.
protected  AbstractContentAssistVisitor.RangeVariableDeclarationVisitor getRangeVariableDeclarationVisitor()
           
protected  Resolver getResolver(Expression expression)
          Creates or retrieved the cached Resolver for the given Expression.
protected  AbstractContentAssistVisitor.ResultVariableVisitor getResultVariableVisitor()
           
protected  AbstractContentAssistVisitor.CompletenessVisitor getSelectClauseCompletenessVisitor()
           
protected  AbstractContentAssistVisitor.SelectClauseSelectStatementHelper getSelectClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.SimpleFromClauseSelectStatementHelper getSimpleFromClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.SimpleGroupByClauseSelectStatementHelper getSimpleGroupByClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.SimpleHavingClauseSelectStatementHelper getSimpleHavingClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.SimpleSelectClauseSelectStatementHelper getSimpleSelectClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.SimpleWhereClauseSelectStatementHelper getSimpleWhereClauseSelectStatementHelper()
           
protected  AbstractContentAssistVisitor.SubqueryVisitor getSubqueryVisitor()
           
protected  AbstractContentAssistVisitor.TripleEncapsulatedCollectionHelper getTripleEncapsulatedCollectionHelper()
           
protected  IType getType(java.lang.Class<?> type)
          Retrieves the external type for the given Java type.
protected  IType getType(Expression expression)
          Returns the IType of the given Expression.
protected  IType getType(java.lang.String typeName)
          Retrieves the external class for the given fully qualified class name.
protected  ITypeDeclaration getTypeDeclaration(Expression expression)
          Returns the ITypeDeclaration of the field handled by this Resolver.
protected  TypeHelper getTypeHelper()
          Returns a helper that gives access to the most common types.
protected  ITypeRepository getTypeRepository()
          Returns the type repository for the application.
protected  AbstractContentAssistVisitor.UpdateItemCollectionHelper getUpdateItemCollectionHelper()
           
protected  void initialize()
          Initializes this visitor.
protected  boolean isAggregate(java.lang.String identifier)
          Determines whether the given JPQL identifier used in an aggregate expression; for instance AND.
protected  boolean isAppendable(Expression expression)
           
protected  boolean isAppendableToCollection(Expression expression)
           
protected  boolean isClause(java.lang.String identifier)
          Determines whether the given JPQL identifier used in a clause; for instance SELECT.
protected  boolean isComplete(Expression expression)
           
protected  boolean isCompoundable(Expression expression)
           
protected  boolean isCompoundFunction(java.lang.String identifier)
          Determines whether the given JPQL identifier used in a compound expression; an example would be BETWEEN or MEMBER.
protected  boolean isConditionalExpressionComplete(Expression expression)
           
protected  boolean isFunction(java.lang.String identifier)
          Determines whether the given JPQL identifier is a function, an example would be AVG.
protected  boolean isGroupByComplete(Expression expression)
           
protected  boolean isInSubquery(Expression expression)
          Determines whether the given Expression is in a subquery or in the top-level query.
protected abstract  boolean isJoinFetchIdentifiable()
          Determines whether a JOIN FETCH expression can be identified by with an identification variable or not.
protected  boolean isLocked(Expression expression)
          Determines whether the given Expression has been set has the lock to prevent an infinite recursion.
protected  boolean isNull(Expression expression)
          Determines whether the given Expression is the NullExpression.
protected  boolean isPositionWithin(int position, int offset, java.lang.String word)
          Determines whether the given position is within the given word.
protected  boolean isPositionWithin(int position, java.lang.String word)
          Determines whether the given position is within the given word.
protected  boolean isPreviousClauseComplete(AbstractSelectStatement expression, AbstractContentAssistVisitor.SelectStatementHelper<AbstractSelectStatement,Expression> helper)
           
protected  boolean isResultVariable(Expression expression)
           
protected  boolean isSelectExpressionComplete(Expression expression)
           
protected  boolean isValid(Expression expression, JPQLQueryBNF queryBNF)
          Determines whether the given Expression part is an expression of the given query BNF.
protected  boolean isValid(Expression expression, java.lang.String queryBNFId)
          Determines whether the given Expression part is an expression of the given query BNF.
protected  boolean isValidProposal(java.lang.String proposal, java.lang.String word)
          Determines whether the given proposal is a valid, which is based on the content of the given word.
protected  boolean isValidVersion(java.lang.String identifier)
          Determines whether the given JPQL identifier can be a valid proposal, i.e. if it's part of the grammar of the JPA version that was used to parse the JPQL query.
protected  int length(Expression expression)
          Returns the length of the string representation for the given Expression.
 void prepare(QueryPosition queryPosition)
          Prepares this visitor by pre-populating it with the necessary data that is required to properly gather the list of proposals based on the caret position.
protected
<T> void
registerHelper(java.lang.Class<T> helperClass, T helper)
          Registers the given helper associated with the given helper class.
 void visit(AbsExpression expression)
          Visits the AbsExpression expression.
 void visit(AbstractSchemaName expression)
          Visits the AbstractSchemaName expression.
 void visit(AdditionExpression expression)
          Visits the AdditionExpression expression.
 void visit(AllOrAnyExpression expression)
          Visits the AllOrAnyExpression expression.
 void visit(AndExpression expression)
          Visits the AndExpression expression.
 void visit(ArithmeticFactor expression)
          Visits the ArithmeticFactor expression.
 void visit(AvgFunction expression)
          Visits the AvgFunction expression.
 void visit(BadExpression expression)
          Visits the BadExpression expression.
 void visit(BetweenExpression expression)
          Visits the BetweenExpression expression.
 void visit(CaseExpression expression)
          Visits the CaseExpression expression.
 void visit(CoalesceExpression expression)
          Visits the CoalesceExpression expression.
 void visit(CollectionExpression expression)
          Visits the CollectionExpression expression.
 void visit(CollectionMemberDeclaration expression)
          Visits the CollectionMemberDeclaration expression.
 void visit(CollectionMemberExpression expression)
          Visits the CollectionMemberExpression expression.
 void visit(CollectionValuedPathExpression expression)
          Visits the CollectionValuedPathExpression expression.
 void visit(ComparisonExpression expression)
          Visits the ComparisonExpression expression.
 void visit(ConcatExpression expression)
          Visits the ConcatExpression expression.
 void visit(ConstructorExpression expression)
          Visits the ConstructorExpression expression.
 void visit(CountFunction expression)
          Visits the CountFunction expression.
 void visit(DateTime expression)
          Visits the DateTime expression.
 void visit(DeleteClause expression)
          Visits the DeleteClause expression.
 void visit(DeleteStatement expression)
          Visits the DeleteStatement expression.
 void visit(DivisionExpression expression)
          Visits the DivisionExpression expression.
 void visit(EmptyCollectionComparisonExpression expression)
          Visits the EmptyCollectionComparisonExpression expression.
 void visit(EntityTypeLiteral expression)
          Visits the EntityTypeLiteral expression.
 void visit(EntryExpression expression)
          Visits the EntryExpression expression.
 void visit(ExistsExpression expression)
          Visits the ExistsExpression expression.
protected  void visit(Expression expression)
          Blindly visit the given Expression.
 void visit(FromClause expression)
          Visits the FromClause expression.
 void visit(FunctionExpression expression)
          Visits the FunctionExpression expression.
 void visit(GroupByClause expression)
          Visits the GroupByClause expression.
 void visit(HavingClause expression)
          Visits the HavingClause expression.
 void visit(IdentificationVariable expression)
          Visits the IdentificationVariable expression.
 void visit(IdentificationVariableDeclaration expression)
          Visits the IdentificationVariableDeclaration expression.
 void visit(IndexExpression expression)
          Visits the IndexExpression expression.
 void visit(InExpression expression)
          Visits the InExpression expression.
 void visit(InputParameter expression)
          Visits the InputParameter expression.
 void visit(Join expression)
          Visits the Join expression.
 void visit(JPQLExpression expression)
          Visits the JPQLExpression expression.
 void visit(KeyExpression expression)
          Visits the KeyExpression expression.
 void visit(KeywordExpression expression)
          Visits the KeywordExpression expression.
 void visit(LengthExpression expression)
          Visits the LengthExpression expression.
 void visit(LikeExpression expression)
          Visits the LikeExpression expression.
 void visit(LocateExpression expression)
          Visits the LocateExpression expression.
 void visit(LowerExpression expression)
          Visits the LowerExpression expression.
 void visit(MaxFunction expression)
          Visits the MaxFunction expression.
 void visit(MinFunction expression)
          Visits the MinFunction expression.
 void visit(ModExpression expression)
          Visits the ModExpression expression.
 void visit(MultiplicationExpression expression)
          Visits the MultiplicationExpression expression.
 void visit(NotExpression expression)
          Visits the NotExpression expression.
 void visit(NullComparisonExpression expression)
          Visits the NullComparisonExpression expression.
 void visit(NullExpression expression)
          Visits the NullExpression expression.
 void visit(NullIfExpression expression)
          Visits the NullIfExpression expression.
 void visit(NumericLiteral expression)
          Visits the NumericLiteral expression.
 void visit(ObjectExpression expression)
          Visits the ObjectExpression expression.
 void visit(OrderByClause expression)
          Visits the OrderByClause expression.
 void visit(OrderByItem expression)
          Visits the OrderByItem expression.
 void visit(OrExpression expression)
          Visits the OrExpression expression.
 void visit(RangeVariableDeclaration expression)
          Visits the RangeVariableDeclaration expression.
 void visit(ResultVariable expression)
          Visits the ResultVariable expression.
 void visit(SelectClause expression)
          Visits the SelectClause expression.
 void visit(SelectStatement expression)
          Visits the SelectStatement expression.
 void visit(SimpleFromClause expression)
          Visits the SimpleFromClause expression.
 void visit(SimpleSelectClause expression)
          Visits the SimpleSelectClause expression.
 void visit(SimpleSelectStatement expression)
          Visits the SimpleSelectStatement expression.
 void visit(SizeExpression expression)
          Visits the SizeExpression expression.
 void visit(SqrtExpression expression)
          Visits the SqrtExpression expression.
 void visit(StateFieldPathExpression expression)
          Visits the StateFieldPathExpression expression.
 void visit(StringLiteral expression)
          Visits the StringLiteral expression.
 void visit(SubExpression expression)
          Visits the SubExpression expression.
 void visit(SubstringExpression expression)
          Visits the SubstringExpression expression.
 void visit(SubtractionExpression expression)
          Visits the SubtractionExpression expression.
 void visit(SumFunction expression)
          Visits the SumFunction expression.
 void visit(TreatExpression expression)
          Visits the TreatExpression expression.
 void visit(TrimExpression expression)
          Visits the TrimExpression expression.
 void visit(TypeExpression expression)
          Visits the TypeExpression expression.
 void visit(UnknownExpression expression)
          Visits the UnknownExpression expression.
 void visit(UpdateClause expression)
          Visits the UpdateClause expression.
 void visit(UpdateItem expression)
          Visits the UpdateItem expression.
 void visit(UpdateStatement expression)
          Visits the UpdateStatement expression.
 void visit(UpperExpression expression)
          Visits the UpperExpression expression.
 void visit(ValueExpression expression)
          Visits the ValueExpression expression.
 void visit(WhenClause expression)
          Visits the WhenClause expression.
 void visit(WhereClause expression)
          Visits the WhereClause expression.
protected  void visitAggregateFunction(AggregateFunction expression)
           
protected  void visitArithmeticExpression(ArithmeticExpression expression)
           
protected
<T extends AbstractExpression>
void
visitClause(T expression, java.lang.String identifier, boolean hasSpaceAfterIdentifier, AbstractContentAssistVisitor.ClauseHelper<T> helper)
           
protected
<T extends Expression>
void
visitCollectionExpression(T expression, java.lang.String identifier, AbstractContentAssistVisitor.CollectionExpressionHelper<T> helper)
          Adds the possible proposals for the given expression based on the location of the cursor and the content of the expression.
protected  void visitCompoundableExpression(AbstractConditionalClause expression)
           
protected  void visitCompoundableExpression(AbstractContentAssistVisitor.CompoundExpressionHelper helper, int position, int length)
           
protected  void visitDeleteStatement(DeleteStatement expression)
           
protected  void visitEncapsulatedExpression(AbstractEncapsulatedExpression expression, java.lang.String identifier, java.lang.String jpqlQueryBNF)
          Adds the possible proposals for the given expression based on the location of the cursor and the content of the expression.
protected  void visitLogicalExpression(LogicalExpression expression, java.lang.String identifier)
           
protected  AbstractContentAssistVisitor.VisitParentVisitor visitParentVisitor()
           
protected  void visitPathExpression(AbstractPathExpression expression)
           
protected  void visitPathExpression(AbstractPathExpression expression, Filter<IMapping> helper)
           
protected  void visitSelectClause(AbstractSelectClause expression)
           
protected  void visitSelectStatement(AbstractSelectStatement expression, AbstractContentAssistVisitor.SelectStatementHelper<? extends AbstractSelectStatement,? extends Expression> helper)
           
protected  AbstractContentAssistVisitor.SelectStatementHelper<? extends AbstractSelectStatement,? extends Expression> visitSelectStatement(AbstractSelectStatement expression, int position, int[] length, AbstractContentAssistVisitor.SelectStatementHelper<AbstractSelectStatement,Expression> helper)
           
protected  void visitSingleEncapsulatedExpression(AbstractSingleEncapsulatedExpression expression, AbstractContentAssistVisitor.IdentificationVariableType identificationVariableType)
          Adds the possible proposals for the given expression based on the location of the cursor and the content of the expression.
protected  void visitSingleEncapsulatedExpression(AbstractSingleEncapsulatedExpression expression, AbstractContentAssistVisitor.IdentificationVariableType identificationVariableType, java.lang.String... expressionIdentifiers)
          Adds the possible proposals for the given expression based on the location of the cursor and the content of the expression.
protected  void visitUpdateStatement(UpdateStatement expression)
           
protected  AbstractContentAssistVisitor.ClauseHelper<WhereClause> whereClauseHelper()
           
protected  AbstractContentAssistVisitor.WhereClauseSelectStatementHelper whereClauseSelectStatementHelper()
           
 
Methods inherited from class org.eclipse.persistence.jpa.jpql.parser.AnonymousExpressionVisitor
visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

context

protected final JPQLQueryContext context
The context used to query information about the JPQL query.


corrections

protected java.util.Stack<java.lang.Integer> corrections
This is used to change the position of the cursor in order to add possible proposals


helpers

protected java.util.Map<java.lang.Class<?>,java.lang.Object> helpers
The cached helpers that are used by this visitor to add valid content assist proposals.


lockedExpressions

protected java.util.Stack<Expression> lockedExpressions
Used to prevent and infinite recursion when one of the visit method is virtually asking a child expression to be visited.


positionInCollections

protected java.util.Stack<java.lang.Integer> positionInCollections
Used to determine if the cursor is an expression contained in a collection, if not, then this value is set to -1.


proposals

protected DefaultContentAssistProposals proposals
The set of possible proposals gathered based on the position in the query.


queryPosition

protected QueryPosition queryPosition
Contains the position of the cursor within the parsed Expression.


virtualSpaces

protected java.util.Stack<java.lang.Integer> virtualSpaces
A virtual space is used to move the position by an amount of space in order to find some proposals within an expression. This is usually used when the trailing whitespace is not owned by the child expression but by one of its parents.


word

protected java.lang.String word
The current word, which was retrieved from the JPQL based on the position of the cursor. The word is what is on the left side of the cursor.


wordParser

protected WordParser wordParser
This is used to retrieve words from the actual JPQL query.


SPACE_LENGTH

protected static final int SPACE_LENGTH
A constant for the length of a whitespace, which is 1.

See Also:
Constant Field Values
Constructor Detail

AbstractContentAssistVisitor

protected AbstractContentAssistVisitor(JPQLQueryContext context)
Creates a new AbstractContentAssistVisitor.

Parameters:
context - The context used to query information about the JPQL query
Throws:
java.lang.NullPointerException - The JPQLQueryContext cannot be null
Method Detail

addAggregate

protected void addAggregate(java.lang.String identifier)
Adds the given JPQL identifier as a valid proposal if its role is IdentifierRole.AGGREGATE and the beginning starts with the current word.

Parameters:
identifier - The JPQL identifier to add as a valid proposal if it passes the checks

addAllAggregates

protected void addAllAggregates(JPQLQueryBNF queryBNF)
Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.AGGREGATE and the beginning starts with the current word.

Parameters:
queryBNF - The JPQLQueryBNF for which the registered JPQL identifiers will be added as proposals if they pass the checks

addAllAggregates

protected void addAllAggregates(java.lang.String queryBNFId)
Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.AGGREGATE and the beginning starts with the current word.

Parameters:
queryBNFId - The unique of the JPQLQueryBNF for which the registered JPQL identifiers will be added as proposals if they pass the checks

addAllArithmeticIdentifiers

protected void addAllArithmeticIdentifiers()

addAllClauses

protected void addAllClauses(JPQLQueryBNF queryBNF)
Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.CLAUSE and the beginning starts with the current word.

Parameters:
queryBNF - The JPQLQueryBNF for which the registered JPQL identifiers will be added as proposals if they pass the checks

addAllClauses

protected void addAllClauses(java.lang.String queryBNF)
Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.CLAUSE and the beginning starts with the current word.

Parameters:
queryBNF - The unique identifier of the JPQLQueryBNF for which the registered JPQL identifiers will be added as proposals if they pass the checks

addAllComparisonIdentifiers

protected void addAllComparisonIdentifiers()

addAllCompounds

protected void addAllCompounds(JPQLQueryBNF queryBNF)
Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.COMPOUND_FUNCTION and the beginning starts with the current word.

Parameters:
queryBNF - The JPQLQueryBNF for which the registered JPQL identifiers will be added as proposals if they pass the checks

addAllCompounds

protected void addAllCompounds(java.lang.String queryBNFId)
Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.COMPOUND_FUNCTION and the beginning starts with the current word.

Parameters:
queryBNFId - The unique identifier of the JPQLQueryBNF for which the registered JPQL identifiers will be added as proposals if they pass the checks

addAllExpressionFactoryIdentifiers

protected void addAllExpressionFactoryIdentifiers(ExpressionFactory expressionFactory)

addAllExpressionFactoryIdentifiers

protected void addAllExpressionFactoryIdentifiers(java.lang.String expressionFactoryId)

addAllFunctions

protected void addAllFunctions(JPQLQueryBNF queryBNF)
Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.FUNCTION and the beginning starts with the current word.

Parameters:
queryBNF - The JPQLQueryBNF for which the registered JPQL identifiers will be added as proposals if they pass the checks

addAllFunctions

protected void addAllFunctions(JPQLQueryBNF queryBNF,
                               int position)
Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.FUNCTION and the beginning starts with the current word.

Parameters:
position - The position of the cursor to use for determining if the given JPQL identifier is a valid proposal
queryBNF - The JPQLQueryBNF for which the registered JPQL identifiers will be added as proposals if they pass the checks

addAllFunctions

protected void addAllFunctions(java.lang.String queryBNFId)
Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.FUNCTION and the beginning starts with the current word.

Parameters:
queryBNFId - The unique identifier of the JPQLQueryBNF for which the registered JPQL identifiers will be added as proposals if they pass the checks

addAllFunctions

protected void addAllFunctions(java.lang.String queryBNFId,
                               int position)
Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if their role is IdentifierRole.FUNCTION and the beginning starts with the current word.

Parameters:
queryBNFId - The unique identifier of the JPQLQueryBNF for which the registered JPQL identifiers will be
queryBNF - The JPQLQueryBNF for which the registered JPQL identifiers will be added as proposals if they pass the checks

addAllIdentificationVariables

protected void addAllIdentificationVariables()
Adds all the identification variables defined in the current query's FROM clause.


addAllIdentifiers

protected void addAllIdentifiers(JPQLQueryBNF queryBNF)
Adds the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if the beginning starts with the current word.

Parameters:
queryBNF - The JPQLQueryBNF for which the registered JPQL identifiers will be added as proposals if they pass the checks

addAllIdentifiers

protected void addAllIdentifiers(java.lang.String queryBNFId)
Adds the unique identifier of the JPQL identifiers that are registered with the given JPQLQueryBNF as valid proposals if the beginning starts with the current word.

Parameters:
queryBNFId - The unique identifier of the JPQLQueryBNF for which the registered JPQL identifiers will be added as proposals if they pass the checks

addAllLogicIdentifiers

protected void addAllLogicIdentifiers()

addAllResultVariables

protected void addAllResultVariables()
Adds the result variables defined in the SELECT clause as valid proposals.


addClause

protected void addClause(java.lang.String identifier)
Adds the given JPQL identifier as a valid proposal if its role is IdentifierRole.CLAUSE and the beginning starts with the current word.

Parameters:
identifier - The JPQL identifier to add as a valid proposal if it passes the checks

addCompound

protected void addCompound(java.lang.String identifier)
Adds the given JPQL identifier as a valid proposal if its role is IdentifierRole.COMPOUND_FUNCTION and the beginning starts with the current word.

Parameters:
identifier - The JPQL identifier to add as a valid proposal if it passes the checks

addEntities

protected void addEntities()
Adds the abstract schema types as possible content assist proposals but will be filtered using the current word.


addEntities

protected void addEntities(IType type)
Adds the abstract schema types as possible content assist proposals but will be filtered using the current word and the entity's type will have to match the one from the given IType.

Parameters:
type - The IType used to filter the abstract schema types

addFunction

protected void addFunction(java.lang.String identifier,
                           int position)
Adds the given JPQL identifier as a valid proposal if its role is IdentifierRole.FUNCTION and the beginning starts with the current word.

Parameters:
position - The position of the cursor to use for determining if the given JPQL identifier is a valid proposal
identifier - The JPQL identifier to add as a valid proposal if it passes the checks

addIdentificationVariable

protected void addIdentificationVariable(java.lang.String identificationVariable)
Adds the given identification variable as a valid proposal.

Parameters:
identificationVariable - The identification variable to add as a proposal if it passes the checks

addIdentificationVariables

protected void addIdentificationVariables(AbstractContentAssistVisitor.IdentificationVariableType type,
                                          Expression expression)
Adds the possible identifier variables as valid proposals but filter them based on the given type.

For instance, if the type is AbstractContentAssistVisitor.IdentificationVariableType.LEFT, then any identification variables that have been defined before the given Expression are valid proposals, but those defined after are not valid proposals.

Parameters:
type - Which type of identification variables to add as valid proposals
expression - The Expression where the content assist was invoked, which helps to determine how to stop adding identification variable

addIdentifier

protected void addIdentifier(java.lang.String identifier)
Adds the given identifier as a proposal if it passes the checks.

Parameters:
identifier - The JPQL identifier to add as a proposal

addIdentifier

protected void addIdentifier(java.lang.String identifier,
                             int position)
Adds the given identifier as a proposal. If the JPQL identifier has more than one word, what precedes the given position will be checked in order to filter out some identifiers. For example: "... WHERE IS NOT |" has IS NOT already defined, that means IS NOT EMPTY, IS NOT NULL will be filtered out. The only valid proposals in this case is EMPTY and NULL.

Parameters:
identifier - The JPQL identifier to add as a proposal
position - The position of the cursor to use for determining if the given JPQL identifier is a valid proposal

addIdentifier

protected boolean addIdentifier(java.lang.String identifier,
                                int position,
                                java.lang.String partialEnding,
                                int endIndex)
Adds the given identifier as a proposal. If the JPQL identifier has more than one word, what precedes the given position will be checked in order to filter out some identifiers. For example: "... WHERE IS NOT |" has IS NOT already defined, that means IS NOT EMPTY, IS NOT NULL will be filtered out. The only valid proposals in this case is EMPTY and NULL.

Parameters:
identifier - The JPQL identifier to add as a proposal
position - The position of the cursor to use for determining if the given JPQL identifier is a valid proposal
partialEnding - The possible characters that could be identifiers and might be part of a JPQL identifier with more than one word
endIndex - The position used to stop matching the partial ending with what is found before the position of the cursor
Returns:
true if the given JPQL identifier was added as a proposal; false otherwise

addIdentifier

protected void addIdentifier(java.lang.String identifier,
                             java.lang.String word)
Adds the given proposal as a proposal if it passes the checks.

Parameters:
identifier - The JPQL identifier to add as a proposal
word - The string used to determine if the identifier starts with it

addJoinIdentifiers

protected void addJoinIdentifiers()
Adds the join specification identifiers as proposals without validation.


addLeftIdentificationVariables

protected void addLeftIdentificationVariables(Expression expression)
Adds the identification variables defined in the current query's FROM clause that are declared before the given Expression.

Parameters:
expression - The Expression used to determine at which declaration to stop

addRangeIdentificationVariable

protected void addRangeIdentificationVariable(java.lang.String identificationVariable)
Adds the given identification variable as a proposal if it passes the checks. If an entity is found, then it will be registered.


addScalarExpressionProposals

protected void addScalarExpressionProposals()
Adds the proposals that are valid for a scalar expression.


addSelectExpressionProposals

protected void addSelectExpressionProposals(AbstractSelectClause expression,
                                            int length)

addSelectExpressionProposals

protected boolean addSelectExpressionProposals(Expression expression,
                                               java.lang.String queryBNFId,
                                               int length,
                                               int index,
                                               boolean last)

areArithmeticSymbolsAppendable

protected boolean areArithmeticSymbolsAppendable(Expression expression)

areComparisonSymbolsAppendable

protected boolean areComparisonSymbolsAppendable(Expression expression)

areLogicSymbolsAppendable

protected boolean areLogicSymbolsAppendable(Expression expression)

buildAcceptableTypeVisitor

protected AbstractContentAssistVisitor.AcceptableTypeVisitor buildAcceptableTypeVisitor()

buildAppendableExpressionVisitor

protected AbstractContentAssistVisitor.AppendableExpressionVisitor buildAppendableExpressionVisitor()

buildCollectionExpressionVisitor

protected AbstractContentAssistVisitor.CollectionExpressionVisitor buildCollectionExpressionVisitor()
Creates a visitor that collects the CollectionExpression if it's been visited.

Returns:
A new AbstractContentAssistVisitor.CollectionExpressionVisitor

buildCollectionMappingFilter

protected AbstractContentAssistVisitor.CollectionMappingFilter buildCollectionMappingFilter()

buildCompoundExpressionHelper

protected AbstractContentAssistVisitor.CompoundExpressionHelper buildCompoundExpressionHelper()

buildConditionalExpressionCompletenessVisitor

protected AbstractContentAssistVisitor.ConditionalExpressionCompletenessVisitor buildConditionalExpressionCompletenessVisitor()

buildConstrutorCollectionHelper

protected AbstractContentAssistVisitor.ConstrutorCollectionHelper buildConstrutorCollectionHelper()

buildDefaultMappingCollector

protected AbstractContentAssistVisitor.DefaultMappingCollector buildDefaultMappingCollector()

buildDeleteClauseHelper

protected AbstractContentAssistVisitor.DeleteClauseHelper buildDeleteClauseHelper()

buildDoubleEncapsulatedCollectionHelper

protected AbstractContentAssistVisitor.DoubleEncapsulatedCollectionHelper buildDoubleEncapsulatedCollectionHelper()

buildFilteringMappingCollector

protected AbstractContentAssistVisitor.FilteringMappingCollector buildFilteringMappingCollector(AbstractPathExpression expression,
                                                                                                Resolver resolver,
                                                                                                Filter<IMapping> filter,
                                                                                                java.lang.String pattern)

buildFromClauseCollectionHelper

protected AbstractContentAssistVisitor.FromClauseCollectionHelper buildFromClauseCollectionHelper()

buildFromClauseHelper

protected AbstractContentAssistVisitor.FromClauseHelper buildFromClauseHelper()

buildFromClauseSelectStatementHelper

protected AbstractContentAssistVisitor.FromClauseSelectStatementHelper buildFromClauseSelectStatementHelper()

buildGroupByClauseCollectionHelper

protected AbstractContentAssistVisitor.GroupByClauseCollectionHelper buildGroupByClauseCollectionHelper()

buildGroupByClauseSelectStatementHelper

protected AbstractContentAssistVisitor.GroupByClauseSelectStatementHelper buildGroupByClauseSelectStatementHelper()

buildHavingClauseHelper

protected AbstractContentAssistVisitor.HavingClauseHelper buildHavingClauseHelper()

buildHavingClauseSelectStatementHelper

protected AbstractContentAssistVisitor.HavingClauseSelectStatementHelper buildHavingClauseSelectStatementHelper()

buildIncompleteCollectionExpressionVisitor

protected AbstractContentAssistVisitor.IncompleteCollectionExpressionVisitor buildIncompleteCollectionExpressionVisitor()

buildJoinCollectionHelper

protected AbstractContentAssistVisitor.JoinCollectionHelper buildJoinCollectionHelper()

buildJPQLQueryBNFValidator

protected AbstractValidator.JPQLQueryBNFValidator buildJPQLQueryBNFValidator(JPQLQueryBNF queryBNF)
Returns the AbstractValidator.JPQLQueryBNFValidator that can be used to validate an Expression by making sure its BNF is part of the given BNF.

Parameters:
queryBNF - The BNF used to determine the validity of an Expression
Returns:
A AbstractValidator.JPQLQueryBNFValidator that can determine if an Expression follows the given BNF

buildJPQLQueryBNFValidator

protected AbstractValidator.JPQLQueryBNFValidator buildJPQLQueryBNFValidator(java.lang.String queryBNFId)
Returns the AbstractValidator.JPQLQueryBNFValidator that can be used to validate an Expression by making sure its BNF is part of the given BNF.

Parameters:
queryBNFId - The unique identifier of the BNF used to determine the validity of an Expression
Returns:
A AbstractValidator.JPQLQueryBNFValidator that can determine if an Expression follows the given BNF

buildMappingCollector

protected AbstractContentAssistVisitor.MappingCollector buildMappingCollector(AbstractPathExpression expression,
                                                                              Resolver resolver,
                                                                              Filter<IMapping> filter)

buildMappingFilter

protected Filter<IMapping> buildMappingFilter(AbstractPathExpression expression,
                                              Filter<IMapping> filter)

buildMappingFilter

protected Filter<IMapping> buildMappingFilter(Expression expression)

buildMappingFilterBuilder

protected AbstractContentAssistVisitor.MappingFilterBuilder buildMappingFilterBuilder()

buildNullExpressionVisitor

protected AbstractContentAssistVisitor.NullExpressionVisitor buildNullExpressionVisitor()
Creates a visitor that collects the NullExpression if it's been visited.

Returns:
A new AbstractContentAssistVisitor.NullExpressionVisitor

buildOrderByClauseCollectionHelper

protected AbstractContentAssistVisitor.OrderByClauseCollectionHelper buildOrderByClauseCollectionHelper()

buildOrderByClauseSelectStatementHelper

protected AbstractContentAssistVisitor.OrderByClauseSelectStatementHelper buildOrderByClauseSelectStatementHelper()

buildPropertyMappingFilter

protected AbstractContentAssistVisitor.PropertyMappingFilter buildPropertyMappingFilter()

buildProposals

public ContentAssistProposals buildProposals(int position)
Prepares this visitor by prepopulating it with the necessary data that is required to properly gather the list of proposals based on the given caret position.

Parameters:
position - The position of the cursor within the JPQL query
Returns:
The proposals that are valid choices for the given position

buildRangeVariableDeclarationVisitor

protected AbstractContentAssistVisitor.RangeVariableDeclarationVisitor buildRangeVariableDeclarationVisitor()

buildResultVariableVisitor

protected AbstractContentAssistVisitor.ResultVariableVisitor buildResultVariableVisitor()

buildSelectClauseCompleteness

protected AbstractContentAssistVisitor.SelectClauseCompletenessVisitor buildSelectClauseCompleteness()

buildSelectClauseSelectStatementHelper

protected AbstractContentAssistVisitor.SelectClauseSelectStatementHelper buildSelectClauseSelectStatementHelper()

buildSimpleFromClauseSelectStatementHelper

protected AbstractContentAssistVisitor.SimpleFromClauseSelectStatementHelper buildSimpleFromClauseSelectStatementHelper()

buildSimpleGroupByClauseSelectStatementHelper

protected AbstractContentAssistVisitor.SimpleGroupByClauseSelectStatementHelper buildSimpleGroupByClauseSelectStatementHelper()

buildSimpleHavingClauseSelectStatementHelper

protected AbstractContentAssistVisitor.SimpleHavingClauseSelectStatementHelper buildSimpleHavingClauseSelectStatementHelper()

buildSimpleSelectClauseSelectStatementHelper

protected AbstractContentAssistVisitor.SimpleSelectClauseSelectStatementHelper buildSimpleSelectClauseSelectStatementHelper()

buildSimpleWhereClauseSelectStatementHelper

protected AbstractContentAssistVisitor.SimpleWhereClauseSelectStatementHelper buildSimpleWhereClauseSelectStatementHelper()

buildSubqueryVisitor

protected AbstractContentAssistVisitor.SubqueryVisitor buildSubqueryVisitor()

buildTrailingCompleteness

protected AbstractContentAssistVisitor.TrailingCompletenessVisitor buildTrailingCompleteness()

buildTripleEncapsulatedCollectionHelper

protected AbstractContentAssistVisitor.TripleEncapsulatedCollectionHelper buildTripleEncapsulatedCollectionHelper()

buildUpdateItemCollectionHelper

protected AbstractContentAssistVisitor.UpdateItemCollectionHelper buildUpdateItemCollectionHelper()

buildVisitParentVisitor

protected AbstractContentAssistVisitor.VisitParentVisitor buildVisitParentVisitor()

buildWhereClauseHelper

protected AbstractContentAssistVisitor.WhereClauseHelper buildWhereClauseHelper()

buildWhereClauseSelectStatementHelper

protected AbstractContentAssistVisitor.WhereClauseSelectStatementHelper buildWhereClauseSelectStatementHelper()

cast

protected AbstractContentAssistVisitor.SelectStatementHelper<AbstractSelectStatement,Expression> cast(AbstractContentAssistVisitor.SelectStatementHelper<? extends AbstractSelectStatement,? extends Expression> helper)

dispose

public void dispose()
Disposes this visitor.


entities

protected IterableIterator<IEntity> entities()
Returns the collection of possible abstract schema types.

Returns:
The entities defined in the persistence context

findExpressionPosition

protected int findExpressionPosition(CollectionExpression expression)

findRangeVariableDeclaration

protected RangeVariableDeclaration findRangeVariableDeclaration(UpdateClause expression)

getAcceptableType

protected IType getAcceptableType(Expression expression)
Determines the root IType that any type should be assignable. If the IType is Number, than any subclasses will be allowed.

Parameters:
expression - The Expression to visit, including its parent hierarchy until an Expression requires a certain IType
Returns:
The root IType allowed or null if anything is allowed

getAppendableExpressionVisitor

protected AbstractContentAssistVisitor.AppendableExpressionVisitor getAppendableExpressionVisitor()

getCollectionExpression

protected CollectionExpression getCollectionExpression(Expression expression)
Casts the given Expression to a CollectionExpression if it is actually an object of that type.

Parameters:
expression - The Expression to cast
Returns:
The given Expression if it is a CollectionExpression or null if it is any other object

getCollectionExpressionVisitor

protected AbstractContentAssistVisitor.CollectionExpressionVisitor getCollectionExpressionVisitor()
Returns the visitor that collects the CollectionExpression if it's been visited.

Returns:
The AbstractContentAssistVisitor.CollectionExpressionVisitor
See Also:
buildCollectionExpressionVisitor()

getCompletenessVisitor

protected AbstractContentAssistVisitor.CompletenessVisitor getCompletenessVisitor()

getCompoundExpressionHelper

protected AbstractContentAssistVisitor.CompoundExpressionHelper getCompoundExpressionHelper()

getConditionalExpressionCompletenessVisitor

protected AbstractContentAssistVisitor.CompletenessVisitor getConditionalExpressionCompletenessVisitor()

getConstructorCollectionHelper

protected AbstractContentAssistVisitor.ConstrutorCollectionHelper getConstructorCollectionHelper()

getCorrections

protected final java.util.Stack<java.lang.Integer> getCorrections()
Returns

Returns:

getDefaultMappingCollector

protected AbstractContentAssistVisitor.MappingCollector getDefaultMappingCollector()

getDeleteClauseHelper

protected AbstractContentAssistVisitor.ClauseHelper<DeleteClause> getDeleteClauseHelper()

getDoubleEncapsulatedCollectionHelper

protected AbstractContentAssistVisitor.DoubleEncapsulatedCollectionHelper getDoubleEncapsulatedCollectionHelper()

getEmbeddable

protected IEmbeddable getEmbeddable(IType type)
Retrieves the IEmbeddable for the given IType if one exists.

Parameters:
type - The IType that is mapped as an embeddable
Returns:
The given IType mapped as an embeddable; null if none exists or if it's mapped as a different managed type

getEntity

protected IEntity getEntity(IType type)
Retrieves the IEntity for the given IType if one exists.

Parameters:
type - The IType that is mapped as an entity
Returns:
The given IType mapped as an entity; null if none exists or if it's mapped as a different managed type

getEntityNamed

protected IEntity getEntityNamed(java.lang.String entityName)
Retrieves the entity with the given abstract schema name, which can also be the entity class name.

Parameters:
entityName - The abstract schema name, which can be different from the entity class name but by default, it's the same
Returns:
The managed type that has the given name or null if none could be found

getExpressionFactory

protected final ExpressionFactory getExpressionFactory(java.lang.String expressionFactoryId)
Retrieves the registered ExpressionFactory that was registered for the given unique identifier.

Parameters:
expressionFactoryId - The unique identifier of the ExpressionFactory to retrieve
Returns:
The ExpressionFactory mapped with the given unique identifier

getExpressionRegistry

protected ExpressionRegistry getExpressionRegistry()
Returns the registry containing the JPQLQueryBNFs and the ExpressionFactories that are used to properly parse a JPQL query.

Returns:
The registry containing the information related to the JPQL grammar

getExpressionTypeVisitor

protected AbstractContentAssistVisitor.AcceptableTypeVisitor getExpressionTypeVisitor()

getFromClauseCollectionHelper

protected AbstractContentAssistVisitor.FromClauseCollectionHelper getFromClauseCollectionHelper()

getFromClauseHelper

protected AbstractContentAssistVisitor.ClauseHelper<AbstractFromClause> getFromClauseHelper()

getFromClauseSelectStatementHelper

protected AbstractContentAssistVisitor.FromClauseSelectStatementHelper getFromClauseSelectStatementHelper()

getGrammar

protected JPQLGrammar getGrammar()
Returns the JPQL grammar that will be used to define how to parse a JPQL query.

Returns:
The grammar that was used to parse this Expression

getGroupByClauseCollectionHelper

protected AbstractContentAssistVisitor.GroupByClauseCollectionHelper getGroupByClauseCollectionHelper()

getGroupByClauseSelectStatementHelper

protected AbstractContentAssistVisitor.GroupByClauseSelectStatementHelper getGroupByClauseSelectStatementHelper()

getHavingClauseHelper

protected AbstractContentAssistVisitor.ClauseHelper<HavingClause> getHavingClauseHelper()

getHavingClauseSelectStatementHelper

protected AbstractContentAssistVisitor.HavingClauseSelectStatementHelper getHavingClauseSelectStatementHelper()

getHelper

protected final <T> T getHelper(java.lang.Class<T> helperClass)
Retrieves the helper associated with the given helper class.

Parameters:
helperClass - The Java class of the helper to retrieve
Returns:
The helper being requested

getIdentifierRole

protected IdentifierRole getIdentifierRole(java.lang.String identifier)
Retrieves the role of the given identifier. A role helps to describe the purpose of the identifier in a query.

Parameters:
identifier - The identifier for which its role is requested
Returns:
The role of the given identifier

getIdentifierVersion

protected JPAVersion getIdentifierVersion(java.lang.String identifier)
Retrieves the JPA version in which the identifier was first introduced.

Returns:
The version in which the identifier was introduced

getIncompleteCollectionExpressionVisitor

protected AbstractContentAssistVisitor.CompletenessVisitor getIncompleteCollectionExpressionVisitor()

getJoinCollectionHelper

protected AbstractContentAssistVisitor.JoinCollectionHelper getJoinCollectionHelper()

getJPAVersion

protected JPAVersion getJPAVersion()
Returns the version of the Java Persistence this entity for which it was defined.

Returns:
The version of the Java Persistence being used

getJPQLExpression

protected JPQLExpression getJPQLExpression()
Returns the parsed tree representation of the JPQL query.

Returns:
The parsed tree representation of the JPQL query

getManagedType

protected IManagedType getManagedType(IType type)
Retrieves the entity for the given type.

Parameters:
type - The type that is used as a managed type
Returns:
The managed type for the given type, if one exists, null otherwise

getMappedSuperclass

protected IMappedSuperclass getMappedSuperclass(IType type)
Retrieves the IMappedSuperclass for the given IType if one exists.

Parameters:
type - The IType that is mapped as an embeddable
Returns:
The given IType mapped as an mapped super class; null if none exists or if it's mapped as a different managed type

getMapping

protected IMapping getMapping(Expression expression)
Returns the IMapping for the field represented by the given Expression.

Parameters:
expression - The Expression representing a state field path expression or a collection-valued path expression
Returns:
Either the IMapping or null if none exists

getMappingCollectionFilter

protected Filter<IMapping> getMappingCollectionFilter()

getMappingFilterBuilder

protected AbstractContentAssistVisitor.MappingFilterBuilder getMappingFilterBuilder()

getMappingPropertyFilter

protected Filter<IMapping> getMappingPropertyFilter()

getNullExpressionVisitor

protected AbstractContentAssistVisitor.NullExpressionVisitor getNullExpressionVisitor()
Returns the visitor that collects the NullExpression if it's been visited.

Returns:
The AbstractContentAssistVisitor.NullExpressionVisitor
See Also:
buildNullExpressionVisitor()

getOrderByClauseCollectionHelper

protected AbstractContentAssistVisitor.OrderByClauseCollectionHelper getOrderByClauseCollectionHelper()

getOrderByClauseSelectStatementHelper

protected AbstractContentAssistVisitor.OrderByClauseSelectStatementHelper getOrderByClauseSelectStatementHelper()

getPosition

protected int getPosition(Expression expression)
Returns the position of the Expression within the parsed tree representation of the JPQL query. The beginning of the string representation is the position returned.

Parameters:
expression - The Expression to find its position in the tree based on the string representation
Returns:
The position within the parsed tree of the given Expression

getProposals

public DefaultContentAssistProposals getProposals()
Returns the object that contains the valid proposals based on the position of the cursor within the JPQL query.

Returns:
The list of proposals

getProvider

protected IManagedTypeProvider getProvider()
Retrieves the provider of managed types.

Returns:
The object that has access to the application's managed types.

getQuery

protected IQuery getQuery()
Returns the external form of the JPQL query.

Returns:
The external form of the JPQL query

getQueryBNF

protected JPQLQueryBNF getQueryBNF(java.lang.String queryBNFId)
Retrieves the BNF object that was registered for the given unique identifier.

Parameters:
queryBNFId - The unique identifier of the JPQLQueryBNF to retrieve
Returns:
The JPQLQueryBNF representing a section of the grammar

getQueryContext

protected JPQLQueryContext getQueryContext()
Returns the JPQLQueryContext that is used by this visitor.

Returns:
The JPQLQueryContext holding onto the JPQL query and the cached information

getQueryExpression

protected java.lang.String getQueryExpression()
Returns the string representation of the JPQL query.

Returns:
A non-null string representation of the JPQL query

getRangeVariableDeclarationVisitor

protected AbstractContentAssistVisitor.RangeVariableDeclarationVisitor getRangeVariableDeclarationVisitor()

getResolver

protected Resolver getResolver(Expression expression)
Creates or retrieved the cached Resolver for the given Expression. The Resolver can return the IType and ITypeDeclaration of the Expression and either the IManagedType or the IMapping.

Parameters:
expression - The Expression for which its Resolver will be retrieved
Returns:
Resolver for the given Expression

getResultVariableVisitor

protected AbstractContentAssistVisitor.ResultVariableVisitor getResultVariableVisitor()

getSelectClauseCompletenessVisitor

protected AbstractContentAssistVisitor.CompletenessVisitor getSelectClauseCompletenessVisitor()

getSelectClauseSelectStatementHelper

protected AbstractContentAssistVisitor.SelectClauseSelectStatementHelper getSelectClauseSelectStatementHelper()

getSimpleFromClauseSelectStatementHelper

protected AbstractContentAssistVisitor.SimpleFromClauseSelectStatementHelper getSimpleFromClauseSelectStatementHelper()

getSimpleGroupByClauseSelectStatementHelper

protected AbstractContentAssistVisitor.SimpleGroupByClauseSelectStatementHelper getSimpleGroupByClauseSelectStatementHelper()

getSimpleHavingClauseSelectStatementHelper

protected AbstractContentAssistVisitor.SimpleHavingClauseSelectStatementHelper getSimpleHavingClauseSelectStatementHelper()

getSimpleSelectClauseSelectStatementHelper

protected AbstractContentAssistVisitor.SimpleSelectClauseSelectStatementHelper getSimpleSelectClauseSelectStatementHelper()

getSimpleWhereClauseSelectStatementHelper

protected AbstractContentAssistVisitor.SimpleWhereClauseSelectStatementHelper getSimpleWhereClauseSelectStatementHelper()

getSubqueryVisitor

protected AbstractContentAssistVisitor.SubqueryVisitor getSubqueryVisitor()

getTripleEncapsulatedCollectionHelper

protected AbstractContentAssistVisitor.TripleEncapsulatedCollectionHelper getTripleEncapsulatedCollectionHelper()

getType

protected IType getType(java.lang.Class<?> type)
Retrieves the external type for the given Java type.

Parameters:
type - The Java type to wrap with an external form
Returns:
The external form of the given type

getType

protected IType getType(Expression expression)
Returns the IType of the given Expression.

Parameters:
expression - The Expression for which its type will be calculated
Returns:
Either the IType that was resolved by this Resolver or the IType for IType.UNRESOLVABLE_TYPE if it could not be resolved

getType

protected IType getType(java.lang.String typeName)
Retrieves the external class for the given fully qualified class name.

Parameters:
typeName - The fully qualified class name of the class to retrieve
Returns:
The external form of the class to retrieve

getTypeDeclaration

protected ITypeDeclaration getTypeDeclaration(Expression expression)
Returns the ITypeDeclaration of the field handled by this Resolver.

Parameters:
expression - The Expression for which its type declaration will be calculated
Returns:
Either the ITypeDeclaration that was resolved by this Resolver or the ITypeDeclaration for IType.UNRESOLVABLE_TYPE if it could not be resolved

getTypeHelper

protected TypeHelper getTypeHelper()
Returns a helper that gives access to the most common types.

Returns:
A helper containing a collection of methods related to IType

getTypeRepository

protected ITypeRepository getTypeRepository()
Returns the type repository for the application.

Returns:
The repository of ITypes

getUpdateItemCollectionHelper

protected AbstractContentAssistVisitor.UpdateItemCollectionHelper getUpdateItemCollectionHelper()

initialize

protected void initialize()
Initializes this visitor.


isAggregate

protected boolean isAggregate(java.lang.String identifier)
Determines whether the given JPQL identifier used in an aggregate expression; for instance AND.

Parameters:
identifier - The identifier to validate
Returns:
true if the given identifier is used in an aggregate expression; false otherwise

isAppendable

protected boolean isAppendable(Expression expression)

isAppendableToCollection

protected boolean isAppendableToCollection(Expression expression)

isClause

protected boolean isClause(java.lang.String identifier)
Determines whether the given JPQL identifier used in a clause; for instance SELECT.

Parameters:
identifier - The identifier to validate
Returns:
true if the given identifier is a clause; false otherwise

isComplete

protected boolean isComplete(Expression expression)

isCompoundable

protected boolean isCompoundable(Expression expression)

isCompoundFunction

protected boolean isCompoundFunction(java.lang.String identifier)
Determines whether the given JPQL identifier used in a compound expression; an example would be BETWEEN or MEMBER.

Parameters:
identifier - The identifier to validate
Returns:
true if the given identifier is used in a compound expression; false otherwise

isConditionalExpressionComplete

protected boolean isConditionalExpressionComplete(Expression expression)

isFunction

protected boolean isFunction(java.lang.String identifier)
Determines whether the given JPQL identifier is a function, an example would be AVG.

Parameters:
identifier - The identifier to validate
Returns:
true if the given identifier is a function; false otherwise

isGroupByComplete

protected boolean isGroupByComplete(Expression expression)

isInSubquery

protected boolean isInSubquery(Expression expression)
Determines whether the given Expression is in a subquery or in the top-level query.

Parameters:
expression - The Expression to visit its parent hierarchy
Returns:
true if the owning query is a subquery; false if it's the top-level query

isJoinFetchIdentifiable

protected abstract boolean isJoinFetchIdentifiable()
Determines whether a JOIN FETCH expression can be identified by with an identification variable or not.

Returns:
true if the expression can have an identification variable; false otherwise

isLocked

protected boolean isLocked(Expression expression)
Determines whether the given Expression has been set has the lock to prevent an infinite recursion.

Parameters:
expression - The Expression to check if it is locked
Returns:
true if the given Expression has been marked as locked; false otherwise

isNull

protected boolean isNull(Expression expression)
Determines whether the given Expression is the NullExpression.

Parameters:
expression - The Expression to visit
Returns:
true if the given Expression is NullExpression; false otherwise

isPositionWithin

protected boolean isPositionWithin(int position,
                                   int offset,
                                   java.lang.String word)
Determines whether the given position is within the given word.

Example: position=0, word="JPQL" => true Example: position=1, word="JPQL" => true Example: position=4, word="JPQL" => true Example: position=5, word="JPQL" => true Example: position=5, offset 2, (actual cursor position is 3), word="JPQL" => true

Parameters:
position - The position of the cursor
offset - The offset to adjust the position
word - The word to check if the cursor is positioned in it
Returns:
true if the given position is within the given word; false otherwise

isPositionWithin

protected boolean isPositionWithin(int position,
                                   java.lang.String word)
Determines whether the given position is within the given word.

Example: position=0, word="JPQL" => true Example: position=1, word="JPQL" => true Example: position=4, word="JPQL" => true Example: position=5, word="JPQL" => true

Parameters:
position - The position of the cursor
word - The word to check if the cursor is positioned in it
Returns:
true if the given position is within the given word; false otherwise

isPreviousClauseComplete

protected boolean isPreviousClauseComplete(AbstractSelectStatement expression,
                                           AbstractContentAssistVisitor.SelectStatementHelper<AbstractSelectStatement,Expression> helper)

isResultVariable

protected boolean isResultVariable(Expression expression)

isSelectExpressionComplete

protected boolean isSelectExpressionComplete(Expression expression)

isValid

protected boolean isValid(Expression expression,
                          JPQLQueryBNF queryBNF)
Determines whether the given Expression part is an expression of the given query BNF.

Parameters:
expression - The Expression to validate based on the query BNF
Returns:
true if the Expression part is a child of the given query BNF; false otherwise

isValid

protected boolean isValid(Expression expression,
                          java.lang.String queryBNFId)
Determines whether the given Expression part is an expression of the given query BNF.

Parameters:
expression - The Expression to validate based on the query BNF
queryBNFId -
Returns:
true if the Expression part is a child of the given query BNF; false otherwise

isValidProposal

protected boolean isValidProposal(java.lang.String proposal,
                                  java.lang.String word)
Determines whether the given proposal is a valid, which is based on the content of the given word. If the word is not an empty string, the proposal must start with the content of the word.

Parameters:
proposal - The proposal to validate
word - The word, which is what was parsed before the position of the cursor
Returns:
true if the proposal is valid; false otherwise

isValidVersion

protected boolean isValidVersion(java.lang.String identifier)
Determines whether the given JPQL identifier can be a valid proposal, i.e. if it's part of the grammar of the JPA version that was used to parse the JPQL query.

Parameters:
identifier - The JPQL identifier to validate
Returns:
true if the given identifier is part of the current JPA version or was defined in previous release; false otherwise

length

protected int length(Expression expression)
Returns the length of the string representation for the given Expression. The text containing any virtual text will be used.

Parameters:
expression - The Expression used to calculate the length of its string representation
Returns:
The length of the text, which may contain virtual text

prepare

public void prepare(QueryPosition queryPosition)
Prepares this visitor by pre-populating it with the necessary data that is required to properly gather the list of proposals based on the caret position.

Parameters:
queryPosition - Contains the position of the cursor within the parsed Expression

registerHelper

protected final <T> void registerHelper(java.lang.Class<T> helperClass,
                                        T helper)
Registers the given helper associated with the given helper class.

Parameters:
helperClass - The Java class of the helper to retrieve
helper - The helper being registered
See Also:
getHelper(Class)

visit

public void visit(AbsExpression expression)
Visits the AbsExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(AbstractSchemaName expression)
Visits the AbstractSchemaName expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(AdditionExpression expression)
Visits the AdditionExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(AllOrAnyExpression expression)
Visits the AllOrAnyExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(AndExpression expression)
Visits the AndExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(ArithmeticFactor expression)
Visits the ArithmeticFactor expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(AvgFunction expression)
Visits the AvgFunction expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(BadExpression expression)
Visits the BadExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(BetweenExpression expression)
Visits the BetweenExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(CaseExpression expression)
Visits the CaseExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(CoalesceExpression expression)
Visits the CoalesceExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(CollectionExpression expression)
Visits the CollectionExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(CollectionMemberDeclaration expression)
Visits the CollectionMemberDeclaration expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(CollectionMemberExpression expression)
Visits the CollectionMemberExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(CollectionValuedPathExpression expression)
Visits the CollectionValuedPathExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(ComparisonExpression expression)
Visits the ComparisonExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(ConcatExpression expression)
Visits the ConcatExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(ConstructorExpression expression)
Visits the ConstructorExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(CountFunction expression)
Visits the CountFunction expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(DateTime expression)
Visits the DateTime expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(DeleteClause expression)
Visits the DeleteClause expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(DeleteStatement expression)
Visits the DeleteStatement expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(DivisionExpression expression)
Visits the DivisionExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(EmptyCollectionComparisonExpression expression)
Visits the EmptyCollectionComparisonExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(EntityTypeLiteral expression)
Visits the EntityTypeLiteral expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(EntryExpression expression)
Visits the EntryExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(ExistsExpression expression)
Visits the ExistsExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

protected void visit(Expression expression)
Blindly visit the given Expression.

Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(FromClause expression)
Visits the FromClause expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(FunctionExpression expression)
Visits the FunctionExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(GroupByClause expression)
Visits the GroupByClause expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(HavingClause expression)
Visits the HavingClause expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(IdentificationVariable expression)
Visits the IdentificationVariable expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(IdentificationVariableDeclaration expression)
Visits the IdentificationVariableDeclaration expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(IndexExpression expression)
Visits the IndexExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(InExpression expression)
Visits the InExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(InputParameter expression)
Visits the InputParameter expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(Join expression)
Visits the Join expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(JPQLExpression expression)
Visits the JPQLExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(KeyExpression expression)
Visits the KeyExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(KeywordExpression expression)
Visits the KeywordExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(LengthExpression expression)
Visits the LengthExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(LikeExpression expression)
Visits the LikeExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(LocateExpression expression)
Visits the LocateExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(LowerExpression expression)
Visits the LowerExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(MaxFunction expression)
Visits the MaxFunction expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(MinFunction expression)
Visits the MinFunction expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(ModExpression expression)
Visits the ModExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(MultiplicationExpression expression)
Visits the MultiplicationExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(NotExpression expression)
Visits the NotExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(NullComparisonExpression expression)
Visits the NullComparisonExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(NullExpression expression)
Visits the NullExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(NullIfExpression expression)
Visits the NullIfExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(NumericLiteral expression)
Visits the NumericLiteral expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(ObjectExpression expression)
Visits the ObjectExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(OrderByClause expression)
Visits the OrderByClause expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(OrderByItem expression)
Visits the OrderByItem expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(OrExpression expression)
Visits the OrExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(RangeVariableDeclaration expression)
Visits the RangeVariableDeclaration expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(ResultVariable expression)
Visits the ResultVariable expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(SelectClause expression)
Visits the SelectClause expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(SelectStatement expression)
Visits the SelectStatement expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(SimpleFromClause expression)
Visits the SimpleFromClause expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(SimpleSelectClause expression)
Visits the SimpleSelectClause expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(SimpleSelectStatement expression)
Visits the SimpleSelectStatement expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(SizeExpression expression)
Visits the SizeExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(SqrtExpression expression)
Visits the SqrtExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(StateFieldPathExpression expression)
Visits the StateFieldPathExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(StringLiteral expression)
Visits the StringLiteral expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(SubExpression expression)
Visits the SubExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(SubstringExpression expression)
Visits the SubstringExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(SubtractionExpression expression)
Visits the SubtractionExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(SumFunction expression)
Visits the SumFunction expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(TreatExpression expression)
Visits the TreatExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(TrimExpression expression)
Visits the TrimExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(TypeExpression expression)
Visits the TypeExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The Expression to visit

visit

public void visit(UnknownExpression expression)
Visits the UnknownExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The UnknownExpression to visit

visit

public void visit(UpdateClause expression)
Visits the UpdateClause expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The UpdateClause to visit

visit

public void visit(UpdateItem expression)
Visits the UpdateItem expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The UpdateItem to visit

visit

public void visit(UpdateStatement expression)
Visits the UpdateStatement expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The UpdateStatement to visit

visit

public void visit(UpperExpression expression)
Visits the UpperExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The UpperExpression to visit

visit

public void visit(ValueExpression expression)
Visits the ValueExpression expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The ValueExpression to visit

visit

public void visit(WhenClause expression)
Visits the WhenClause expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The WhenClause to visit

visit

public void visit(WhereClause expression)
Visits the WhereClause expression.

Specified by:
visit in interface ExpressionVisitor
Overrides:
visit in class AnonymousExpressionVisitor
Parameters:
expression - The WhereClause to visit

visitAggregateFunction

protected void visitAggregateFunction(AggregateFunction expression)

visitArithmeticExpression

protected void visitArithmeticExpression(ArithmeticExpression expression)

visitClause

protected <T extends AbstractExpression> void visitClause(T expression,
                                                          java.lang.String identifier,
                                                          boolean hasSpaceAfterIdentifier,
                                                          AbstractContentAssistVisitor.ClauseHelper<T> helper)

visitCollectionExpression

protected <T extends Expression> void visitCollectionExpression(T expression,
                                                                java.lang.String identifier,
                                                                AbstractContentAssistVisitor.CollectionExpressionHelper<T> helper)
Adds the possible proposals for the given expression based on the location of the cursor and the content of the expression.

Parameters:
expression - The expression being visited
identifier -
helper -

visitCompoundableExpression

protected void visitCompoundableExpression(AbstractConditionalClause expression)

visitCompoundableExpression

protected void visitCompoundableExpression(AbstractContentAssistVisitor.CompoundExpressionHelper helper,
                                           int position,
                                           int length)

visitDeleteStatement

protected void visitDeleteStatement(DeleteStatement expression)

visitEncapsulatedExpression

protected void visitEncapsulatedExpression(AbstractEncapsulatedExpression expression,
                                           java.lang.String identifier,
                                           java.lang.String jpqlQueryBNF)
Adds the possible proposals for the given expression based on the location of the cursor and the content of the expression.

Parameters:
expression - The expression being visited
identifier -
jpqlQueryBNF -

visitLogicalExpression

protected void visitLogicalExpression(LogicalExpression expression,
                                      java.lang.String identifier)

visitParentVisitor

protected AbstractContentAssistVisitor.VisitParentVisitor visitParentVisitor()

visitPathExpression

protected void visitPathExpression(AbstractPathExpression expression)

visitPathExpression

protected void visitPathExpression(AbstractPathExpression expression,
                                   Filter<IMapping> helper)

visitSelectClause

protected void visitSelectClause(AbstractSelectClause expression)

visitSelectStatement

protected AbstractContentAssistVisitor.SelectStatementHelper<? extends AbstractSelectStatement,? extends Expression> visitSelectStatement(AbstractSelectStatement expression,
                                                                                                                                          int position,
                                                                                                                                          int[] length,
                                                                                                                                          AbstractContentAssistVisitor.SelectStatementHelper<AbstractSelectStatement,Expression> helper)

visitSelectStatement

protected void visitSelectStatement(AbstractSelectStatement expression,
                                    AbstractContentAssistVisitor.SelectStatementHelper<? extends AbstractSelectStatement,? extends Expression> helper)

visitSingleEncapsulatedExpression

protected void visitSingleEncapsulatedExpression(AbstractSingleEncapsulatedExpression expression,
                                                 AbstractContentAssistVisitor.IdentificationVariableType identificationVariableType)
Adds the possible proposals for the given expression based on the location of the cursor and the content of the expression.

Parameters:
expression - The expression being visited
identificationVariableType - The type of identification variables that can be added as possible proposals

visitSingleEncapsulatedExpression

protected void visitSingleEncapsulatedExpression(AbstractSingleEncapsulatedExpression expression,
                                                 AbstractContentAssistVisitor.IdentificationVariableType identificationVariableType,
                                                 java.lang.String... expressionIdentifiers)
Adds the possible proposals for the given expression based on the location of the cursor and the content of the expression.

Parameters:
expression - The expression being visited
identificationVariableType - The type of identification variables that can be added as possible proposals
expressionIdentifiers - Sometimes the expression may have more than one possible identifier, such as ALL, ANY and SOME are a possible JPQL identifier for a single expression (AllOrAnyExpression

visitUpdateStatement

protected void visitUpdateStatement(UpdateStatement expression)

whereClauseHelper

protected AbstractContentAssistVisitor.ClauseHelper<WhereClause> whereClauseHelper()

whereClauseSelectStatementHelper

protected AbstractContentAssistVisitor.WhereClauseSelectStatementHelper whereClauseSelectStatementHelper()

EclipseLink 2.4.1, build 'v20121003-ad44345' API Reference