Interface Trigger.TriggerContext
-
- All Known Subinterfaces:
Trigger.OnMergeContext
- All Known Implementing Classes:
WindowOperator.Context
public static interface Trigger.TriggerContext
A context object that is given toTrigger
methods to allow them to register timer callbacks and deal with state.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
deleteEventTimeTimer(long time)
Delete the event-time trigger for the given time.void
deleteProcessingTimeTimer(long time)
Delete the processing time trigger for the given time.long
getCurrentProcessingTime()
Returns the current processing time.long
getCurrentWatermark()
Returns the current watermark time.MetricGroup
getMetricGroup()
Returns the metric group for thisTrigger
.<S extends State>
SgetPartitionedState(StateDescriptor<S,?> stateDescriptor)
Retrieves aState
object that can be used to interact with fault-tolerant state that is scoped to the window and key of the current trigger invocation.void
registerEventTimeTimer(long time)
Register an event-time callback.void
registerProcessingTimeTimer(long time)
Register a system time callback.
-
-
-
Method Detail
-
getCurrentProcessingTime
long getCurrentProcessingTime()
Returns the current processing time.
-
getMetricGroup
MetricGroup getMetricGroup()
Returns the metric group for thisTrigger
. This is the same metric group that would be returned fromRuntimeContext.getMetricGroup()
in a user function.You must not call methods that create metric objects (such as
MetricGroup.counter(int)
multiple times but instead call once and store the metric object in a field.
-
getCurrentWatermark
long getCurrentWatermark()
Returns the current watermark time.
-
registerProcessingTimeTimer
void registerProcessingTimeTimer(long time)
Register a system time callback. When the current system time passes the specified timeTrigger.onProcessingTime(long, Window, TriggerContext)
is called with the time specified here.- Parameters:
time
- The time at which to invokeTrigger.onProcessingTime(long, Window, TriggerContext)
-
registerEventTimeTimer
void registerEventTimeTimer(long time)
Register an event-time callback. When the current watermark passes the specified timeTrigger.onEventTime(long, Window, TriggerContext)
is called with the time specified here.- Parameters:
time
- The watermark at which to invokeTrigger.onEventTime(long, Window, TriggerContext)
- See Also:
Watermark
-
deleteProcessingTimeTimer
void deleteProcessingTimeTimer(long time)
Delete the processing time trigger for the given time.
-
deleteEventTimeTimer
void deleteEventTimeTimer(long time)
Delete the event-time trigger for the given time.
-
getPartitionedState
<S extends State> S getPartitionedState(StateDescriptor<S,?> stateDescriptor)
Retrieves aState
object that can be used to interact with fault-tolerant state that is scoped to the window and key of the current trigger invocation.- Type Parameters:
S
- The type of the state.- Parameters:
stateDescriptor
- The StateDescriptor that contains the name and type of the state that is being accessed.- Returns:
- The partitioned state object.
- Throws:
UnsupportedOperationException
- Thrown, if no partitioned state is available for the function (function is not part os a KeyedStream).
-
-