public static class FillGaps.FillGapsDoFn<ValueT> extends DoFn<KV<Row,ValueT>,ValueT>
DoFn.AlwaysFetched, DoFn.BoundedPerElement, DoFn.BundleFinalizer, DoFn.Element, DoFn.FieldAccess, DoFn.FinishBundle, DoFn.FinishBundleContext, DoFn.GetInitialRestriction, DoFn.GetInitialWatermarkEstimatorState, DoFn.GetRestrictionCoder, DoFn.GetSize, DoFn.GetWatermarkEstimatorStateCoder, DoFn.Key, DoFn.MultiOutputReceiver, DoFn.NewTracker, DoFn.NewWatermarkEstimator, DoFn.OnTimer, DoFn.OnTimerContext, DoFn.OnTimerFamily, DoFn.OnWindowExpiration, DoFn.OnWindowExpirationContext, DoFn.OutputReceiver<T>, DoFn.ProcessContext, DoFn.ProcessContinuation, DoFn.ProcessElement, DoFn.RequiresStableInput, DoFn.RequiresTimeSortedInput, DoFn.Restriction, DoFn.Setup, DoFn.SideInput, DoFn.SplitRestriction, DoFn.StartBundle, DoFn.StartBundleContext, DoFn.StateId, DoFn.Teardown, DoFn.TimerFamily, DoFn.TimerId, DoFn.Timestamp, DoFn.TruncateRestriction, DoFn.UnboundedPerElement, DoFn.WatermarkEstimatorState, DoFn.WindowedContext
Modifier and Type | Method and Description |
---|---|
void |
onGcTimer(Instant timerTs,
ValueState<java.util.SortedMap<Instant,TimestampedValue<ValueT>>> seenBuckets,
ValueState<java.util.SortedMap<Instant,java.lang.Long>> gapDurations) |
void |
onTimer(java.lang.String timerId,
Instant timestamp,
TimerMap gapTimers,
TimerMap gcTimers,
ValueState<java.util.SortedMap<Instant,TimestampedValue<ValueT>>> seenBuckets,
ValueState<java.util.SortedMap<Instant,java.lang.Long>> gapDurations,
DoFn.OutputReceiver<ValueT> output) |
void |
process(KV<Row,ValueT> element,
Instant ts,
TimerMap gapTimers,
TimerMap gcTimers,
ValueState<java.util.SortedMap<Instant,TimestampedValue<ValueT>>> seenBuckets,
DoFn.OutputReceiver<ValueT> output) |
getAllowedTimestampSkew, getInputTypeDescriptor, getOutputTypeDescriptor, populateDisplayData, prepareForProcessing
@DoFn.ProcessElement public void process(@DoFn.Element KV<Row,ValueT> element, @DoFn.Timestamp Instant ts, @DoFn.TimerFamily(value="gapTimers") TimerMap gapTimers, @DoFn.TimerFamily(value="gcTimers") TimerMap gcTimers, @DoFn.AlwaysFetched @DoFn.StateId(value="seenBuckets") ValueState<java.util.SortedMap<Instant,TimestampedValue<ValueT>>> seenBuckets, DoFn.OutputReceiver<ValueT> output)
@DoFn.OnTimerFamily(value="gapTimers") public void onTimer(@DoFn.TimerId java.lang.String timerId, @DoFn.Timestamp Instant timestamp, @DoFn.TimerFamily(value="gapTimers") TimerMap gapTimers, @DoFn.TimerFamily(value="gcTimers") TimerMap gcTimers, @DoFn.AlwaysFetched @DoFn.StateId(value="seenBuckets") ValueState<java.util.SortedMap<Instant,TimestampedValue<ValueT>>> seenBuckets, @DoFn.AlwaysFetched @DoFn.StateId(value="gapDurationMap") ValueState<java.util.SortedMap<Instant,java.lang.Long>> gapDurations, DoFn.OutputReceiver<ValueT> output)
@DoFn.OnTimerFamily(value="gcTimers") public void onGcTimer(@DoFn.Timestamp Instant timerTs, @DoFn.AlwaysFetched @DoFn.StateId(value="seenBuckets") ValueState<java.util.SortedMap<Instant,TimestampedValue<ValueT>>> seenBuckets, @DoFn.AlwaysFetched @DoFn.StateId(value="gapDurationMap") ValueState<java.util.SortedMap<Instant,java.lang.Long>> gapDurations)