@Experimental(value=TRIGGER) public class AfterProcessingTime extends Trigger.OnceTrigger
Trigger
trigger that fires at a specified point in processing time, relative to when
input first arrives.Trigger.OnceTrigger
subTriggers
Modifier and Type | Method and Description |
---|---|
AfterProcessingTime |
alignedTo(Duration period)
Aligns the time to be the smallest multiple of
period greater than the epoch boundary
(aka new Instant(0) ). |
AfterProcessingTime |
alignedTo(Duration period,
Instant offset)
Aligns timestamps to the smallest multiple of
period since the offset greater
than the timestamp. |
boolean |
equals(java.lang.Object obj) |
protected Trigger |
getContinuationTrigger(java.util.List<Trigger> continuationTriggers)
Subclasses should override this to return the
Trigger.getContinuationTrigger() of this Trigger . |
java.util.List<TimestampTransform> |
getTimestampTransforms()
The transforms applied to the arrival time of an element to determine when this trigger allows
output.
|
Instant |
getWatermarkThatGuaranteesFiring(BoundedWindow window)
For internal use only; no backwards-compatibility guarantees.
|
int |
hashCode() |
boolean |
isCompatible(Trigger other)
For internal use only; no backwards-compatibility guarantees.
|
static AfterProcessingTime |
pastFirstElementInPane()
Creates a trigger that fires when the current processing time passes the processing time at
which this trigger saw the first element in a pane.
|
AfterProcessingTime |
plusDelayOf(Duration delay)
Adds some delay to the original target time.
|
java.lang.String |
toString() |
getContinuationTrigger, mayFinish
orFinally, subTriggers
public static AfterProcessingTime pastFirstElementInPane()
public java.util.List<TimestampTransform> getTimestampTransforms()
public AfterProcessingTime plusDelayOf(Duration delay)
delay
- the delay to addpublic AfterProcessingTime alignedTo(Duration period, Instant offset)
period
since the offset
greater
than the timestamp.public AfterProcessingTime alignedTo(Duration period)
period
greater than the epoch boundary
(aka new Instant(0)
).public boolean isCompatible(Trigger other)
Trigger
Returns whether this performs the same triggering as the given Trigger
.
isCompatible
in class Trigger
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.