Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle TopLink
11g Release 1 (11.1.1)

E28847-01


org.eclipse.persistence.jpa.internal.jpql
Class SemanticValidator

java.lang.Object
  extended by org.eclipse.persistence.jpa.internal.jpql.parser.AnonymousExpressionVisitor
      extended by org.eclipse.persistence.jpa.internal.jpql.AbstractVisitor
          extended by org.eclipse.persistence.jpa.internal.jpql.AbstractValidator
              extended by org.eclipse.persistence.jpa.internal.jpql.SemanticValidator

All Implemented Interfaces:
ExpressionVisitor

public final class SemanticValidator
extends AbstractValidator

This visitor gathers the problems and warnings found in a query by validating its semantic. The grammar is not validating here.

For instance, the function AVG accepts a state field path. The property it represents has to be of numeric type. AVG(e.name) is parsable but is not semantically valid because the type of name is a string (the property signature is: "private String name").

Since:
2.3
Version:
2.3.1
Author:
Pascal Filion
See Also:
GrammarValidator

Nested Class Summary
private  class SemanticValidator.BooleanTypeValidator
          This visitor validates expression that is a boolean literal to make sure the type is a Boolean.
private static class SemanticValidator.CollectionValuedPathExpressionVisitor
           
private  class SemanticValidator.ItemExpression
          This visitor validates expression that is a string literal to make sure the type is an Enum.
private  class SemanticValidator.NullValueVisitor
           
private  class SemanticValidator.NumericTypeValidator
          This visitor validates expression that is a numeric literal to make sure the type is an instance of Number.
private static class SemanticValidator.StateFieldPathExpressionVisitor
          This visitor is meant to retrieve an SemanticValidator.StateFieldPathExpressionVisitor if the visited Expression is that object.
private  class SemanticValidator.StringTypeValidator
          This visitor validates that the Expression is a string primary and to make sure the type is String.
private  class SemanticValidator.TypeValidator
          The basic validator for validating the type of an Expression.
private  class SemanticValidator.UpdateClauseAbstractSchemaNameFinder
           
private static class SemanticValidator.VirtualIdentificationVariableFinder
           

 

Nested classes/interfaces inherited from class org.eclipse.persistence.jpa.internal.jpql.AbstractValidator
AbstractValidator.BypassChildCollectionExpressionVisitor, AbstractValidator.BypassParentSubExpressionVisitor, AbstractValidator.ExpressionValidator, AbstractValidator.OwningClauseVisitor

 

Field Summary
private  SemanticValidator.CollectionValuedPathExpressionVisitor collectionValuedPathExpressionVisitor
          This visitor is responsible to retrieve the visited Expression if it is a CollectionValuedPathExpression.
private  SemanticValidator.NullValueVisitor nullValueVisitor
          This validator determines whether the Expression visited represents Expression.NULL.
private  boolean registerIdentificationVariable
          This flag is used to register the IdentificationVariables that are used throughout the query (top-level query and subqueries), except the identification variables defining an abstract schema name or a collection-valued path expression.
private  SemanticValidator.StateFieldPathExpressionVisitor stateFieldPathExpressionVisitor
          This visitor is responsible to retrieve the visited Expression if it is a StateFieldPathExpression.
private  SemanticValidator.UpdateClauseAbstractSchemaNameFinder updateClauseAbstractSchemaNameFinder
          This finder is responsible to retrieve the abstract schema name from the UPDATE range declaration expression.
private  java.util.List<IdentificationVariable> usedIdentificationVariables
          The IdentificationVariables that are used throughout the query (top-level query and subqueries), except the identification variables defining an abstract schema name or a collection-valued path expression.
private  java.util.Map<java.lang.Class<? extends SemanticValidator.TypeValidator>,SemanticValidator.TypeValidator> validators
          The TypeVlidators mapped to their Java class.
private  SemanticValidator.VirtualIdentificationVariableFinder virtualIdentificationVariableFinder
          This finder is responsible to retrieve the virtual identification variable from the UPDATE range declaration since it is optional.

 

Fields inherited from class org.eclipse.persistence.jpa.internal.jpql.AbstractVisitor
queryContext

 

Constructor Summary
SemanticValidator(JPQLQueryContext queryContext)
          Creates a new SemanticValidator.

 

Method Summary
private  void addIdentificationVariable(IdentificationVariable identificationVariable, java.util.Map<java.lang.String,java.util.List<IdentificationVariable>> identificationVariables)
           
private  boolean areConstructorParametersEquivalent(ITypeDeclaration[] types1, IType[] types2)
           
private  Resolver buildStateFieldResolver(Resolver parentResolver, java.lang.String path)
           
private  void collectAllDeclarationIdentificationVariables(java.util.Map<java.lang.String,java.util.List<IdentificationVariable>> identificationVariables)
           
private  void collectDeclarationIdentificationVariables(JPQLQueryContext queryContext, java.util.Map<java.lang.String,java.util.List<IdentificationVariable>> identificationVariables)
           
private  CollectionValuedPathExpression collectionValuedPathExpression(Expression expression)
           
private  SemanticValidator.CollectionValuedPathExpressionVisitor collectionValuedPathExpressionVisitor()
           
 void dispose()
          Disposes of the internal data.
private  AbstractSchemaName findAbstractSchemaName(UpdateItem expression)
           
private  IdentificationVariable findVirtualIdentificationVariable(AbstractSchemaName expression)
           
protected  void initialize()
          Initializes this class.
private  boolean isBooleanType(Expression expression)
          Determines whether the given Expression is of the correct type based on these rules: The Expression returns a boolean value;
private  boolean isComparisonEquivalentType(Expression expression1, Expression expression2)
           
private  boolean isEquivalentBetweenType(Expression expression1, Expression expression2)
           
private  boolean isIntegralType(Expression expression)
          Determines whether the given Expression is of the correct type based on these rules: The Expression's type is an integral type (long or integer).
private  boolean isNullValue(Expression expression)
           
private  boolean isNumericType(Expression expression)
          Determines whether the given Expression is of the correct type based on these rules: The Expression returns a numeric value;
private  boolean isStringType(Expression expression)
          Determines whether the given Expression is of the correct type based on these rules: The Expression's type is a string type.
private  boolean isValid(Expression expression, java.lang.Class<? extends SemanticValidator.TypeValidator> validatorClass)
          Determines whether the given Expression is of the correct type by using the SemanticValidator.BooleanTypeValidator.
private  SemanticValidator.NullValueVisitor nullValueVisitor()
           
private  StateFieldPathExpression stateFieldPathExpression(Expression expression)
           
private  SemanticValidator.StateFieldPathExpressionVisitor stateFieldPathExpressionVisitor()
           
private  SemanticValidator.UpdateClauseAbstractSchemaNameFinder updateClauseAbstractSchemaNameFinder()
           
private  void validateAggregateFunction(AggregateFunction expression)
           
private  void validateBooleanType(Expression expression, java.lang.String messageKey)
          Determines whether the given Expression is of the correct type based on these rules: The Expression returns a boolean value; The Expression's type is a boolean type.
private  void validateCollectionValuedPathExpression(Expression expression, boolean collectionTypeOnly)
           
private  void validateIdentificationVariables()
           
private  void validateIntegralType(Expression expression, java.lang.String messageKey)
          Determines whether the given Expression is of the correct type based on these rules: The Expression returns a integral value; The Expression's type is an integral type (long or integer).
private  void validateMapIdentificationVariable(EncapsulatedIdentificationVariableExpression expression)
           
private  void validateNumericType(Expression expression, java.lang.String messageKey)
          Determines whether the given Expression is of the correct type based on these rules: The Expression returns a numeric value; The Expression's type is an numeric type.
private  boolean validateStateFieldPathExpression(StateFieldPathExpression expression, boolean associationFieldValid)
          Validates the given StateFieldPathExpression.
private  void validateStringType(Expression expression, java.lang.String messageKey)
          Determines whether the given Expression is of the correct type based on these rules: The Expression returns a String value; The Expression's type is a String type.
private  void validateUpdateItemTypes(UpdateItem expression, IType type)
           
private  SemanticValidator.TypeValidator validator(java.lang.Class<? extends SemanticValidator.TypeValidator> validatorClass)
           
private  SemanticValidator.VirtualIdentificationVariableFinder virtualIdentificationVariableFinder()
           
 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.
 void visit(FromClause expression)
          Visits the FromClause expression.
 void visit(FuncExpression expression)
          Visits the FuncExpression 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(JoinFetch expression)
          Visits the FetchJoin 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.

 

Methods inherited from class org.eclipse.persistence.jpa.internal.jpql.AbstractValidator
addProblem, addProblem, addProblem, buildExpressionValidator, bypassChildCollectionExpressionVisitor, bypassParentSubExpressionVisitor, children, expressionValidator, internalOrderByItemBNFValidator, isOwnedByConditionalClause, isOwnedByFromClause, isOwnedBySubFromClause, isValid, isValidJavaIdentifier, isValidWithChildCollectionBypass, isValidWithFindQueryBNF, isValidWithParentSubExpressionBypass, length, owningClauseVisitor, position, setProblems, visit

 

Methods inherited from class org.eclipse.persistence.jpa.internal.jpql.AbstractVisitor
collectionExpression, embeddable, entity, getJPAVersion, getManagedType, getManagedType, getMapping, getProvider, getQuery, getQueryExpression, getResolver, getType, getType, getType, getTypeDeclaration, getTypeHelper, getTypeRepository, isEclipseLinkPlatform, isEmbeddable, isEntity, isJavaPlatform, isMappedSuperclass, isNull, mappedSuperclass

 

Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

 

Field Detail

collectionValuedPathExpressionVisitor

private SemanticValidator.CollectionValuedPathExpressionVisitor collectionValuedPathExpressionVisitor
This visitor is responsible to retrieve the visited Expression if it is a CollectionValuedPathExpression.

nullValueVisitor

private SemanticValidator.NullValueVisitor nullValueVisitor
This validator determines whether the Expression visited represents Expression.NULL.

registerIdentificationVariable

private boolean registerIdentificationVariable
This flag is used to register the IdentificationVariables that are used throughout the query (top-level query and subqueries), except the identification variables defining an abstract schema name or a collection-valued path expression.

stateFieldPathExpressionVisitor

private SemanticValidator.StateFieldPathExpressionVisitor stateFieldPathExpressionVisitor
This visitor is responsible to retrieve the visited Expression if it is a StateFieldPathExpression.

updateClauseAbstractSchemaNameFinder

private SemanticValidator.UpdateClauseAbstractSchemaNameFinder updateClauseAbstractSchemaNameFinder
This finder is responsible to retrieve the abstract schema name from the UPDATE range declaration expression.

usedIdentificationVariables

private java.util.List<IdentificationVariable> usedIdentificationVariables
The IdentificationVariables that are used throughout the query (top-level query and subqueries), except the identification variables defining an abstract schema name or a collection-valued path expression.

validators

private java.util.Map<java.lang.Class<? extends SemanticValidator.TypeValidator>,SemanticValidator.TypeValidator> validators
The TypeVlidators mapped to their Java class. Those validators validate any Expression by making sure its type matches the desired type.

virtualIdentificationVariableFinder

private SemanticValidator.VirtualIdentificationVariableFinder virtualIdentificationVariableFinder
This finder is responsible to retrieve the virtual identification variable from the UPDATE range declaration since it is optional.

Constructor Detail

SemanticValidator

public SemanticValidator(JPQLQueryContext queryContext)
Creates a new SemanticValidator.
Parameters:
queryContext - The context used to query information about the query

Method Detail

addIdentificationVariable

private void addIdentificationVariable(IdentificationVariable identificationVariable,
                                       java.util.Map<java.lang.String,java.util.List<IdentificationVariable>> identificationVariables)

areConstructorParametersEquivalent

private boolean areConstructorParametersEquivalent(ITypeDeclaration[] types1,
                                                   IType[] types2)

buildStateFieldResolver

private Resolver buildStateFieldResolver(Resolver parentResolver,
                                         java.lang.String path)

collectAllDeclarationIdentificationVariables

private void collectAllDeclarationIdentificationVariables(java.util.Map<java.lang.String,java.util.List<IdentificationVariable>> identificationVariables)

collectDeclarationIdentificationVariables

private void collectDeclarationIdentificationVariables(JPQLQueryContext queryContext,
                                                       java.util.Map<java.lang.String,java.util.List<IdentificationVariable>> identificationVariables)

collectionValuedPathExpression

private CollectionValuedPathExpression collectionValuedPathExpression(Expression expression)

collectionValuedPathExpressionVisitor

private SemanticValidator.CollectionValuedPathExpressionVisitor collectionValuedPathExpressionVisitor()

dispose

public void dispose()
Disposes of the internal data.
Overrides:
dispose in class AbstractValidator

findAbstractSchemaName

private AbstractSchemaName findAbstractSchemaName(UpdateItem expression)

findVirtualIdentificationVariable

private IdentificationVariable findVirtualIdentificationVariable(AbstractSchemaName expression)

initialize

protected void initialize()
Initializes this class.
Overrides:
initialize in class AbstractValidator

isBooleanType

private boolean isBooleanType(Expression expression)
Determines whether the given Expression is of the correct type based on these rules:
Parameters:
expression - The Expression to validate
Returns:
true if the given Expression passes the checks; false otherwise

isComparisonEquivalentType

private boolean isComparisonEquivalentType(Expression expression1,
                                           Expression expression2)

isEquivalentBetweenType

private boolean isEquivalentBetweenType(Expression expression1,
                                        Expression expression2)

isIntegralType

private boolean isIntegralType(Expression expression)
Determines whether the given Expression is of the correct type based on these rules:
Parameters:
expression - The Expression to validate
Returns:
true if the given Expression passes the checks; false otherwise

isNullValue

private boolean isNullValue(Expression expression)

isNumericType

private boolean isNumericType(Expression expression)
Determines whether the given Expression is of the correct type based on these rules:
Parameters:
expression - The Expression to validate
Returns:
true if the given Expression passes the checks; false otherwise

isStringType

private boolean isStringType(Expression expression)
Determines whether the given Expression is of the correct type based on these rules:
Parameters:
expression - The Expression to validate
Returns:
true if the given Expression passes the checks; false otherwise

isValid

private boolean isValid(Expression expression,
                        java.lang.Class<? extends SemanticValidator.TypeValidator> validatorClass)
Determines whether the given Expression is of the correct type by using the SemanticValidator.BooleanTypeValidator.
Parameters:
expression - The Expression to validate
validatorClass - The Java class of the SemanticValidator.BooleanTypeValidator that will determine if the given Expression has the right type
Returns:
true if the given Expression passes the checks; false otherwise

nullValueVisitor

private SemanticValidator.NullValueVisitor nullValueVisitor()

stateFieldPathExpression

private StateFieldPathExpression stateFieldPathExpression(Expression expression)

stateFieldPathExpressionVisitor

private SemanticValidator.StateFieldPathExpressionVisitor stateFieldPathExpressionVisitor()

updateClauseAbstractSchemaNameFinder

private SemanticValidator.UpdateClauseAbstractSchemaNameFinder updateClauseAbstractSchemaNameFinder()

validateAggregateFunction

private void validateAggregateFunction(AggregateFunction expression)

validateBooleanType

private void validateBooleanType(Expression expression,
                                 java.lang.String messageKey)
Determines whether the given Expression is of the correct type based on these rules:
Parameters:
expression - The Expression to validate
messageKey - The key used to retrieve the localized message describing the problem

validateCollectionValuedPathExpression

private void validateCollectionValuedPathExpression(Expression expression,
                                                    boolean collectionTypeOnly)

validateIdentificationVariables

private void validateIdentificationVariables()

validateIntegralType

private void validateIntegralType(Expression expression,
                                  java.lang.String messageKey)
Determines whether the given Expression is of the correct type based on these rules:
Parameters:
expression - The Expression to validate
messageKey - The key used to retrieve the localized message describing the problem

validateMapIdentificationVariable

private void validateMapIdentificationVariable(EncapsulatedIdentificationVariableExpression expression)

validateNumericType

private void validateNumericType(Expression expression,
                                 java.lang.String messageKey)
Determines whether the given Expression is of the correct type based on these rules:
Parameters:
expression - The Expression to validate
messageKey - The key used to retrieve the localized message describing the problem

validateStateFieldPathExpression

private boolean validateStateFieldPathExpression(StateFieldPathExpression expression,
                                                 boolean associationFieldValid)
Validates the given StateFieldPathExpression.
Parameters:
expression - The StateFieldPathExpression the validate
associationFieldValid - Determines whether an association field is a valid type
Returns:
true if the path expression is a state field path expression; false if it's actually a fully qualified enum constant.

validateStringType

private void validateStringType(Expression expression,
                                java.lang.String messageKey)
Determines whether the given Expression is of the correct type based on these rules:
Parameters:
expression - The Expression to validate
messageKey - The key used to retrieve the localized message describing the problem

validateUpdateItemTypes

private void validateUpdateItemTypes(UpdateItem expression,
                                     IType type)

validator

private SemanticValidator.TypeValidator validator(java.lang.Class<? extends SemanticValidator.TypeValidator> validatorClass)

virtualIdentificationVariableFinder

private SemanticValidator.VirtualIdentificationVariableFinder virtualIdentificationVariableFinder()

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

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(FuncExpression expression)
Visits the FuncExpression 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(JoinFetch expression)
Visits the FetchJoin 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 Expression 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 Expression 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 Expression 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 Expression 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 Expression 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 Expression 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 Expression 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 Expression to visit

Skip navigation links

Copyright © 1998, 2012, Oracle. All Rights Reserved.