com.espertech.esper.epl.expression.table
Class ExprTableAccessNodeTopLevel

java.lang.Object
  extended by com.espertech.esper.epl.expression.core.ExprNodeBase
      extended by com.espertech.esper.epl.expression.table.ExprTableAccessNode
          extended by com.espertech.esper.epl.expression.table.ExprTableAccessNodeTopLevel
All Implemented Interfaces:
ExprEvaluator, ExprEvaluatorTypableReturn, ExprNode, ExprValidator, MetaDefItem, java.io.Serializable

public class ExprTableAccessNodeTopLevel
extends ExprTableAccessNode
implements ExprEvaluatorTypableReturn

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.espertech.esper.epl.expression.table.ExprTableAccessNode
groupKeyEvaluators, strategy, tableName
 
Constructor Summary
ExprTableAccessNodeTopLevel(java.lang.String tableName)
           
 
Method Summary
protected  boolean equalsNodeInternal(ExprTableAccessNode other)
           
 java.lang.Object evaluate(EventBean[] eventsPerStream, boolean isNewData, ExprEvaluatorContext exprEvaluatorContext)
          Evaluate event tuple and return result.
 java.lang.Object[][] evaluateTypableMulti(EventBean[] eventsPerStream, boolean isNewData, ExprEvaluatorContext context)
           
 java.lang.Object[] evaluateTypableSingle(EventBean[] eventsPerStream, boolean isNewData, ExprEvaluatorContext context)
           
 ExprEvaluator getExprEvaluator()
           
 java.util.LinkedHashMap<java.lang.String,java.lang.Object> getRowProperties()
          Return null to indicate no row-type result available, or a map of property names and types to indicate a row-type result is available.
 java.lang.Class getType()
          Returns the type that the node's evaluate method returns an instance of.
 java.lang.Boolean isMultirow()
          Return true for multi-row return, return false for return of single row only
 void setStrategy(ExprTableAccessEvalStrategy strategy)
           
 void toPrecedenceFreeEPL(java.io.StringWriter writer)
           
protected  void validateBindingInternal(ExprValidationContext validationContext, TableMetadata tableMetadata)
           
 
Methods inherited from class com.espertech.esper.epl.expression.table.ExprTableAccessNode
equalsNode, getGroupKeyEvaluators, getPrecedence, getTableName, hashCode, isConstantResult, toPrecedenceFreeEPLInternal, toPrecedenceFreeEPLInternal, validate, validateGroupKeys, validateSubpropertyGetCol
 
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, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExprTableAccessNodeTopLevel

public ExprTableAccessNodeTopLevel(java.lang.String tableName)
Method Detail

setStrategy

public void setStrategy(ExprTableAccessEvalStrategy strategy)
Overrides:
setStrategy in class ExprTableAccessNode

getExprEvaluator

public ExprEvaluator getExprEvaluator()
Specified by:
getExprEvaluator in interface ExprNode

validateBindingInternal

protected void validateBindingInternal(ExprValidationContext validationContext,
                                       TableMetadata tableMetadata)
                                throws ExprValidationException
Specified by:
validateBindingInternal in class ExprTableAccessNode
Throws:
ExprValidationException

getType

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

Specified by:
getType in interface ExprEvaluator
Returns:
type returned when evaluated

evaluate

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

Specified by:
evaluate in interface ExprEvaluator
Parameters:
eventsPerStream - - event tuple
isNewData - - indicates whether we are dealing with new data (istream) or old data (rstream)
exprEvaluatorContext - context for expression evaluation
Returns:
evaluation result, a boolean value for OR/AND-type evalution nodes.

getRowProperties

public java.util.LinkedHashMap<java.lang.String,java.lang.Object> getRowProperties()
                                                                            throws ExprValidationException
Description copied from interface: ExprEvaluatorTypableReturn
Return null to indicate no row-type result available, or a map of property names and types to indicate a row-type result is available.

Specified by:
getRowProperties in interface ExprEvaluatorTypableReturn
Returns:
map of property names and types or null
Throws:
ExprValidationException - if the expression is invalid

isMultirow

public java.lang.Boolean isMultirow()
Description copied from interface: ExprEvaluatorTypableReturn
Return true for multi-row return, return false for return of single row only

Specified by:
isMultirow in interface ExprEvaluatorTypableReturn
Returns:
multi-row flag

evaluateTypableSingle

public java.lang.Object[] evaluateTypableSingle(EventBean[] eventsPerStream,
                                                boolean isNewData,
                                                ExprEvaluatorContext context)
Specified by:
evaluateTypableSingle in interface ExprEvaluatorTypableReturn

evaluateTypableMulti

public java.lang.Object[][] evaluateTypableMulti(EventBean[] eventsPerStream,
                                                 boolean isNewData,
                                                 ExprEvaluatorContext context)
Specified by:
evaluateTypableMulti in interface ExprEvaluatorTypableReturn

toPrecedenceFreeEPL

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

equalsNodeInternal

protected boolean equalsNodeInternal(ExprTableAccessNode other)
Specified by:
equalsNodeInternal in class ExprTableAccessNode

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