public class OrFinallyTrigger extends Trigger
Trigger
that executes according to its main trigger until its "finally" trigger fires.
Uniquely among triggers, the "finally" trigger's predicate is applied to all input seen so far, not input since the last firing.
Trigger.OnceTrigger
subTriggers
Modifier and Type | Method and Description |
---|---|
protected Trigger |
getContinuationTrigger(java.util.List<Trigger> continuationTriggers)
Subclasses should override this to return the
Trigger.getContinuationTrigger() of this
Trigger . |
Trigger |
getMainTrigger()
The main trigger, which will continue firing until the "until" trigger fires.
|
Trigger.OnceTrigger |
getUntilTrigger()
The trigger that signals termination of this trigger.
|
Instant |
getWatermarkThatGuaranteesFiring(BoundedWindow window)
For internal use only; no backwards-compatibility guarantees.
|
java.lang.String |
toString() |
equals, getContinuationTrigger, hashCode, isCompatible, orFinally, subTriggers
public Trigger getMainTrigger()
getUntilTrigger()
public Trigger.OnceTrigger getUntilTrigger()
public Instant getWatermarkThatGuaranteesFiring(BoundedWindow window)
Trigger
Returns a bound in event time by which this trigger would have fired at least once for a given window had there been input data.
For triggers that do not fire based on the watermark advancing, returns BoundedWindow.TIMESTAMP_MAX_VALUE
.
This estimate may be used, for example, to determine that there are no elements in a side-input window, which causes the default value to be used instead.
getWatermarkThatGuaranteesFiring
in class Trigger
protected Trigger getContinuationTrigger(java.util.List<Trigger> continuationTriggers)
Trigger
Trigger.getContinuationTrigger()
of this
Trigger
. For convenience, this is provided the continuation trigger of each of the
sub-triggers in the same order as Trigger.subTriggers
.getContinuationTrigger
in class Trigger
continuationTriggers
- null if Trigger.subTriggers
is null, otherwise contains the
result of Trigger.getContinuationTrigger()
on each of the
subTriggers in the same order.