common-util

local.tomas.expr
Class BaseExpressionWalker<E,F>

java.lang.Object
  extended by local.tomas.expr.BaseExpressionWalker<E,F>
All Implemented Interfaces:
ExpressionWalker<E,F>

public class BaseExpressionWalker<E,F>
extends Object
implements ExpressionWalker<E,F>

Basic expression walker implementation.

Author:
Teubner

Constructor Summary
BaseExpressionWalker()
           
 
Method Summary
 E visitAbsFunction(AbsFunctionTerm t, F arg)
          Visit an abs function term.
 E visitAddition(AdditionTerm t, F arg)
          Visit an addition term.
 E visitAndTerm(AndTerm t, F arg)
          Visit an and term.
protected  E visitBinaryTerm(BinaryTerm t, F arg)
          Visit a binary term.
 E visitBooleanConstant(Boolean b, F arg)
          Visit a boolean constant.
 E visitConcatenationTerm(ConcatenationTerm t, F arg)
          Visit a concatenation term.
 E visitCurrentDateFunction(CurrentDateFunctionTerm t, F arg)
          Visit a current date function term.
 E visitDateConstant(Date d, F arg)
          Visit a date constant.
 E visitDivision(DivisionTerm t, F arg)
          Visit a division term.
 E visitEquality(EqualityTerm t, F arg)
          Visit an equality term.
protected  E visitFunctionCall(FunctionCall call, F arg)
          Visit a function call.
 E visitGreaterEqual(GreaterEqualTerm t, F arg)
          Visit a greater equal term.
 E visitGreaterThan(GreaterTerm t, F arg)
          Visit a greater than term.
 E visitInequality(InequalityTerm t, F arg)
          Visit an inequality term.
 E visitInTerm(InTerm t, F arg)
          Visit an in term.
 E visitIsNotNull(IsNotNullTerm t, F arg)
          Visit a not is null term.
 E visitIsNull(IsNullTerm t, F arg)
          Visit an is null term.
 E visitLengthFunction(LengthFunctionTerm t, F arg)
          Visit a length function term.
 E visitLessEqual(LessEqualTerm t, F arg)
          Visit a less equal term.
 E visitLessThan(LessTerm t, F arg)
          Visit a less than term.
 E visitLikeTerm(LikeTerm t, F arg)
          Visit a like term.
 E visitLowerFunction(LowerFunctionTerm t, F arg)
          Visit a lower function term.
 E visitMatchTerm(MatchTerm t, F arg)
          Visit a regular expression match term.
 E visitMultiplication(MultiplicationTerm t, F arg)
          Visit a multiplication term.
 E visitNegation(NegationTerm t, F arg)
          Visit a concatenation term.
 E visitNotInTerm(NotInTerm t, F arg)
          Visit a not in term.
 E visitNotLikeTerm(NotLikeTerm t, F arg)
          Visit a not like term.
 E visitNumberConstant(Number n, F arg)
          Visit a numeric constant.
 E visitOrTerm(OrTerm t, F arg)
          Visit an or term.
 E visitReplaceFunction(ReplaceFunctionTerm t, F arg)
          Visit a replace function term.
 E visitSignChange(SignChangeTerm t, F arg)
          Visit a sign change term.
 E visitStringConstant(String s, F arg)
          Visit a string constant.
 E visitSubstrFunction(SubstrFunctionTerm t, F arg)
          Visit a substring function term.
 E visitSubtraction(SubtractionTerm t, F arg)
          Visit a subtraction term.
 E visitTrimFunction(TrimFunctionTerm t, F arg)
          Visit a trim function term.
protected  E visitUnaryTerm(UnaryTerm t, F arg)
          Visit a unary term.
 E visitUpperFunction(UpperFunctionTerm t, F arg)
          Visit an upper function term.
 E visitVariable(Variable variable, F arg)
          Visit a variable.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BaseExpressionWalker

public BaseExpressionWalker()
Method Detail

visitBooleanConstant

public E visitBooleanConstant(Boolean b,
                              F arg)
                       throws ExpressionException
Visit a boolean constant. This implementation does nothing and returns null.

Specified by:
visitBooleanConstant in interface ExpressionWalker<E,F>
Parameters:
b - boolean constant
arg - implementation dependent argument
Returns:
null
Throws:
ExpressionException

visitStringConstant

public E visitStringConstant(String s,
                             F arg)
                      throws ExpressionException
Visit a string constant. This implementation does nothing and returns null.

Specified by:
visitStringConstant in interface ExpressionWalker<E,F>
Parameters:
s - string constant
arg - implementation dependent argument
Returns:
null
Throws:
ExpressionException

visitNumberConstant

public E visitNumberConstant(Number n,
                             F arg)
                      throws ExpressionException
Visit a numeric constant. This implementation does nothing and returns null.

Specified by:
visitNumberConstant in interface ExpressionWalker<E,F>
Parameters:
n - numeric constant
arg - implementation dependent argument
Returns:
null
Throws:
ExpressionException

visitDateConstant

public E visitDateConstant(Date d,
                           F arg)
                    throws ExpressionException
Visit a date constant. This implementation does nothing and returns null.

Specified by:
visitDateConstant in interface ExpressionWalker<E,F>
Parameters:
d - date constant
arg - implementation dependent argument
Returns:
null
Throws:
ExpressionException

visitBinaryTerm

protected E visitBinaryTerm(BinaryTerm t,
                            F arg)
                     throws ExpressionException
Visit a binary term. This implementation visits the left and right operand and returns null.

Returns:
null
Throws:
ExpressionException

visitUnaryTerm

protected E visitUnaryTerm(UnaryTerm t,
                           F arg)
                    throws ExpressionException
Visit a unary term. This implementation visits the operand and returns null.

Returns:
null
Throws:
ExpressionException

visitVariable

public E visitVariable(Variable variable,
                       F arg)
                throws ExpressionException
Visit a variable. This implementation does nothing and returns null.

Specified by:
visitVariable in interface ExpressionWalker<E,F>
arg - implementation dependent argument
Returns:
null
Throws:
ExpressionException

visitAddition

public E visitAddition(AdditionTerm t,
                       F arg)
                throws ExpressionException
Description copied from interface: ExpressionWalker
Visit an addition term.

Specified by:
visitAddition in interface ExpressionWalker<E,F>
Parameters:
t - addition term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitSubtraction

public E visitSubtraction(SubtractionTerm t,
                          F arg)
                   throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a subtraction term.

Specified by:
visitSubtraction in interface ExpressionWalker<E,F>
Parameters:
t - subtraction term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitMultiplication

public E visitMultiplication(MultiplicationTerm t,
                             F arg)
                      throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a multiplication term.

Specified by:
visitMultiplication in interface ExpressionWalker<E,F>
Parameters:
t - multiplication term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitDivision

public E visitDivision(DivisionTerm t,
                       F arg)
                throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a division term.

Specified by:
visitDivision in interface ExpressionWalker<E,F>
Parameters:
t - division term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitEquality

public E visitEquality(EqualityTerm t,
                       F arg)
                throws ExpressionException
Description copied from interface: ExpressionWalker
Visit an equality term.

Specified by:
visitEquality in interface ExpressionWalker<E,F>
Parameters:
t - equality term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitInequality

public E visitInequality(InequalityTerm t,
                         F arg)
                  throws ExpressionException
Description copied from interface: ExpressionWalker
Visit an inequality term.

Specified by:
visitInequality in interface ExpressionWalker<E,F>
Parameters:
t - inequality term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitLessThan

public E visitLessThan(LessTerm t,
                       F arg)
                throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a less than term.

Specified by:
visitLessThan in interface ExpressionWalker<E,F>
Parameters:
t - less than term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitLessEqual

public E visitLessEqual(LessEqualTerm t,
                        F arg)
                 throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a less equal term.

Specified by:
visitLessEqual in interface ExpressionWalker<E,F>
Parameters:
t - less equal term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitGreaterThan

public E visitGreaterThan(GreaterTerm t,
                          F arg)
                   throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a greater than term.

Specified by:
visitGreaterThan in interface ExpressionWalker<E,F>
Parameters:
t - greater than term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitGreaterEqual

public E visitGreaterEqual(GreaterEqualTerm t,
                           F arg)
                    throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a greater equal term.

Specified by:
visitGreaterEqual in interface ExpressionWalker<E,F>
Parameters:
t - greater equal term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitInTerm

public E visitInTerm(InTerm t,
                     F arg)
              throws ExpressionException
Description copied from interface: ExpressionWalker
Visit an in term.

Specified by:
visitInTerm in interface ExpressionWalker<E,F>
Parameters:
t - an in term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitNotInTerm

public E visitNotInTerm(NotInTerm t,
                        F arg)
                 throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a not in term.

Specified by:
visitNotInTerm in interface ExpressionWalker<E,F>
Parameters:
t - a not in term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitLikeTerm

public E visitLikeTerm(LikeTerm t,
                       F arg)
                throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a like term.

Specified by:
visitLikeTerm in interface ExpressionWalker<E,F>
Parameters:
t - a like term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitNotLikeTerm

public E visitNotLikeTerm(NotLikeTerm t,
                          F arg)
                   throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a not like term.

Specified by:
visitNotLikeTerm in interface ExpressionWalker<E,F>
Parameters:
t - a not like term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitAndTerm

public E visitAndTerm(AndTerm t,
                      F arg)
               throws ExpressionException
Description copied from interface: ExpressionWalker
Visit an and term.

Specified by:
visitAndTerm in interface ExpressionWalker<E,F>
Parameters:
t - an and term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitOrTerm

public E visitOrTerm(OrTerm t,
                     F arg)
              throws ExpressionException
Description copied from interface: ExpressionWalker
Visit an or term.

Specified by:
visitOrTerm in interface ExpressionWalker<E,F>
Parameters:
t - an or term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitConcatenationTerm

public E visitConcatenationTerm(ConcatenationTerm t,
                                F arg)
                         throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a concatenation term.

Specified by:
visitConcatenationTerm in interface ExpressionWalker<E,F>
Parameters:
t - a concatenation term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitSignChange

public E visitSignChange(SignChangeTerm t,
                         F arg)
                  throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a sign change term.

Specified by:
visitSignChange in interface ExpressionWalker<E,F>
Parameters:
t - a sign change term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitNegation

public E visitNegation(NegationTerm t,
                       F arg)
                throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a concatenation term.

Specified by:
visitNegation in interface ExpressionWalker<E,F>
Parameters:
t - a concatenation term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitIsNull

public E visitIsNull(IsNullTerm t,
                     F arg)
              throws ExpressionException
Description copied from interface: ExpressionWalker
Visit an is null term.

Specified by:
visitIsNull in interface ExpressionWalker<E,F>
Parameters:
t - an is null term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitIsNotNull

public E visitIsNotNull(IsNotNullTerm t,
                        F arg)
                 throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a not is null term.

Specified by:
visitIsNotNull in interface ExpressionWalker<E,F>
Parameters:
t - a not is null term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitAbsFunction

public E visitAbsFunction(AbsFunctionTerm t,
                          F arg)
                   throws ExpressionException
Description copied from interface: ExpressionWalker
Visit an abs function term.

Specified by:
visitAbsFunction in interface ExpressionWalker<E,F>
Parameters:
t - an abs function term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitLengthFunction

public E visitLengthFunction(LengthFunctionTerm t,
                             F arg)
                      throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a length function term.

Specified by:
visitLengthFunction in interface ExpressionWalker<E,F>
Parameters:
t - a length function term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitTrimFunction

public E visitTrimFunction(TrimFunctionTerm t,
                           F arg)
                    throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a trim function term.

Specified by:
visitTrimFunction in interface ExpressionWalker<E,F>
Parameters:
t - a trim function term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitUpperFunction

public E visitUpperFunction(UpperFunctionTerm t,
                            F arg)
                     throws ExpressionException
Description copied from interface: ExpressionWalker
Visit an upper function term.

Specified by:
visitUpperFunction in interface ExpressionWalker<E,F>
Parameters:
t - an upper function term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitLowerFunction

public E visitLowerFunction(LowerFunctionTerm t,
                            F arg)
                     throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a lower function term.

Specified by:
visitLowerFunction in interface ExpressionWalker<E,F>
Parameters:
t - a lower function term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitSubstrFunction

public E visitSubstrFunction(SubstrFunctionTerm t,
                             F arg)
                      throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a substring function term.

Specified by:
visitSubstrFunction in interface ExpressionWalker<E,F>
Parameters:
t - a substring function term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitMatchTerm

public E visitMatchTerm(MatchTerm t,
                        F arg)
                 throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a regular expression match term.

Specified by:
visitMatchTerm in interface ExpressionWalker<E,F>
Parameters:
t - a regular expression match term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitReplaceFunction

public E visitReplaceFunction(ReplaceFunctionTerm t,
                              F arg)
                       throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a replace function term.

Specified by:
visitReplaceFunction in interface ExpressionWalker<E,F>
Parameters:
t - a replace function term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitCurrentDateFunction

public E visitCurrentDateFunction(CurrentDateFunctionTerm t,
                                  F arg)
                           throws ExpressionException
Description copied from interface: ExpressionWalker
Visit a current date function term.

Specified by:
visitCurrentDateFunction in interface ExpressionWalker<E,F>
Parameters:
t - a current date function term
arg - implementation dependent argument
Returns:
implementation dependent result
Throws:
ExpressionException

visitFunctionCall

protected E visitFunctionCall(FunctionCall call,
                              F arg)
                       throws ExpressionException
Visit a function call. This implementation visits all arguments and returns null.

Parameters:
call - function call
arg - implementation dependent argument
Returns:
null
Throws:
ExpressionException

common-util

Copyright © 2005-2007 Tomas Teubner. All Rights Reserved.