Package org.apache.storm.windowing

## Interface WindowLifecycleListener<T>

- Type Parameters:
    `T` - The type of Event in the window (e.g. Tuple).

      public interface WindowLifecycleListener<T>

  A callback for expiry, activation of events tracked by the `WindowManager`.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `default void` | `onActivation​(Supplier<Iterator<T>> eventsIt, Supplier<Iterator<T>> newEventsIt, Supplier<Iterator<T>> expiredIt, Long referenceTime)` | Called on activation of the window due to the `TriggerPolicy`.
    `default void` | `onActivation​(List<T> events, List<T> newEvents, List<T> expired, Long referenceTime)` | Called on activation of the window due to the `TriggerPolicy`.
    `void` | `onExpiry​(List<T> events)` | Called on expiry of events from the window due to `EvictionPolicy`.

- - ### Method Detail

    - #### onExpiry

          void onExpiry​(List<T> events)

      Called on expiry of events from the window due to `EvictionPolicy`.
      Parameters:
        `events` - the expired events

    - #### onActivation

          default void onActivation​(List<T> events,
                                    List<T> newEvents,
                                    List<T> expired,
                                    Long referenceTime)

      Called on activation of the window due to the `TriggerPolicy`.
      Parameters:
        `events` - the list of current events in the window.
        `newEvents` - the newly added events since last activation.
        `expired` - the expired events since last activation.
        `referenceTime` - the reference (event or processing) time that resulted in activation

    - #### onActivation

          default void onActivation​(Supplier<Iterator<T>> eventsIt,
                                    Supplier<Iterator<T>> newEventsIt,
                                    Supplier<Iterator<T>> expiredIt,
                                    Long referenceTime)

      Called on activation of the window due to the `TriggerPolicy`. This is typically invoked when the windows are persisted in state and is huge to be loaded entirely in memory.
      Parameters:
        `eventsIt` - a supplier of iterator over the list of current events in the window
        `newEventsIt` - a supplier of iterator over the newly added events since the last ativation
        `expiredIt` - a supplier of iterator over the expired events since the last activation
        `referenceTime` - the reference (event or processing) time that resulted in activation