com.espertech.esper.epl.expression.table
Class ExprTableAccessNodeTopLevel
java.lang.Object
com.espertech.esper.epl.expression.core.ExprNodeBase
com.espertech.esper.epl.expression.table.ExprTableAccessNode
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
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 |
ExprTableAccessNodeTopLevel
public ExprTableAccessNodeTopLevel(java.lang.String tableName)
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 tupleisNewData
- - 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