org.apache.storm.windowing

## Class WatermarkTimeTriggerPolicy<T>

- java.lang.Object
- - org.apache.storm.windowing.WatermarkTimeTriggerPolicy<T>

- All Implemented Interfaces:
    TriggerPolicy<T,Long>

      public class WatermarkTimeTriggerPolicy<T>
      extends Object
      implements TriggerPolicy<T,Long>

  Handles watermark events and triggers `TriggerHandler.onTrigger()` for each window interval that has events to be processed up to the watermark ts.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `WatermarkTimeTriggerPolicy(long slidingIntervalMs, TriggerHandler handler, EvictionPolicy<T,?> evictionPolicy, WindowManager<T> windowManager)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Long` | `getState()` Return runtime state to be checkpointed by the framework for restoring the trigger policy in case of failures.
    `void` | `reset()` resets the trigger policy.
    `void` | `restoreState(Long state)` Restore the trigger policy from the state that was earlier checkpointed by the framework.
    `void` | `shutdown()` Any clean up could be handled here.
    `void` | `start()` Starts the trigger policy.
    `String` | `toString()`
    `void` | `track(Event<T> event)` Tracks the event and could use this to invoke the trigger.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### WatermarkTimeTriggerPolicy

          public WatermarkTimeTriggerPolicy(long slidingIntervalMs,
                                            TriggerHandler handler,
                                            EvictionPolicy<T,?> evictionPolicy,
                                            WindowManager<T> windowManager)

  - ### Method Detail

    - #### track

          public void track(Event<T> event)

      Description copied from interface: `TriggerPolicy`

      Tracks the event and could use this to invoke the trigger.

      Specified by:
        `track` in interface `TriggerPolicy<T,Long>`
      Parameters:
        `event` - the input event

    - #### reset

          public void reset()

      Description copied from interface: `TriggerPolicy`

      resets the trigger policy.

      Specified by:
        `reset` in interface `TriggerPolicy<T,Long>`

    - #### start

          public void start()

      Description copied from interface: `TriggerPolicy`

      Starts the trigger policy. This can be used during recovery to start the triggers after recovery is complete.

      Specified by:
        `start` in interface `TriggerPolicy<T,Long>`

    - #### shutdown

          public void shutdown()

      Description copied from interface: `TriggerPolicy`

      Any clean up could be handled here.

      Specified by:
        `shutdown` in interface `TriggerPolicy<T,Long>`

    - #### getState

          public Long getState()

      Description copied from interface: `TriggerPolicy`

      Return runtime state to be checkpointed by the framework for restoring the trigger policy in case of failures.

      Specified by:
        `getState` in interface `TriggerPolicy<T,Long>`
      Returns:
        the state

    - #### restoreState

          public void restoreState(Long state)

      Description copied from interface: `TriggerPolicy`

      Restore the trigger policy from the state that was earlier checkpointed by the framework.

      Specified by:
        `restoreState` in interface `TriggerPolicy<T,Long>`
      Parameters:
        `state` - the state

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

Copyright © 2021 The Apache Software Foundation. All rights reserved.