net.esper.eql.expression
Class ExprMathNode

java.lang.Object
  extended by net.esper.eql.expression.ExprNode
      extended by net.esper.eql.expression.ExprMathNode
All Implemented Interfaces:
ExprEvaluator, ExprValidator

public class ExprMathNode
extends ExprNode

Represents a simple Math (+/-/divide/*) in a filter expression tree.


Constructor Summary
ExprMathNode(ArithTypeEnum arithTypeEnum)
          Ctor.
 
Method Summary
 boolean equalsNode(ExprNode node)
          Return true if a expression node semantically equals the current node, or false if not.
 java.lang.Object evaluate(EventBean[] eventsPerStream)
          Evaluate event tuple and return result.
 java.lang.Class getType()
          Returns the type that the node's evaluate method returns an instance of.
 java.lang.String toExpressionString()
          Returns the expression node rendered as a string.
 void validate(StreamTypeService streamTypeService)
          Validate node.
 
Methods inherited from class net.esper.eql.expression.ExprNode
accept, addChildNode, deepEquals, dumpDebug, getChildNodes, validateDescendents
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExprMathNode

public ExprMathNode(ArithTypeEnum arithTypeEnum)
Ctor.

Parameters:
arithTypeEnum - - type of math
Method Detail

validate

public void validate(StreamTypeService streamTypeService)
              throws ExprValidationException
Description copied from interface: ExprValidator
Validate node.

Parameters:
streamTypeService - serves stream event type info
Throws:
ExprValidationException - thrown when validation failed

getType

public java.lang.Class getType()
                        throws ExprValidationException
Description copied from interface: ExprValidator
Returns the type that the node's evaluate method returns an instance of.

Returns:
type returned when evaluated
Throws:
ExprValidationException - thrown when validation failed

evaluate

public java.lang.Object evaluate(EventBean[] eventsPerStream)
Description copied from interface: ExprEvaluator
Evaluate event tuple and return result.

Parameters:
eventsPerStream - - event tuple
Returns:
evaluation result, a boolean value for OR/AND-type evalution nodes.

toExpressionString

public java.lang.String toExpressionString()
Description copied from class: ExprNode
Returns the expression node rendered as a string.

Specified by:
toExpressionString in class ExprNode
Returns:
string rendering of expression

equalsNode

public boolean equalsNode(ExprNode node)
Description copied from class: ExprNode
Return true if a expression node semantically equals the current node, or false if not.

Concrete implementations should compare the type and any additional information that impact the evaluation of a node.

Specified by:
equalsNode in class ExprNode
Parameters:
node - to compare to
Returns:
true if semantically equal, or false if not equals