public static class IncrementalLearningSkeleton.LinearTimestamp extends Object implements AssignerWithPunctuatedWatermarks<Integer>
Constructor and Description |
---|
LinearTimestamp() |
Modifier and Type | Method and Description |
---|---|
Watermark |
checkAndGetNextWatermark(Integer lastElement,
long extractedTimestamp)
Asks this implementation if it wants to emit a watermark.
|
long |
extractTimestamp(Integer element,
long previousElementTimestamp)
Assigns a timestamp to an element, in milliseconds since the Epoch.
|
public long extractTimestamp(Integer element, long previousElementTimestamp)
TimestampAssigner
The method is passed the previously assigned timestamp of the element.
That previous timestamp may have been assigned from a previous assigner,
by ingestion time. If the element did not carry a timestamp before, this value is
Long.MIN_VALUE
.
extractTimestamp
in interface TimestampAssigner<Integer>
element
- The element that the timestamp is wil be assigned to.previousElementTimestamp
- The previous internal timestamp of the element,
or a negative value, if no timestamp has been assigned, yet.public Watermark checkAndGetNextWatermark(Integer lastElement, long extractedTimestamp)
AssignerWithPunctuatedWatermarks
TimestampAssigner.extractTimestamp(Object, long)
method.
The returned watermark will be emitted only if it is non-null and its timestamp is larger than that of the previously emitted watermark (to preserve the contract of ascending watermarks). If a null value is returned, or the timestamp of the returned watermark is smaller than that of the last emitted one, then no new watermark will be generated.
For an example how to use this method, see the documentation of
this class
.
checkAndGetNextWatermark
in interface AssignerWithPunctuatedWatermarks<Integer>
Null
, if no watermark should be emitted, or the next watermark to emit.Copyright © 2014–2017 The Apache Software Foundation. All rights reserved.