public abstract class SimpleQueryExpressionVisitor extends Object implements QueryExpressionVisitor
QueryExpressionVisitor
works as base class for simple visitors that need not to explicitly
differentiate between most expression types.Constructor and Description |
---|
SimpleQueryExpressionVisitor() |
Modifier and Type | Method and Description |
---|---|
protected abstract <ExpressionType> |
finishNode(NodeExpression<ExpressionType> node)
Implement this method to define the end of generic visits to non leaf nodes.
|
<NumericalType extends Number> |
finishVisit(Addition<NumericalType> expression) |
void |
finishVisit(Conjunction expression) |
void |
finishVisit(Disjunction expression) |
<NumericalType extends Number> |
finishVisit(Division<NumericalType> expression) |
<ComparableType> |
finishVisit(Equality<ComparableType> expression) |
void |
finishVisit(ExpressionMatches expression) |
<Type extends Comparable<Type>> |
finishVisit(FieldOrder<Type> expression) |
<ComparableType extends Comparable<ComparableType>> |
finishVisit(GreaterEqual<ComparableType> expression) |
<ComparableType extends Comparable<ComparableType>> |
finishVisit(GreaterThan<ComparableType> expression) |
<ElementType,CollectionType extends Collection<ElementType>> |
finishVisit(In<ElementType,CollectionType> expression) |
<Type1,Type2> |
finishVisit(Inequality<Type1,Type2> expression) |
<ElementType,CollectionType extends Collection<ElementType>> |
finishVisit(IsEmpty<ElementType,CollectionType> expression) |
<ElementType,CollectionType extends Collection<ElementType>> |
finishVisit(IsNotEmpty<ElementType,CollectionType> expression) |
<Type> void |
finishVisit(IsNotNull<Type> expression) |
<Type> void |
finishVisit(IsNull<Type> expression) |
<ComparableType extends Comparable<ComparableType>> |
finishVisit(LessEqual<ComparableType> expression) |
<ComparableType extends Comparable<ComparableType>> |
finishVisit(LessThan<ComparableType> expression) |
<ElementType,CollectionType extends Collection<ElementType>> |
finishVisit(MemberOf<ElementType,CollectionType> expression) |
<NumericalType extends Number> |
finishVisit(Multiplication<NumericalType> expression) |
void |
finishVisit(Negation expression) |
<ElementType,CollectionType extends Collection<ElementType>> |
finishVisit(NotContained<ElementType,CollectionType> expression) |
<ElementType,CollectionType extends Collection<ElementType>> |
finishVisit(NotMemberOf<ElementType,CollectionType> expression) |
void |
finishVisit(OrderByClause expression) |
void |
finishVisit(SelectClause fieldList) |
void |
finishVisit(SelectQuery expression) |
<NumericalType extends Number> |
finishVisit(Subtraction<NumericalType> expression) |
protected abstract <ExpressionType> |
startNode(NodeExpression<ExpressionType> node)
Implement this method to define the start of generic visits to non leaf nodes.
|
<NumericalType extends Number> |
startVisit(Addition<NumericalType> expression) |
void |
startVisit(Conjunction expression) |
void |
startVisit(Disjunction expression) |
<NumericalType extends Number> |
startVisit(Division<NumericalType> expression) |
<ComparableType> |
startVisit(Equality<ComparableType> expression) |
void |
startVisit(ExpressionMatches expression) |
<Type extends Comparable<Type>> |
startVisit(FieldOrder<Type> expression) |
<ComparableType extends Comparable<ComparableType>> |
startVisit(GreaterEqual<ComparableType> expression) |
<ComparableType extends Comparable<ComparableType>> |
startVisit(GreaterThan<ComparableType> expression) |
<ElementType,CollectionType extends Collection<ElementType>> |
startVisit(In<ElementType,CollectionType> expression) |
<Type1,Type2> |
startVisit(Inequality<Type1,Type2> expression) |
<ElementType,CollectionType extends Collection<ElementType>> |
startVisit(IsEmpty<ElementType,CollectionType> expression) |
<ElementType,CollectionType extends Collection<ElementType>> |
startVisit(IsNotEmpty<ElementType,CollectionType> expression) |
<Type> void |
startVisit(IsNotNull<Type> expression) |
<Type> void |
startVisit(IsNull<Type> expression) |
<ComparableType extends Comparable<ComparableType>> |
startVisit(LessEqual<ComparableType> expression) |
<ComparableType extends Comparable<ComparableType>> |
startVisit(LessThan<ComparableType> expression) |
<ElementType,CollectionType extends Collection<ElementType>> |
startVisit(MemberOf<ElementType,CollectionType> expression) |
<NumericalType extends Number> |
startVisit(Multiplication<NumericalType> expression) |
void |
startVisit(Negation expression) |
<ElementType,CollectionType extends Collection<ElementType>> |
startVisit(NotContained<ElementType,CollectionType> expression) |
<ElementType,CollectionType extends Collection<ElementType>> |
startVisit(NotMemberOf<ElementType,CollectionType> expression) |
void |
startVisit(OrderByClause expression) |
void |
startVisit(SelectClause fieldList) |
void |
startVisit(SelectQuery expression) |
<NumericalType extends Number> |
startVisit(Subtraction<NumericalType> expression) |
void |
visit(BooleanLiteral expression) |
<ExpressionType> |
visit(FieldReference<ExpressionType> expression) |
<Type> void |
visit(ParameterDefinition<Type> expression) |
<Type> void |
visit(ParameterReference<Type> expression) |
void |
visit(TableReference expression) |
<Type> void |
visit(TemplateParameter<Type> expression) |
protected abstract <ExpressionType> |
visitLeaf(LeafExpression<ExpressionType> leaf)
Implement this method to define generic visits of leafs.
|
protected abstract <ExpressionType> void visitLeaf(LeafExpression<ExpressionType> leaf)
leaf
- the leaf node visitedprotected abstract <ExpressionType> void startNode(NodeExpression<ExpressionType> node)
node
- the non lead node visitedprotected abstract <ExpressionType> void finishNode(NodeExpression<ExpressionType> node)
node
- the non lead node visitedpublic <Type> void visit(ParameterDefinition<Type> expression)
visit
in interface QueryExpressionVisitor
public <Type> void visit(ParameterReference<Type> expression)
visit
in interface QueryExpressionVisitor
public void visit(TableReference expression)
visit
in interface QueryExpressionVisitor
public <ExpressionType> void visit(FieldReference<ExpressionType> expression)
visit
in interface QueryExpressionVisitor
public void visit(BooleanLiteral expression)
visit
in interface QueryExpressionVisitor
public <Type> void visit(TemplateParameter<Type> expression)
visit
in interface QueryExpressionVisitor
public void startVisit(SelectQuery expression)
startVisit
in interface QueryExpressionVisitor
public void finishVisit(SelectQuery expression)
finishVisit
in interface QueryExpressionVisitor
public <ElementType,CollectionType extends Collection<ElementType>> void startVisit(MemberOf<ElementType,CollectionType> expression)
startVisit
in interface QueryExpressionVisitor
public <ElementType,CollectionType extends Collection<ElementType>> void finishVisit(MemberOf<ElementType,CollectionType> expression)
finishVisit
in interface QueryExpressionVisitor
public <ComparableType> void startVisit(Equality<ComparableType> expression)
startVisit
in interface QueryExpressionVisitor
public <ComparableType> void finishVisit(Equality<ComparableType> expression)
finishVisit
in interface QueryExpressionVisitor
public void startVisit(Conjunction expression)
startVisit
in interface QueryExpressionVisitor
public void finishVisit(Conjunction expression)
finishVisit
in interface QueryExpressionVisitor
public <NumericalType extends Number> void startVisit(Subtraction<NumericalType> expression)
startVisit
in interface QueryExpressionVisitor
public <NumericalType extends Number> void finishVisit(Subtraction<NumericalType> expression)
finishVisit
in interface QueryExpressionVisitor
public <NumericalType extends Number> void startVisit(Division<NumericalType> expression)
startVisit
in interface QueryExpressionVisitor
public <NumericalType extends Number> void finishVisit(Division<NumericalType> expression)
finishVisit
in interface QueryExpressionVisitor
public void startVisit(Disjunction expression)
startVisit
in interface QueryExpressionVisitor
public void finishVisit(Disjunction expression)
finishVisit
in interface QueryExpressionVisitor
public <NumericalType extends Number> void startVisit(Multiplication<NumericalType> expression)
startVisit
in interface QueryExpressionVisitor
public <NumericalType extends Number> void finishVisit(Multiplication<NumericalType> expression)
finishVisit
in interface QueryExpressionVisitor
public <NumericalType extends Number> void startVisit(Addition<NumericalType> expression)
startVisit
in interface QueryExpressionVisitor
public <NumericalType extends Number> void finishVisit(Addition<NumericalType> expression)
finishVisit
in interface QueryExpressionVisitor
public void startVisit(ExpressionMatches expression)
startVisit
in interface QueryExpressionVisitor
public void finishVisit(ExpressionMatches expression)
finishVisit
in interface QueryExpressionVisitor
public <ComparableType extends Comparable<ComparableType>> void startVisit(GreaterEqual<ComparableType> expression)
startVisit
in interface QueryExpressionVisitor
public <ComparableType extends Comparable<ComparableType>> void finishVisit(GreaterEqual<ComparableType> expression)
finishVisit
in interface QueryExpressionVisitor
public <ComparableType extends Comparable<ComparableType>> void startVisit(GreaterThan<ComparableType> expression)
startVisit
in interface QueryExpressionVisitor
public <ComparableType extends Comparable<ComparableType>> void finishVisit(GreaterThan<ComparableType> expression)
finishVisit
in interface QueryExpressionVisitor
public <ComparableType extends Comparable<ComparableType>> void startVisit(LessEqual<ComparableType> expression)
startVisit
in interface QueryExpressionVisitor
public <ComparableType extends Comparable<ComparableType>> void finishVisit(LessEqual<ComparableType> expression)
finishVisit
in interface QueryExpressionVisitor
public <ComparableType extends Comparable<ComparableType>> void startVisit(LessThan<ComparableType> expression)
startVisit
in interface QueryExpressionVisitor
public <ComparableType extends Comparable<ComparableType>> void finishVisit(LessThan<ComparableType> expression)
finishVisit
in interface QueryExpressionVisitor
public <Type1,Type2> void startVisit(Inequality<Type1,Type2> expression)
startVisit
in interface QueryExpressionVisitor
public <Type1,Type2> void finishVisit(Inequality<Type1,Type2> expression)
finishVisit
in interface QueryExpressionVisitor
public <ElementType,CollectionType extends Collection<ElementType>> void startVisit(NotMemberOf<ElementType,CollectionType> expression)
startVisit
in interface QueryExpressionVisitor
public <ElementType,CollectionType extends Collection<ElementType>> void finishVisit(NotMemberOf<ElementType,CollectionType> expression)
finishVisit
in interface QueryExpressionVisitor
public <ElementType,CollectionType extends Collection<ElementType>> void startVisit(NotContained<ElementType,CollectionType> expression)
startVisit
in interface QueryExpressionVisitor
public <ElementType,CollectionType extends Collection<ElementType>> void finishVisit(NotContained<ElementType,CollectionType> expression)
finishVisit
in interface QueryExpressionVisitor
public <ElementType,CollectionType extends Collection<ElementType>> void startVisit(In<ElementType,CollectionType> expression)
startVisit
in interface QueryExpressionVisitor
public <ElementType,CollectionType extends Collection<ElementType>> void finishVisit(In<ElementType,CollectionType> expression)
finishVisit
in interface QueryExpressionVisitor
public <ElementType,CollectionType extends Collection<ElementType>> void startVisit(IsNotEmpty<ElementType,CollectionType> expression)
startVisit
in interface QueryExpressionVisitor
public <ElementType,CollectionType extends Collection<ElementType>> void finishVisit(IsNotEmpty<ElementType,CollectionType> expression)
finishVisit
in interface QueryExpressionVisitor
public <Type> void startVisit(IsNull<Type> expression)
startVisit
in interface QueryExpressionVisitor
public <Type> void finishVisit(IsNull<Type> expression)
finishVisit
in interface QueryExpressionVisitor
public <Type> void startVisit(IsNotNull<Type> expression)
startVisit
in interface QueryExpressionVisitor
public <Type> void finishVisit(IsNotNull<Type> expression)
finishVisit
in interface QueryExpressionVisitor
public <ElementType,CollectionType extends Collection<ElementType>> void startVisit(IsEmpty<ElementType,CollectionType> expression)
startVisit
in interface QueryExpressionVisitor
public <ElementType,CollectionType extends Collection<ElementType>> void finishVisit(IsEmpty<ElementType,CollectionType> expression)
finishVisit
in interface QueryExpressionVisitor
public void startVisit(Negation expression)
startVisit
in interface QueryExpressionVisitor
public void finishVisit(Negation expression)
finishVisit
in interface QueryExpressionVisitor
public void startVisit(SelectClause fieldList)
startVisit
in interface QueryExpressionVisitor
public void finishVisit(SelectClause fieldList)
finishVisit
in interface QueryExpressionVisitor
public void startVisit(OrderByClause expression)
startVisit
in interface QueryExpressionVisitor
public void finishVisit(OrderByClause expression)
finishVisit
in interface QueryExpressionVisitor
public <Type extends Comparable<Type>> void startVisit(FieldOrder<Type> expression)
startVisit
in interface QueryExpressionVisitor
public <Type extends Comparable<Type>> void finishVisit(FieldOrder<Type> expression)
finishVisit
in interface QueryExpressionVisitor
Copyright © 2020 Hyland Software Germany GmbH. All rights reserved.