public class AggregationStateMinMaxByEver extends Object implements AggregationState, AggregationStateSorted
Modifier and Type | Field and Description |
---|---|
protected Object |
currentMinMax |
protected EventBean |
currentMinMaxBean |
protected AggregationStateMinMaxByEverSpec |
spec |
Constructor and Description |
---|
AggregationStateMinMaxByEver(AggregationStateMinMaxByEverSpec spec) |
Modifier and Type | Method and Description |
---|---|
protected void |
addEvent(EventBean theEvent,
EventBean[] eventsPerStream,
ExprEvaluatorContext exprEvaluatorContext) |
void |
applyEnter(EventBean[] eventsPerStream,
ExprEvaluatorContext exprEvaluatorContext)
Enter an event.
|
void |
applyLeave(EventBean[] eventsPerStream,
ExprEvaluatorContext exprEvaluatorContext)
Remove an event.
|
void |
clear()
Clear all events in the group.
|
Collection<EventBean> |
collectionReadOnly()
Returns all events for the group.
|
Object |
getCurrentMinMax() |
EventBean |
getCurrentMinMaxBean() |
EventBean |
getFirstValue()
Returns the first (oldest) value entered.
|
EventBean |
getLastValue()
Returns the newest (last) value entered.
|
Iterator<EventBean> |
getReverseIterator() |
AggregationStateMinMaxByEverSpec |
getSpec() |
Iterator<EventBean> |
iterator()
Returns all events for the group.
|
void |
setCurrentMinMax(Object currentMinMax) |
void |
setCurrentMinMaxBean(EventBean currentMinMaxBean) |
int |
size()
Returns the number of events in the group.
|
protected final AggregationStateMinMaxByEverSpec spec
protected EventBean currentMinMaxBean
protected Object currentMinMax
public AggregationStateMinMaxByEver(AggregationStateMinMaxByEverSpec spec)
public void clear()
AggregationState
clear
in interface AggregationState
public void applyEnter(EventBean[] eventsPerStream, ExprEvaluatorContext exprEvaluatorContext)
AggregationState
applyEnter
in interface AggregationState
eventsPerStream
- all events in all streams, typically implementations pick the relevant stream's events to addexprEvaluatorContext
- expression eval contextpublic void applyLeave(EventBean[] eventsPerStream, ExprEvaluatorContext exprEvaluatorContext)
AggregationState
applyLeave
in interface AggregationState
eventsPerStream
- all events in all streams, typically implementations pick the relevant stream's events to removeexprEvaluatorContext
- expression eval contextpublic EventBean getFirstValue()
AggregationStateSorted
getFirstValue
in interface AggregationStateSorted
public EventBean getLastValue()
AggregationStateSorted
getLastValue
in interface AggregationStateSorted
public Iterator<EventBean> iterator()
AggregationStateSorted
iterator
in interface AggregationStateSorted
public Iterator<EventBean> getReverseIterator()
getReverseIterator
in interface AggregationStateSorted
public Collection<EventBean> collectionReadOnly()
AggregationStateSorted
collectionReadOnly
in interface AggregationStateSorted
public int size()
AggregationStateSorted
size
in interface AggregationStateSorted
public AggregationStateMinMaxByEverSpec getSpec()
public EventBean getCurrentMinMaxBean()
public Object getCurrentMinMax()
public void setCurrentMinMaxBean(EventBean currentMinMaxBean)
public void setCurrentMinMax(Object currentMinMax)
protected void addEvent(EventBean theEvent, EventBean[] eventsPerStream, ExprEvaluatorContext exprEvaluatorContext)