|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.espertech.esper.view.ViewSupport
com.espertech.esper.view.window.TimeLengthBatchView
public class TimeLengthBatchView
A data view that aggregates events in a stream and releases them in one batch if either one of these conditions is reached, whichever comes first: One, a time interval passes. Two, a given number of events collected.
The view releases the batched events after the interval or number of events as new data to child views. The prior batch if not empty is released as old data to child view. The view DOES release intervals with no old or new data. It does not collect old data published by a parent view. If there are no events in the current and prior batch, the view WILL invoke the update method of child views.
The view starts the first interval when the view is created.
Field Summary | |
---|---|
protected AgentInstanceViewFactoryChainContext |
agentInstanceContext
|
protected java.lang.Long |
callbackScheduledTime
|
protected java.util.ArrayList<EventBean> |
currentBatch
|
protected EPStatementHandleCallback |
handle
|
protected boolean |
isForceOutput
|
protected boolean |
isStartEager
|
protected java.util.ArrayList<EventBean> |
lastBatch
|
protected long |
numberOfEvents
|
protected ScheduleSlot |
scheduleSlot
|
protected ExprTimePeriodEvalDeltaConst |
timeDeltaComputation
|
protected ViewUpdatedCollection |
viewUpdatedCollection
|
Fields inherited from class com.espertech.esper.view.ViewSupport |
---|
EMPTY_VIEW_ARRAY, parent |
Constructor Summary | |
---|---|
TimeLengthBatchView(TimeLengthBatchViewFactory timeBatchViewFactory,
AgentInstanceViewFactoryChainContext agentInstanceContext,
ExprTimePeriodEvalDeltaConst timeDeltaComputation,
long numberOfEvents,
boolean forceOutput,
boolean isStartEager,
ViewUpdatedCollection viewUpdatedCollection)
Constructor. |
Method Summary | |
---|---|
View |
cloneView()
Duplicates the view. |
EventType |
getEventType()
Provides metadata information about the type of object the event collection contains. |
long |
getNumberOfEvents()
Returns the length of the batch. |
ExprTimePeriodEvalDeltaConst |
getTimeDeltaComputation()
|
ViewFactory |
getViewFactory()
|
void |
internalHandleAdded(EventBean newEvent)
|
void |
internalHandleRemoved(EventBean eventBean)
|
boolean |
isEmpty()
Returns true if the window is empty, or false if not empty. |
boolean |
isForceOutput()
True for force-output. |
boolean |
isStartEager()
True for start-eager. |
java.util.Iterator<EventBean> |
iterator()
Allows iteration through all elements in this event collection. |
protected void |
scheduleCallback(long delta)
|
protected void |
sendBatch(boolean isFromSchedule)
This method updates child views and clears the batch of events. |
void |
stop()
Stops the underlying resources. |
void |
stopSchedule()
|
void |
stopView()
|
java.lang.String |
toString()
|
void |
update(EventBean[] newData,
EventBean[] oldData)
Notify that data has been added or removed from the Viewable parent. |
void |
visitView(ViewDataVisitor viewDataVisitor)
|
Methods inherited from class com.espertech.esper.view.ViewSupport |
---|
addView, addView, dumpChildViews, dumpUpdateParams, dumpUpdateParams, findDescendent, findViewIndex, getParent, getViews, hasViews, removeAllViews, removeView, removeView, setParent, updateChildren, updateChildren |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface com.espertech.esper.view.View |
---|
getParent, setParent |
Methods inherited from interface com.espertech.esper.view.Viewable |
---|
addView, getViews, hasViews, removeAllViews, removeView |
Field Detail |
---|
protected final AgentInstanceViewFactoryChainContext agentInstanceContext
protected final ExprTimePeriodEvalDeltaConst timeDeltaComputation
protected final long numberOfEvents
protected final boolean isForceOutput
protected final boolean isStartEager
protected final ViewUpdatedCollection viewUpdatedCollection
protected final ScheduleSlot scheduleSlot
protected java.util.ArrayList<EventBean> lastBatch
protected java.util.ArrayList<EventBean> currentBatch
protected java.lang.Long callbackScheduledTime
protected EPStatementHandleCallback handle
Constructor Detail |
---|
public TimeLengthBatchView(TimeLengthBatchViewFactory timeBatchViewFactory, AgentInstanceViewFactoryChainContext agentInstanceContext, ExprTimePeriodEvalDeltaConst timeDeltaComputation, long numberOfEvents, boolean forceOutput, boolean isStartEager, ViewUpdatedCollection viewUpdatedCollection)
numberOfEvents
- is the event count before the batch fires offviewUpdatedCollection
- is a collection that the view must update when receiving eventstimeBatchViewFactory
- for copying this view in a group-byforceOutput
- is true if the batch should produce empty output if there is no value to output following time intervalsisStartEager
- is true for start-eagerMethod Detail |
---|
public View cloneView()
CloneableView
Expected to return a same view in initialized state for grouping.
cloneView
in interface CloneableView
public ExprTimePeriodEvalDeltaConst getTimeDeltaComputation()
public boolean isForceOutput()
public long getNumberOfEvents()
public boolean isStartEager()
public final EventType getEventType()
EventCollection
getEventType
in interface EventCollection
public void update(EventBean[] newData, EventBean[] oldData)
View
update
in interface View
newData
- is the new data that has been added to the parent viewoldData
- is the old data that has been removed from the parent viewpublic void internalHandleAdded(EventBean newEvent)
public void internalHandleRemoved(EventBean eventBean)
protected void sendBatch(boolean isFromSchedule)
isFromSchedule
- true if invoked from a schedule, false if notpublic boolean isEmpty()
public final java.util.Iterator<EventBean> iterator()
EventCollection
iterator
in interface EventCollection
iterator
in interface java.lang.Iterable<EventBean>
public final java.lang.String toString()
toString
in class java.lang.Object
protected void scheduleCallback(long delta)
public void stopView()
stopView
in interface StoppableView
public void stop()
StopCallback
stop
in interface StopCallback
public void stopSchedule()
public void visitView(ViewDataVisitor viewDataVisitor)
visitView
in interface ViewDataVisitable
public ViewFactory getViewFactory()
getViewFactory
in interface GroupableView
|
© 2006-2015 EsperTech Inc. All rights reserved. Visit us at espertech.com |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |