com.espertech.esper.epl.expression.core
Class ExprSubstitutionNode

java.lang.Object
  extended by com.espertech.esper.epl.expression.core.ExprNodeBase
      extended by com.espertech.esper.epl.expression.core.ExprSubstitutionNode
All Implemented Interfaces:
ExprNode, ExprValidator, MetaDefItem, java.io.Serializable

public class ExprSubstitutionNode
extends ExprNodeBase

Represents a substitution value to be substituted in an expression tree, not valid for any purpose of use as an expression, however can take a place in an expression tree.

See Also:
Serialized Form

Constructor Summary
ExprSubstitutionNode(java.lang.Integer index)
          Ctor.
ExprSubstitutionNode(java.lang.String name)
          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, boolean isNewData, ExprEvaluatorContext exprEvaluatorContext)
           
 ExprEvaluator getExprEvaluator()
           
 java.lang.Integer getIndex()
          Returns the substitution parameter index (or null if by-name).
 java.lang.String getName()
          Returns the substitution parameter name (or null if by-index).
 ExprPrecedenceEnum getPrecedence()
          Returns precedence.
 java.lang.Class getType()
           
 boolean isConstantResult()
          Returns true if the expression node's evaluation value doesn't depend on any events data, as must be determined at validation time, which is bottom-up and therefore reliably allows each node to determine constant value.
 void toPrecedenceFreeEPL(java.io.StringWriter writer)
           
 ExprNode validate(ExprValidationContext validationContext)
           
 
Methods inherited from class com.espertech.esper.epl.expression.core.ExprNodeBase
accept, accept, acceptChildnodes, addChildNode, addChildNodes, addChildNodeToFront, getChildNodes, replaceUnlistedChildNode, setChildNode, setChildNodes, toEPL
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExprSubstitutionNode

public ExprSubstitutionNode(java.lang.Integer index)
Ctor.

Parameters:
index - is the index of the substitution parameter

ExprSubstitutionNode

public ExprSubstitutionNode(java.lang.String name)
Ctor.

Parameters:
name - is the name of the substitution parameter
Method Detail

validate

public ExprNode validate(ExprValidationContext validationContext)
                  throws ExprValidationException
Throws:
ExprValidationException

getIndex

public java.lang.Integer getIndex()
Returns the substitution parameter index (or null if by-name).

Returns:
index

getName

public java.lang.String getName()
Returns the substitution parameter name (or null if by-index).

Returns:
name

isConstantResult

public boolean isConstantResult()
Description copied from interface: ExprNode
Returns true if the expression node's evaluation value doesn't depend on any events data, as must be determined at validation time, which is bottom-up and therefore reliably allows each node to determine constant value.

Returns:
true for constant evaluation value, false for non-constant evaluation value

getType

public java.lang.Class getType()

evaluate

public java.lang.Object evaluate(EventBean[] eventsPerStream,
                                 boolean isNewData,
                                 ExprEvaluatorContext exprEvaluatorContext)

getExprEvaluator

public ExprEvaluator getExprEvaluator()

toPrecedenceFreeEPL

public void toPrecedenceFreeEPL(java.io.StringWriter writer)
Specified by:
toPrecedenceFreeEPL in class ExprNodeBase

getPrecedence

public ExprPrecedenceEnum getPrecedence()
Description copied from interface: ExprNode
Returns precedence.

Returns:
precedence

equalsNode

public boolean equalsNode(ExprNode node)
Description copied from interface: 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.

Parameters:
node - to compare to
Returns:
true if semantically equal, or false if not equals

© 2006-2015 EsperTech Inc.
All rights reserved.
Visit us at espertech.com