public class TimeLengthBatchView extends ViewSupport implements CloneableView, StoppableView, StopCallback, DataWindowView
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.
EMPTY_VIEW_ARRAY
Constructor and Description |
---|
TimeLengthBatchView(TimeLengthBatchViewFactory timeBatchViewFactory,
AgentInstanceViewFactoryChainContext agentInstanceContext,
ExprTimePeriodEvalDeltaConst timeDeltaComputation,
long numberOfEvents,
boolean forceOutput,
boolean isStartEager,
ViewUpdatedCollection viewUpdatedCollection)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
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() |
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.
|
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) |
addView, addView, dumpChildViews, dumpUpdateParams, dumpUpdateParams, findDescendent, findViewIndex, getParent, getViews, hasViews, removeAllViews, removeView, removeView, setParent, updateChildren
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
addView, getViews, hasViews, removeAllViews, removeView
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-eagerpublic 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
public void internalHandleAdded(EventBean newEvent)
public void internalHandleRemoved(EventBean eventBean)
public 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
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