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

java.lang.Object
  extended by com.espertech.esper.epl.expression.core.ExprNodeBase
All Implemented Interfaces:
ExprNode, ExprValidator, MetaDefItem, java.io.Serializable
Direct Known Subclasses:
ExprAggregateNodeBase, ExprAggregateNodeGroupKey, ExprAndNodeImpl, ExprArrayNode, ExprBetweenNodeImpl, ExprBitWiseNode, ExprCaseNode, ExprCastNode, ExprCoalesceNode, ExprConcatNode, ExprConstantNodeImpl, ExprContextPropertyNode, ExprCurrentEvaluationContextNode, ExprDeclaredNodeImpl, ExprDotNode, ExprEqualsAllAnyNode, ExprEqualsNodeImpl, ExprGroupingIdNode, ExprGroupingNode, ExprIdentNodeImpl, ExprInNodeImpl, ExprInstanceofNode, ExprIStreamNode, ExprLambdaGoesNode, ExprLikeNode, ExprMathNode, ExprMinMaxRowNode, ExprNamedParameterNodeImpl, ExprNewInstanceNode, ExprNewStructNode, ExprNodeScript, ExprNodeValidated, ExprNotNode, ExprNumberSetCronParam, ExprNumberSetFrequency, ExprNumberSetList, ExprNumberSetRange, ExprOrderedExpr, ExprOrNode, ExprPlugInSingleRowNode, ExprPreviousMatchRecognizeNode, ExprPreviousNode, ExprPriorNode, ExprPropertyExistsNode, ExprRegexpNode, ExprRelationalOpAllAnyNode, ExprRelationalOpNodeImpl, ExprStreamUnderlyingNodeImpl, ExprSubselectNode, ExprSubstitutionNode, ExprTableAccessNode, ExprTableIdentNode, ExprTableIdentNodeSubpropAccessor, ExprTimePeriodImpl, ExprTimestampNode, ExprTypedNoEvalNode, ExprTypeofNode, ExprVariableNodeImpl, ExprWildcardImpl

public abstract class ExprNodeBase
extends java.lang.Object
implements ExprNode

Superclass for filter nodes in a filter expression tree. Allow validation against stream event types and evaluation of events against filter tree.

See Also:
Serialized Form

Constructor Summary
ExprNodeBase()
          Constructor creates a list of child nodes.
 
Method Summary
 void accept(ExprNodeVisitor visitor)
          Accept the visitor.
 void accept(ExprNodeVisitorWithParent visitor)
          Accept the visitor.
 void acceptChildnodes(ExprNodeVisitorWithParent visitor, ExprNode parent)
          Accept a visitor that receives both parent and child node.
 void addChildNode(ExprNode childNode)
          Adds a child node.
 void addChildNodes(java.util.Collection<ExprNode> childNodeColl)
          Adds child nodes.
 void addChildNodeToFront(ExprNode childNode)
           
 ExprNode[] getChildNodes()
          Returns list of child nodes.
 void replaceUnlistedChildNode(ExprNode nodeToReplace, ExprNode newNode)
           
 void setChildNode(int index, ExprNode newNode)
           
 void setChildNodes(ExprNode... nodes)
           
 void toEPL(java.io.StringWriter writer, ExprPrecedenceEnum parentPrecedence)
           
abstract  void toPrecedenceFreeEPL(java.io.StringWriter writer)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.espertech.esper.epl.expression.core.ExprNode
equalsNode, getExprEvaluator, getPrecedence, isConstantResult
 
Methods inherited from interface com.espertech.esper.epl.expression.core.ExprValidator
validate
 

Constructor Detail

ExprNodeBase

public ExprNodeBase()
Constructor creates a list of child nodes.

Method Detail

toPrecedenceFreeEPL

public abstract void toPrecedenceFreeEPL(java.io.StringWriter writer)

accept

public void accept(ExprNodeVisitor visitor)
Description copied from interface: ExprNode
Accept the visitor. The visitor will first visit the parent then visit all child nodes, then their child nodes.

The visitor can decide to skip child nodes by returning false in isVisit.

Specified by:
accept in interface ExprNode
Parameters:
visitor - to visit each node and each child node.

accept

public void accept(ExprNodeVisitorWithParent visitor)
Description copied from interface: ExprNode
Accept the visitor. The visitor will first visit the parent then visit all child nodes, then their child nodes.

The visitor can decide to skip child nodes by returning false in isVisit.

Specified by:
accept in interface ExprNode
Parameters:
visitor - to visit each node and each child node.

acceptChildnodes

public void acceptChildnodes(ExprNodeVisitorWithParent visitor,
                             ExprNode parent)
Description copied from interface: ExprNode
Accept a visitor that receives both parent and child node.

Specified by:
acceptChildnodes in interface ExprNode
Parameters:
visitor - to apply
parent - node

addChildNode

public final void addChildNode(ExprNode childNode)
Description copied from interface: ExprNode
Adds a child node.

Specified by:
addChildNode in interface ExprNode
Parameters:
childNode - is the child evaluation tree node to add

addChildNodes

public final void addChildNodes(java.util.Collection<ExprNode> childNodeColl)
Description copied from interface: ExprNode
Adds child nodes.

Specified by:
addChildNodes in interface ExprNode
Parameters:
childNodeColl - are the child evaluation tree node to add

getChildNodes

public final ExprNode[] getChildNodes()
Description copied from interface: ExprNode
Returns list of child nodes.

Specified by:
getChildNodes in interface ExprNode
Returns:
list of child nodes

replaceUnlistedChildNode

public void replaceUnlistedChildNode(ExprNode nodeToReplace,
                                     ExprNode newNode)
Specified by:
replaceUnlistedChildNode in interface ExprNode

addChildNodeToFront

public void addChildNodeToFront(ExprNode childNode)

setChildNodes

public void setChildNodes(ExprNode... nodes)
Specified by:
setChildNodes in interface ExprNode

setChildNode

public void setChildNode(int index,
                         ExprNode newNode)
Specified by:
setChildNode in interface ExprNode

toEPL

public void toEPL(java.io.StringWriter writer,
                  ExprPrecedenceEnum parentPrecedence)
Specified by:
toEPL in interface ExprNode

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