org.mule.common.query
Class DefaultQueryVisitor

java.lang.Object
  extended by org.mule.common.query.DefaultQueryVisitor
All Implemented Interfaces:
QueryVisitor
Direct Known Subclasses:
DsqlQueryVisitor

public abstract class DefaultQueryVisitor
extends Object
implements QueryVisitor

This is used for translating DSQL to your native query language

Extend this class to create your own query visitor. This is useful to walk the DsqlQuery structure and translate it to a native one without doing such a mess.

The main idea behind this visitor is to build your native query incrementally on each visit method accordingly. For a practical example look at DsqlQueryVisitor.

For the DSQL operators translation there's other visitor DefaultOperatorVisitor you must extend.


Constructor Summary
DefaultQueryVisitor()
           
 
Method Summary
 void _dont_implement_QueryVisitor___instead_extend_DefaultQueryVisitor()
          This method simply acts a friendly reminder not to implement DsqlQuery visitor directly and instead extend DefaultQueryVisitor.
 OperatorVisitor operatorVisitor()
           
 void visitAnd()
           
 void visitBeginExpression()
           
 void visitComparison(String operator, Field field, Value<?> value)
           
 void visitEndPrecedence()
           
 void visitFields(List<Field> fields)
           
 void visitInitPrecedence()
           
 void visitLimit(int limit)
           
 void visitOffset(int offset)
           
 void visitOR()
           
 void visitOrderByFields(List<Field> orderByFields, Direction direction)
           
 void visitTypes(List<Type> types)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultQueryVisitor

public DefaultQueryVisitor()
Method Detail

visitFields

public void visitFields(List<Field> fields)
Specified by:
visitFields in interface QueryVisitor

visitTypes

public void visitTypes(List<Type> types)
Specified by:
visitTypes in interface QueryVisitor

visitAnd

public void visitAnd()
Specified by:
visitAnd in interface QueryVisitor

visitOR

public void visitOR()
Specified by:
visitOR in interface QueryVisitor

visitComparison

public void visitComparison(String operator,
                            Field field,
                            Value<?> value)
Specified by:
visitComparison in interface QueryVisitor

operatorVisitor

public OperatorVisitor operatorVisitor()
Specified by:
operatorVisitor in interface QueryVisitor

visitBeginExpression

public void visitBeginExpression()
Specified by:
visitBeginExpression in interface QueryVisitor

visitInitPrecedence

public void visitInitPrecedence()
Specified by:
visitInitPrecedence in interface QueryVisitor

visitEndPrecedence

public void visitEndPrecedence()
Specified by:
visitEndPrecedence in interface QueryVisitor

visitLimit

public void visitLimit(int limit)
Specified by:
visitLimit in interface QueryVisitor

visitOffset

public void visitOffset(int offset)
Specified by:
visitOffset in interface QueryVisitor

visitOrderByFields

public void visitOrderByFields(List<Field> orderByFields,
                               Direction direction)
Specified by:
visitOrderByFields in interface QueryVisitor

_dont_implement_QueryVisitor___instead_extend_DefaultQueryVisitor

public void _dont_implement_QueryVisitor___instead_extend_DefaultQueryVisitor()
Description copied from interface: QueryVisitor
This method simply acts a friendly reminder not to implement DsqlQuery visitor directly and instead extend DefaultQueryVisitor.

Specified by:
_dont_implement_QueryVisitor___instead_extend_DefaultQueryVisitor in interface QueryVisitor


Copyright © 2015 MuleSoft, Inc.. All rights reserved.