Skip to main content

WindowTrigger

Trait WindowTrigger 

Source
pub trait WindowTrigger: Send + Sync {
    // Required methods
    fn on_element(
        &mut self,
        element: &StreamElement,
        window: &Window,
        state: &WindowState,
    ) -> TriggerResult;
    fn on_processing_time(
        &mut self,
        time: DateTime<Utc>,
        window: &Window,
    ) -> TriggerResult;
    fn on_event_time(
        &mut self,
        time: DateTime<Utc>,
        window: &Window,
    ) -> TriggerResult;
    fn on_merge(
        &mut self,
        window: &Window,
        merged_windows: &[Window],
    ) -> TriggerResult;
    fn clear(&mut self);
}
Expand description

Determines when a window should emit results.

Required Methods§

Source

fn on_element( &mut self, element: &StreamElement, window: &Window, state: &WindowState, ) -> TriggerResult

Called when an element is added to a window.

Source

fn on_processing_time( &mut self, time: DateTime<Utc>, window: &Window, ) -> TriggerResult

Called when processing time advances.

Source

fn on_event_time( &mut self, time: DateTime<Utc>, window: &Window, ) -> TriggerResult

Called when event time (watermark) advances.

Source

fn on_merge( &mut self, window: &Window, merged_windows: &[Window], ) -> TriggerResult

Called when windows are merged.

Source

fn clear(&mut self)

Clear the trigger state.

Implementors§