com.espertech.esper.epl.expression.subquery
Class ExprSubselectAllSomeAnyNode

java.lang.Object
  extended by com.espertech.esper.epl.expression.core.ExprNodeBase
      extended by com.espertech.esper.epl.expression.subquery.ExprSubselectNode
          extended by com.espertech.esper.epl.expression.subquery.ExprSubselectAllSomeAnyNode
All Implemented Interfaces:
ExprEvaluator, ExprEvaluatorEnumeration, ExprEvaluatorTypableReturn, ExprNode, ExprValidator, MetaDefItem, java.io.Serializable

public class ExprSubselectAllSomeAnyNode
extends ExprSubselectNode

Represents a subselect in an expression tree.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class com.espertech.esper.epl.expression.subquery.ExprSubselectNode
ExprSubselectNode.SubqueryAggregationType
 
Field Summary
 
Fields inherited from class com.espertech.esper.epl.expression.subquery.ExprSubselectNode
EMPTY_SUBSELECT_ARRAY, filterExpr, rawEventType, selectAsNames, selectClause, selectClauseEvaluator, statementName, subselectAggregationService, subselectNumber
 
Constructor Summary
ExprSubselectAllSomeAnyNode(StatementSpecRaw statementSpec, boolean not, boolean all, RelationalOpEnum relationalOpEnum)
          Ctor.
 
Method Summary
 java.lang.Object evaluate(EventBean[] eventsPerStream, boolean isNewData, java.util.Collection<EventBean> matchingEvents, ExprEvaluatorContext exprEvaluatorContext)
          Evaluate the lookup expression returning an evaluation result object.
 java.util.Collection<EventBean> evaluateGetCollEvents(EventBean[] eventsPerStream, boolean isNewData, java.util.Collection<EventBean> matchingEvents, ExprEvaluatorContext context)
           
 java.util.Collection evaluateGetCollScalar(EventBean[] eventsPerStream, boolean isNewData, java.util.Collection<EventBean> matchingEvents, ExprEvaluatorContext exprEvaluatorContext)
           
 EventBean evaluateGetEventBean(EventBean[] eventsPerStream, boolean isNewData, java.util.Collection<EventBean> matchingEvents, ExprEvaluatorContext exprEvaluatorContext)
           
 EventBean evaluateGetEventBean(EventBean[] eventsPerStream, boolean isNewData, ExprEvaluatorContext context)
           
 java.lang.Object[][] evaluateTypableMulti(EventBean[] eventsPerStream, boolean isNewData, java.util.Collection<EventBean> matchingEvents, ExprEvaluatorContext exprEvaluatorContext)
           
 java.lang.Object[] evaluateTypableSingle(EventBean[] eventsPerStream, boolean isNewData, java.util.Collection<EventBean> matchingEvents, ExprEvaluatorContext exprEvaluatorContext)
           
 java.lang.Class getComponentTypeCollection()
           
 EventType getEventTypeCollection(EventAdapterService eventAdapterService, java.lang.String statementId)
           
 EventType getEventTypeSingle(EventAdapterService eventAdapterService, java.lang.String statementId)
           
 RelationalOpEnum getRelationalOp()
          Returns relational op.
 java.lang.Class getType()
          Returns the type that the node's evaluate method returns an instance of.
 boolean isAll()
          Returns true for all.
 boolean isAllowMultiColumnSelect()
           
 boolean isNot()
          Returns true for not.
 java.util.LinkedHashMap<java.lang.String,java.lang.Object> typableGetRowProperties()
           
 void validateSubquery(ExprValidationContext validationContext)
           
 
Methods inherited from class com.espertech.esper.epl.expression.subquery.ExprSubselectNode
equalsNode, evaluate, evaluateGetROCollectionEvents, evaluateGetROCollectionScalar, evaluateTypableMulti, evaluateTypableSingle, getExprEvaluator, getFilterExpr, getFilterSubqueryStreamTypes, getPrecedence, getRawEventType, getRowProperties, getSelectClause, getStatementSpecCompiled, getStatementSpecRaw, getSubselectAggregationService, getSubselectAggregationType, getSubselectNumber, isConstantResult, isFilterStreamSubselect, isMultirow, setFilterExpr, setFilterStreamSubselect, setFilterSubqueryStreamTypes, setRawEventType, setSelectAsNames, setSelectClause, setStatementSpecCompiled, setStrategy, setSubselectAggregationService, setSubselectAggregationType, toArray, toPrecedenceFreeEPL, validate
 
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

ExprSubselectAllSomeAnyNode

public ExprSubselectAllSomeAnyNode(StatementSpecRaw statementSpec,
                                   boolean not,
                                   boolean all,
                                   RelationalOpEnum relationalOpEnum)
Ctor.

Parameters:
statementSpec - is the lookup statement spec from the parser, unvalidated
not - when NOT
all - when ALL, false for ANY
relationalOpEnum - operator
Method Detail

isNot

public boolean isNot()
Returns true for not.

Returns:
not indicator

isAll

public boolean isAll()
Returns true for all.

Returns:
all indicator

getRelationalOp

public RelationalOpEnum getRelationalOp()
Returns relational op.

Returns:
op

getType

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

Returns:
type returned when evaluated

validateSubquery

public void validateSubquery(ExprValidationContext validationContext)
                      throws ExprValidationException
Specified by:
validateSubquery in class ExprSubselectNode
Throws:
ExprValidationException

evaluate

public java.lang.Object evaluate(EventBean[] eventsPerStream,
                                 boolean isNewData,
                                 java.util.Collection<EventBean> matchingEvents,
                                 ExprEvaluatorContext exprEvaluatorContext)
Description copied from class: ExprSubselectNode
Evaluate the lookup expression returning an evaluation result object.

Specified by:
evaluate in class ExprSubselectNode
Parameters:
eventsPerStream - is the events for each stream in a join
isNewData - is true for new data, or false for old data
matchingEvents - is filtered results from the table of stored lookup events
exprEvaluatorContext - context for expression evalauation
Returns:
evaluation result

typableGetRowProperties

public java.util.LinkedHashMap<java.lang.String,java.lang.Object> typableGetRowProperties()
Specified by:
typableGetRowProperties in class ExprSubselectNode

evaluateTypableSingle

public java.lang.Object[] evaluateTypableSingle(EventBean[] eventsPerStream,
                                                boolean isNewData,
                                                java.util.Collection<EventBean> matchingEvents,
                                                ExprEvaluatorContext exprEvaluatorContext)
Specified by:
evaluateTypableSingle in class ExprSubselectNode

evaluateTypableMulti

public java.lang.Object[][] evaluateTypableMulti(EventBean[] eventsPerStream,
                                                 boolean isNewData,
                                                 java.util.Collection<EventBean> matchingEvents,
                                                 ExprEvaluatorContext exprEvaluatorContext)
Specified by:
evaluateTypableMulti in class ExprSubselectNode

evaluateGetCollEvents

public java.util.Collection<EventBean> evaluateGetCollEvents(EventBean[] eventsPerStream,
                                                             boolean isNewData,
                                                             java.util.Collection<EventBean> matchingEvents,
                                                             ExprEvaluatorContext context)
Specified by:
evaluateGetCollEvents in class ExprSubselectNode

evaluateGetCollScalar

public java.util.Collection evaluateGetCollScalar(EventBean[] eventsPerStream,
                                                  boolean isNewData,
                                                  java.util.Collection<EventBean> matchingEvents,
                                                  ExprEvaluatorContext exprEvaluatorContext)
Specified by:
evaluateGetCollScalar in class ExprSubselectNode

getEventTypeCollection

public EventType getEventTypeCollection(EventAdapterService eventAdapterService,
                                        java.lang.String statementId)

getComponentTypeCollection

public java.lang.Class getComponentTypeCollection()
                                           throws ExprValidationException
Throws:
ExprValidationException

evaluateGetEventBean

public EventBean evaluateGetEventBean(EventBean[] eventsPerStream,
                                      boolean isNewData,
                                      java.util.Collection<EventBean> matchingEvents,
                                      ExprEvaluatorContext exprEvaluatorContext)
Specified by:
evaluateGetEventBean in class ExprSubselectNode

getEventTypeSingle

public EventType getEventTypeSingle(EventAdapterService eventAdapterService,
                                    java.lang.String statementId)
                             throws ExprValidationException
Throws:
ExprValidationException

evaluateGetEventBean

public EventBean evaluateGetEventBean(EventBean[] eventsPerStream,
                                      boolean isNewData,
                                      ExprEvaluatorContext context)
Specified by:
evaluateGetEventBean in interface ExprEvaluatorEnumeration
Overrides:
evaluateGetEventBean in class ExprSubselectNode

isAllowMultiColumnSelect

public boolean isAllowMultiColumnSelect()
Specified by:
isAllowMultiColumnSelect in class ExprSubselectNode

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