Package org.apache.storm.windowing
Class StatefulWindowManager<T>
- java.lang.Object
-
- org.apache.storm.windowing.WindowManager<T>
-
- org.apache.storm.windowing.StatefulWindowManager<T>
-
- All Implemented Interfaces:
TriggerHandler
public class StatefulWindowManager<T> extends WindowManager<T>
Window manager that handles windows with state persistence.
-
-
Field Summary
-
Fields inherited from class org.apache.storm.windowing.WindowManager
evictionPolicy, EXPIRE_EVENTS_THRESHOLD, queue, triggerPolicy, windowLifecycleListener
-
-
Constructor Summary
Constructors Constructor Description StatefulWindowManager(WindowLifecycleListener<T> lifecycleListener)StatefulWindowManager(WindowLifecycleListener<T> lifecycleListener, Collection<Event<T>> queue)Constructs aStatefulWindowManager.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcompactWindow()expires events that fall out of the window every EXPIRE_EVENTS_THRESHOLD so that the window does not grow too big.booleanonTrigger()The callback invoked by the trigger policy.-
Methods inherited from class org.apache.storm.windowing.WindowManager
add, add, add, getEarliestEventTs, getEventCount, getSlidingCountTimestamps, getState, restoreState, setEvictionPolicy, setTriggerPolicy, shutdown, toString
-
-
-
-
Constructor Detail
-
StatefulWindowManager
public StatefulWindowManager(WindowLifecycleListener<T> lifecycleListener)
-
StatefulWindowManager
public StatefulWindowManager(WindowLifecycleListener<T> lifecycleListener, Collection<Event<T>> queue)
Constructs aStatefulWindowManager.- Parameters:
lifecycleListener- theWindowLifecycleListenerqueue- a collection where the events in the window can be enqueued.
Note: This collection has to be thread safe.
-
-
Method Detail
-
compactWindow
protected void compactWindow()
Description copied from class:WindowManagerexpires events that fall out of the window every EXPIRE_EVENTS_THRESHOLD so that the window does not grow too big.- Overrides:
compactWindowin classWindowManager<T>
-
onTrigger
public boolean onTrigger()
Description copied from class:WindowManagerThe callback invoked by the trigger policy.- Specified by:
onTriggerin interfaceTriggerHandler- Overrides:
onTriggerin classWindowManager<T>- Returns:
- true if the window was evaluated with at least one event in the window, false otherwise
-
-