org.objectweb.medor.expression.lib
Class Like

java.lang.Object
  extended byorg.objectweb.medor.clone.lib.BasicCloneable
      extended byorg.objectweb.medor.expression.lib.BasicExpression
          extended byorg.objectweb.medor.expression.lib.BasicOperator
              extended byorg.objectweb.medor.expression.lib.Like
All Implemented Interfaces:
org.objectweb.medor.clone.api.Cloneable, java.lang.Cloneable, Expression, Operator, java.io.Serializable

public class Like
extends BasicOperator
implements Operator

Is an operator representing the LIKE or the NOT LIKE operator. The regular expressions are used for the string comparaison. The current memory evaluation does not support escape characters.

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

Field Summary
 
Fields inherited from class org.objectweb.medor.expression.lib.BasicOperator
expressions, result, verified
 
Fields inherited from class org.objectweb.medor.expression.lib.BasicExpression
logger, type
 
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, STRING_LOWER, STRING_UPPER, SUBSTRING, SUM, UMINUS
 
Constructor Summary
Like()
           
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
 java.lang.Object clone(java.lang.Object clone, java.util.Map obj2clone)
          Clone the current object.
 Operand compileExpression()
          compiles the operator: - compiles operands - verify type of parameter - compute the result holder (operand) - try to compile the pattern matcher if the filter is already defined
 Operand evaluate(ParameterOperand[] values, java.lang.Object o)
          Evaluates the operator on operands fetch from the sub expressions.
 java.lang.String getOperatorString()
          Returns the String representing the operator in Java
 
Methods inherited from class org.objectweb.medor.expression.lib.BasicOperator
checkOperands, compileOperands, getExpression, getOperandNumber, setExpression
 
Methods inherited from class org.objectweb.medor.expression.lib.BasicExpression
getType
 
Methods inherited from class org.objectweb.medor.clone.lib.BasicCloneable
clone, clone, getClone
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.objectweb.medor.expression.api.Operator
getExpression, getOperandNumber, setExpression
 
Methods inherited from interface org.objectweb.medor.expression.api.Expression
getType
 

Constructor Detail

Like

public Like()

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

clone

public java.lang.Object clone(java.lang.Object clone,
                              java.util.Map obj2clone)
                       throws java.lang.CloneNotSupportedException
Description copied from interface: org.objectweb.medor.clone.api.Cloneable
Clone the current object.

Specified by:
clone in interface org.objectweb.medor.clone.api.Cloneable
Overrides:
clone in class BasicOperator
Throws:
java.lang.CloneNotSupportedException

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

compileExpression

public Operand compileExpression()
                          throws ExpressionException,
                                 MalformedExpressionException
compiles the operator: - compiles operands - verify type of parameter - compute the result holder (operand) - try to compile the pattern matcher if the filter is already defined

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

evaluate

public Operand evaluate(ParameterOperand[] values,
                        java.lang.Object o)
                 throws ExpressionException
Evaluates the operator on operands fetch from the sub expressions.

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