public class ExprAggMultiFunctionSortedMinMaxByNode extends ExprAggregateNodeBase implements ExprEvaluatorEnumeration, ExprAggregateAccessMultiValueNode
aggregationResultFuture, column, isDistinct, optionalAggregateLocalGroupByDesc, optionalFilter, positionalParams
Constructor and Description |
---|
ExprAggMultiFunctionSortedMinMaxByNode(boolean max,
boolean ever,
boolean sortedwin) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
equalsNodeAggregateMethodOnly(ExprAggregateNode node)
Return true if a expression aggregate node semantically equals the current node, or false if not.
|
EventBean |
evaluateGetEventBean(EventBean[] eventsPerStream,
boolean isNewData,
ExprEvaluatorContext context) |
Collection<EventBean> |
evaluateGetROCollectionEvents(EventBean[] eventsPerStream,
boolean isNewData,
ExprEvaluatorContext context) |
Collection |
evaluateGetROCollectionScalar(EventBean[] eventsPerStream,
boolean isNewData,
ExprEvaluatorContext context) |
String |
getAggregationFunctionName()
Returns the aggregation function name for representation in a generate expression string.
|
Class |
getComponentTypeCollection() |
EventType |
getEventTypeCollection(EventAdapterService eventAdapterService,
int statementId) |
EventType |
getEventTypeSingle(EventAdapterService eventAdapterService,
int statementId) |
protected boolean |
isFilterExpressionAsLastParameter() |
boolean |
isMax() |
void |
toPrecedenceFreeEPL(StringWriter writer) |
AggregationMethodFactory |
validateAggregationChild(ExprValidationContext validationContext)
Gives the aggregation node a chance to validate the sub-expression types.
|
AggregationMethodFactory |
validateAggregationParamsWBinding(ExprValidationContext validationContext,
TableMetadataColumnAggregation tableAccessColumn) |
equalsNode, evaluate, getExprEvaluator, getFactory, getOptionalFilter, getOptionalLocalGroupBy, getPositionalParams, getPrecedence, getType, isConstantResult, isDistinct, isExprTextWildcardWhenNoParams, makeExceptionExpectedParamNum, setAggregationResultFuture, validate, validateFilter, validateNumericChildAllowFilter, validatePositionals
accept, accept, acceptChildnodes, addChildNode, addChildNodes, addChildNodeToFront, getChildNodes, replaceUnlistedChildNode, setChildNode, setChildNodes, toEPL
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
validatePositionals
accept, accept, acceptChildnodes, addChildNode, addChildNodes, getChildNodes, replaceUnlistedChildNode, setChildNode, setChildNodes, toEPL
public ExprAggMultiFunctionSortedMinMaxByNode(boolean max, boolean ever, boolean sortedwin)
public AggregationMethodFactory validateAggregationParamsWBinding(ExprValidationContext validationContext, TableMetadataColumnAggregation tableAccessColumn) throws ExprValidationException
validateAggregationParamsWBinding
in interface ExprAggregateAccessMultiValueNode
ExprValidationException
public AggregationMethodFactory validateAggregationChild(ExprValidationContext validationContext) throws ExprValidationException
ExprAggregateNodeBase
validateAggregationChild
in class ExprAggregateNodeBase
validationContext
- validation informationExprValidationException
- when expression validation failedpublic String getAggregationFunctionName()
ExprAggregateNodeBase
getAggregationFunctionName
in class ExprAggregateNodeBase
public void toPrecedenceFreeEPL(StringWriter writer)
toPrecedenceFreeEPL
in class ExprAggregateNodeBase
public Collection<EventBean> evaluateGetROCollectionEvents(EventBean[] eventsPerStream, boolean isNewData, ExprEvaluatorContext context)
evaluateGetROCollectionEvents
in interface ExprEvaluatorEnumeration
public Collection evaluateGetROCollectionScalar(EventBean[] eventsPerStream, boolean isNewData, ExprEvaluatorContext context)
evaluateGetROCollectionScalar
in interface ExprEvaluatorEnumeration
public EventType getEventTypeCollection(EventAdapterService eventAdapterService, int statementId)
getEventTypeCollection
in interface ExprEvaluatorEnumeration
public Class getComponentTypeCollection() throws ExprValidationException
getComponentTypeCollection
in interface ExprEvaluatorEnumeration
ExprValidationException
public EventType getEventTypeSingle(EventAdapterService eventAdapterService, int statementId) throws ExprValidationException
getEventTypeSingle
in interface ExprEvaluatorEnumeration
ExprValidationException
public EventBean evaluateGetEventBean(EventBean[] eventsPerStream, boolean isNewData, ExprEvaluatorContext context)
evaluateGetEventBean
in interface ExprEvaluatorEnumeration
public boolean isMax()
protected boolean isFilterExpressionAsLastParameter()
isFilterExpressionAsLastParameter
in class ExprAggregateNodeBase
protected boolean equalsNodeAggregateMethodOnly(ExprAggregateNode node)
ExprAggregateNodeBase
For use by the equalsNode implementation which compares the distinct flag.
equalsNodeAggregateMethodOnly
in class ExprAggregateNodeBase
node
- to compare to