Package org.opennms.nephron.cortex
Class CortexIo.WriteFnWithAccumulation<K,V>
- java.lang.Object
-
- org.apache.beam.sdk.transforms.DoFn<org.apache.beam.sdk.values.KV<K,V>,Void>
-
- org.opennms.nephron.cortex.CortexIo.WriteFn<K,V,org.opennms.nephron.cortex.CortexIo.WriteWithAccumulation<K,V>>
-
- org.opennms.nephron.cortex.CortexIo.WriteFnWithAccumulation<K,V>
-
- All Implemented Interfaces:
Serializable,org.apache.beam.sdk.transforms.display.HasDisplayData
- Enclosing class:
- CortexIo
public static class CortexIo.WriteFnWithAccumulation<K,V> extends CortexIo.WriteFn<K,V,org.opennms.nephron.cortex.CortexIo.WriteWithAccumulation<K,V>>
A Cortex sink that assigns unique index numbers and accumulates values.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.beam.sdk.transforms.DoFn
org.apache.beam.sdk.transforms.DoFn.AlwaysFetched, org.apache.beam.sdk.transforms.DoFn.BoundedPerElement, org.apache.beam.sdk.transforms.DoFn.BundleFinalizer, org.apache.beam.sdk.transforms.DoFn.Element, org.apache.beam.sdk.transforms.DoFn.FieldAccess, org.apache.beam.sdk.transforms.DoFn.FinishBundle, org.apache.beam.sdk.transforms.DoFn.FinishBundleContext, org.apache.beam.sdk.transforms.DoFn.GetInitialRestriction, org.apache.beam.sdk.transforms.DoFn.GetInitialWatermarkEstimatorState, org.apache.beam.sdk.transforms.DoFn.GetRestrictionCoder, org.apache.beam.sdk.transforms.DoFn.GetSize, org.apache.beam.sdk.transforms.DoFn.GetWatermarkEstimatorStateCoder, org.apache.beam.sdk.transforms.DoFn.Key, org.apache.beam.sdk.transforms.DoFn.MultiOutputReceiver, org.apache.beam.sdk.transforms.DoFn.NewTracker, org.apache.beam.sdk.transforms.DoFn.NewWatermarkEstimator, org.apache.beam.sdk.transforms.DoFn.OnTimer, org.apache.beam.sdk.transforms.DoFn.OnTimerContext, org.apache.beam.sdk.transforms.DoFn.OnTimerFamily, org.apache.beam.sdk.transforms.DoFn.OnWindowExpiration, org.apache.beam.sdk.transforms.DoFn.OnWindowExpirationContext, org.apache.beam.sdk.transforms.DoFn.OutputReceiver<T extends Object>, org.apache.beam.sdk.transforms.DoFn.ProcessContext, org.apache.beam.sdk.transforms.DoFn.ProcessContinuation, org.apache.beam.sdk.transforms.DoFn.ProcessElement, org.apache.beam.sdk.transforms.DoFn.RequiresStableInput, org.apache.beam.sdk.transforms.DoFn.RequiresTimeSortedInput, org.apache.beam.sdk.transforms.DoFn.Restriction, org.apache.beam.sdk.transforms.DoFn.Setup, org.apache.beam.sdk.transforms.DoFn.SideInput, org.apache.beam.sdk.transforms.DoFn.SplitRestriction, org.apache.beam.sdk.transforms.DoFn.StartBundle, org.apache.beam.sdk.transforms.DoFn.StartBundleContext, org.apache.beam.sdk.transforms.DoFn.StateId, org.apache.beam.sdk.transforms.DoFn.Teardown, org.apache.beam.sdk.transforms.DoFn.TimerFamily, org.apache.beam.sdk.transforms.DoFn.TimerId, org.apache.beam.sdk.transforms.DoFn.Timestamp, org.apache.beam.sdk.transforms.DoFn.TruncateRestriction, org.apache.beam.sdk.transforms.DoFn.UnboundedPerElement, org.apache.beam.sdk.transforms.DoFn.WatermarkEstimatorState, org.apache.beam.sdk.transforms.DoFn.WindowedContext
-
-
Field Summary
-
Fields inherited from class org.opennms.nephron.cortex.CortexIo.WriteFn
allowedLateness, spec
-
-
Constructor Summary
Constructors Constructor Description WriteFnWithAccumulation(org.opennms.nephron.cortex.CortexIo.WriteWithAccumulation<K,V> spec, org.joda.time.Duration allowedLateness)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidonGc(K key, org.apache.beam.sdk.state.ValueState<org.opennms.nephron.cortex.Heap.HeapImpl<V>> heapState)voidonOutput(org.apache.beam.sdk.transforms.DoFn.OnTimerContext ctx, K key, org.apache.beam.sdk.state.ValueState<org.opennms.nephron.cortex.Heap.HeapImpl<V>> heapState, org.apache.beam.sdk.state.Timer timer)voidprocessElement(org.apache.beam.sdk.transforms.DoFn.ProcessContext ctx, org.apache.beam.sdk.state.ValueState<org.opennms.nephron.cortex.Heap.HeapImpl<V>> heapState, org.apache.beam.sdk.state.Timer outputTimer, org.apache.beam.sdk.state.Timer gcTimer)-
Methods inherited from class org.opennms.nephron.cortex.CortexIo.WriteFn
closeClient, finishBundle, outputTimeSeries, setGcTimer, setup, startBatch, startBundle
-
-
-
-
Method Detail
-
processElement
@ProcessElement public void processElement(org.apache.beam.sdk.transforms.DoFn.ProcessContext ctx, @AlwaysFetched @StateId("heap") org.apache.beam.sdk.state.ValueState<org.opennms.nephron.cortex.Heap.HeapImpl<V>> heapState, @TimerId("output") org.apache.beam.sdk.state.Timer outputTimer, @TimerId("gc") org.apache.beam.sdk.state.Timer gcTimer) throws Exception- Throws:
Exception
-
onOutput
@OnTimer("output") public void onOutput(org.apache.beam.sdk.transforms.DoFn.OnTimerContext ctx, @Key K key, @AlwaysFetched @StateId("heap") org.apache.beam.sdk.state.ValueState<org.opennms.nephron.cortex.Heap.HeapImpl<V>> heapState, @TimerId("output") org.apache.beam.sdk.state.Timer timer) throws IOException- Throws:
IOException
-
onGc
@OnTimer("gc") public void onGc(@Key K key, @AlwaysFetched @StateId("heap") org.apache.beam.sdk.state.ValueState<org.opennms.nephron.cortex.Heap.HeapImpl<V>> heapState) throws IOException- Throws:
IOException
-
-