|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.esper.eql.expression.ExprNode
net.esper.eql.expression.ExprSubselectNode
public abstract class ExprSubselectNode
Represents a subselect in an expression tree.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class net.esper.eql.expression.ExprNode |
---|
ExprNode.MappedPropertyParseResult |
Field Summary | |
---|---|
protected ExprNode |
filterExpr
The validate filter expression. |
protected ExprNode |
selectClause
The validated select clause. |
Constructor Summary | |
---|---|
ExprSubselectNode(StatementSpecRaw statementSpec)
Ctor. |
Method Summary | |
---|---|
boolean |
equalsNode(ExprNode node)
Return true if a expression node semantically equals the current node, or false if not. |
Object |
evaluate(EventBean[] eventsPerStream,
boolean isNewData)
Evaluate event tuple and return result. |
abstract Object |
evaluate(EventBean[] eventsPerStream,
boolean isNewData,
Set<EventBean> matchingEvents)
Evaluate the subquery expression returning an evaluation result object. |
StatementSpecCompiled |
getStatementSpecCompiled()
Returns the compiled statement spec. |
StatementSpecRaw |
getStatementSpecRaw()
Returns the uncompiled statement spec. |
abstract boolean |
isAllowWildcardSelect()
Return true to indicate that wildcard selects are acceptable, or false to indicate wildcard is not acceptable |
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 |
setFilterExpr(ExprNode filterExpr)
Sets the validated filter expression, or null if there is none. |
void |
setSelectAsName(String selectAsName)
Supplies the name of the select expression as-tag |
void |
setSelectClause(ExprNode selectClause)
Sets the validate select clause |
void |
setStatementSpecCompiled(StatementSpecCompiled statementSpecCompiled)
Supplies a compiled statement spec. |
void |
setStrategy(SubqueryTableLookupStrategy strategy)
Sets the strategy for boiling down the table of subquery events into a subset against which to run the filter. |
String |
toExpressionString()
Returns the expression node rendered as a string. |
Methods inherited from class net.esper.eql.expression.ExprNode |
---|
accept, addChildNode, deepEquals, dumpDebug, getChildNodes, getValidatedSubtree, parseMappedProperty |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface net.esper.eql.expression.ExprValidator |
---|
getType, validate |
Field Detail |
---|
protected ExprNode selectClause
protected ExprNode filterExpr
Constructor Detail |
---|
public ExprSubselectNode(StatementSpecRaw statementSpec)
statementSpec
- is the subquery statement spec from the parser, unvalidatedMethod Detail |
---|
public abstract Object evaluate(EventBean[] eventsPerStream, boolean isNewData, Set<EventBean> matchingEvents)
eventsPerStream
- is the events for each stream in a joinisNewData
- is true for new data, or false for old datamatchingEvents
- is filtered results from the table of stored subquery events
public abstract boolean isAllowWildcardSelect()
public boolean isConstantResult()
ExprNode
isConstantResult
in class ExprNode
public void setStatementSpecCompiled(StatementSpecCompiled statementSpecCompiled)
statementSpecCompiled
- compiled validated filterspublic StatementSpecCompiled getStatementSpecCompiled()
public void setSelectClause(ExprNode selectClause)
selectClause
- is the expression representing the select clausepublic Object evaluate(EventBean[] eventsPerStream, boolean isNewData)
ExprEvaluator
eventsPerStream
- - event tupleisNewData
- - indicates whether we are dealing with new data (istream) or old data (rstream)
public StatementSpecRaw getStatementSpecRaw()
public void setSelectAsName(String selectAsName)
selectAsName
- is the as-namepublic void setFilterExpr(ExprNode filterExpr)
filterExpr
- is the filterpublic String toExpressionString()
ExprNode
toExpressionString
in class ExprNode
public boolean equalsNode(ExprNode node)
ExprNode
Concrete implementations should compare the type and any additional information that impact the evaluation of a node.
equalsNode
in class ExprNode
node
- to compare to
public void setStrategy(SubqueryTableLookupStrategy strategy)
strategy
- is the looking strategy (full table scan or indexed)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |