org.objectweb.medor.expression.lib
Class Like

java.lang.Object
  extended byorg.objectweb.medor.expression.lib.Like
All Implemented Interfaces:
java.lang.Cloneable, Expression, Operator, java.io.Serializable

public class Like
extends java.lang.Object
implements Operator

Author:
S.Chassande-Barrioz
See Also:
Serialized Form

Field Summary
 
Fields inherited from interface org.objectweb.medor.expression.api.Operator
ABS, AND, AVG, BITWIZE, CONCAT, CONDAND, CONDOR, COUNT, DIV, EQUAL, FIRSTLOCATE, GREATER, GREATEREQUAL, IN, INDEXEDLOCATE, LENGTH, LOWER, LOWEREQUAL, MAX, MEMBEROF, MIN, MINUS, MOD, MULT, NAV, NOT, NOTEQUAL, NOTMEMBEROF, OR, PLUS, SQRT, SUBSTRING, SUM, UMINUS
 
Constructor Summary
Like(Expression str, Expression pattern)
           
Like(Expression str, Expression pattern, boolean not)
           
Like(Expression str, Expression pattern, Expression escape)
           
Like(Expression str, Expression pattern, Expression escape, boolean not)
           
 
Method Summary
 Operand compileExpression()
          Checks the semantic integrity of an expression.
 Operand evaluate(ParameterOperand[] values, java.lang.Object o)
          It evaluates the expression tree and puts the result into the operand result.
 Expression getExpression(int idx)
           
 int getOperandNumber()
           
 java.lang.String getOperatorString()
          Returns the String representing the operator in Java
 Operand getResult()
           
 PType getType()
          It gets the result type of this expression
 void setExpression(int idx, Expression exp)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Like

public Like(Expression str,
            Expression pattern,
            Expression escape)

Like

public Like(Expression str,
            Expression pattern,
            Expression escape,
            boolean not)

Like

public Like(Expression str,
            Expression pattern)

Like

public Like(Expression str,
            Expression pattern,
            boolean not)
Method Detail

getOperatorString

public java.lang.String getOperatorString()
Description copied from interface: Operator
Returns the String representing the operator in Java

Specified by:
getOperatorString in interface Operator
Returns:
the String representing the operator in Java

getType

public PType getType()
Description copied from interface: Expression
It gets the result type of this expression

Specified by:
getType in interface Expression
Returns:
a PType object

getOperandNumber

public int getOperandNumber()
Specified by:
getOperandNumber in interface Operator

getExpression

public Expression getExpression(int idx)
                         throws java.lang.ArrayIndexOutOfBoundsException
Specified by:
getExpression in interface Operator
Throws:
java.lang.ArrayIndexOutOfBoundsException

compileExpression

public Operand compileExpression()
                          throws ExpressionException,
                                 MalformedExpressionException
Description copied from interface: Expression
Checks the semantic integrity of an expression. It checks that all types are compatible and prepare the expression to be evaluable.It also creates buffers where stores the result. Notes that when evaluating there is no creation of new objects. This method change the state of this expression object, it will be evaluable and not modifiable.

Specified by:
compileExpression in interface Expression
Throws:
MalformedExpressionException - if syntax error
ExpressionException

setExpression

public void setExpression(int idx,
                          Expression exp)
                   throws java.lang.ArrayIndexOutOfBoundsException
Specified by:
setExpression in interface Operator
Throws:
java.lang.ArrayIndexOutOfBoundsException

getResult

public Operand getResult()
                  throws java.lang.IllegalStateException
Throws:
java.lang.IllegalStateException

evaluate

public Operand evaluate(ParameterOperand[] values,
                        java.lang.Object o)
                 throws ExpressionException
Description copied from interface: Expression
It evaluates the expression tree and puts the result into the operand result.

Specified by:
evaluate in interface Expression
Parameters:
values - a list of ParameterOperand
o - the input Object from which values are taken for the evaluation
Returns:
an Operand containing the result of the evaluation
Throws:
ExpressionException