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§
Sourcefn on_element(
&mut self,
element: &StreamElement,
window: &Window,
state: &WindowState,
) -> TriggerResult
fn on_element( &mut self, element: &StreamElement, window: &Window, state: &WindowState, ) -> TriggerResult
Called when an element is added to a window.
Sourcefn on_processing_time(
&mut self,
time: DateTime<Utc>,
window: &Window,
) -> TriggerResult
fn on_processing_time( &mut self, time: DateTime<Utc>, window: &Window, ) -> TriggerResult
Called when processing time advances.
Sourcefn on_event_time(
&mut self,
time: DateTime<Utc>,
window: &Window,
) -> TriggerResult
fn on_event_time( &mut self, time: DateTime<Utc>, window: &Window, ) -> TriggerResult
Called when event time (watermark) advances.
Sourcefn on_merge(
&mut self,
window: &Window,
merged_windows: &[Window],
) -> TriggerResult
fn on_merge( &mut self, window: &Window, merged_windows: &[Window], ) -> TriggerResult
Called when windows are merged.