public abstract class ParameterTypeVisitor extends AbstractTraverseParentVisitor
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.
| Modifier and Type | Field and Description |
|---|---|
protected Expression |
expression
The
Expression that will help to determine the type of the input parameter. |
protected boolean |
ignoreType
Used to ignore the type when calculating it.
|
protected InputParameter |
inputParameter
The
InputParameter for which its type will be searched by visiting the query. |
protected java.lang.Class<?> |
type
The well defined type, which does not have to be calculated.
|
protected java.lang.String |
typeName
The fully qualified name of the type.
|
protected java.util.Set<Expression> |
visitedExpressions
This is used to prevent an infinite loop.
|
| Modifier | Constructor and Description |
|---|---|
protected |
ParameterTypeVisitor()
Creates a new
ParameterTypeVisitor. |
| Modifier and Type | Method and Description |
|---|---|
void |
dispose()
Disposes this visitor.
|
abstract java.lang.Object |
getType()
Returns the type, if it can be determined, of the input parameter.
|
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(BetweenExpression expression)
Visits the
BetweenExpression expression. |
void |
visit(CaseExpression expression)
Visits the
CaseExpression expression. |
void |
visit(CoalesceExpression expression)
Visits the
CoalesceExpression 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(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(FunctionExpression expression)
Visits the
FunctionExpression expression. |
void |
visit(IdentificationVariable expression)
Visits the
IdentificationVariable 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(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(NullIfExpression expression)
Visits the
NullIfExpression expression. |
void |
visit(NumericLiteral expression)
Visits the
NumericLiteral expression. |
void |
visit(ObjectExpression expression)
Visits the
ObjectExpression expression. |
void |
visit(OrExpression expression)
Visits the
OrExpression 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(SubstringExpression expression)
Visits the
SubstringExpression expression. |
void |
visit(SubtractionExpression expression)
Visits the
SubtractionExpression expression. |
void |
visit(SumFunction expression)
Visits the
SumFunction expression. |
void |
visit(TrimExpression expression)
Visits the
TrimExpression expression. |
void |
visit(TypeExpression expression)
Visits the
TypeExpression expression. |
void |
visit(UpdateItem expression)
Visits the
UpdateItem 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. |
protected void |
visitCompoundExpression(CompoundExpression expression) |
protected void |
visitDoubleEncapsulatedExpression(AbstractDoubleEncapsulatedExpression expression) |
protected void |
visitDoubleExpressions(Expression expression,
Expression firstExpression,
Expression secondExpression,
boolean traverseParent) |
visit, visitprotected Expression expression
Expression that will help to determine the type of the input parameter.protected boolean ignoreType
protected InputParameter inputParameter
InputParameter for which its type will be searched by visiting the query.protected java.lang.Class<?> type
protected java.lang.String typeName
protected final java.util.Set<Expression> visitedExpressions
protected ParameterTypeVisitor()
ParameterTypeVisitor.public void dispose()
public abstract java.lang.Object getType()
Object if it can't be determinedpublic void visit(AbsExpression expression)
AbsExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(AbstractSchemaName expression)
AbstractSchemaName expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(AdditionExpression expression)
AdditionExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(AllOrAnyExpression expression)
AllOrAnyExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(AndExpression expression)
AndExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(ArithmeticFactor expression)
ArithmeticFactor expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(AvgFunction expression)
AvgFunction expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(BetweenExpression expression)
BetweenExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(CaseExpression expression)
CaseExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(CoalesceExpression expression)
CoalesceExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(CollectionMemberExpression expression)
CollectionMemberExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(CollectionValuedPathExpression expression)
CollectionValuedPathExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(ComparisonExpression expression)
ComparisonExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(ConcatExpression expression)
ConcatExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(ConstructorExpression expression)
ConstructorExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(CountFunction expression)
CountFunction expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(DateTime expression)
DateTime expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(DivisionExpression expression)
DivisionExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(EmptyCollectionComparisonExpression expression)
EmptyCollectionComparisonExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(EntityTypeLiteral expression)
EntityTypeLiteral expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(EntryExpression expression)
EntryExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(ExistsExpression expression)
ExistsExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(FunctionExpression expression)
FunctionExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(IdentificationVariable expression)
IdentificationVariable expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(IndexExpression expression)
IndexExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(InExpression expression)
InExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(InputParameter expression)
InputParameter expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(KeyExpression expression)
KeyExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(KeywordExpression expression)
KeywordExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(LengthExpression expression)
LengthExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(LikeExpression expression)
LikeExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(LocateExpression expression)
LocateExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(LowerExpression expression)
LowerExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(MaxFunction expression)
MaxFunction expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(MinFunction expression)
MinFunction expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(ModExpression expression)
ModExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(MultiplicationExpression expression)
MultiplicationExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(NotExpression expression)
NotExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(NullComparisonExpression expression)
NullComparisonExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(NullIfExpression expression)
NullIfExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(NumericLiteral expression)
NumericLiteral expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(ObjectExpression expression)
ObjectExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(OrExpression expression)
OrExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(SizeExpression expression)
SizeExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(SqrtExpression expression)
SqrtExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(StateFieldPathExpression expression)
StateFieldPathExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(StringLiteral expression)
StringLiteral expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(SubstringExpression expression)
SubstringExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(SubtractionExpression expression)
SubtractionExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(SumFunction expression)
SumFunction expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(TrimExpression expression)
TrimExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(TypeExpression expression)
TypeExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The Expression to visitpublic void visit(UpdateItem expression)
UpdateItem expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The UpdateItem to visitpublic void visit(UpperExpression expression)
UpperExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The UpperExpression to visitpublic void visit(ValueExpression expression)
ValueExpression expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The ValueExpression to visitpublic void visit(WhenClause expression)
WhenClause expression.visit in interface ExpressionVisitorvisit in class AnonymousExpressionVisitorexpression - The WhenClause to visitprotected void visitCompoundExpression(CompoundExpression expression)
protected void visitDoubleEncapsulatedExpression(AbstractDoubleEncapsulatedExpression expression)
protected void visitDoubleExpressions(Expression expression, Expression firstExpression, Expression secondExpression, boolean traverseParent)