Class DefaultSequenceCombiner<EventKeyT,EventT,StateT extends MutableState<EventT,?>>
- java.lang.Object
-
- org.apache.beam.sdk.transforms.Combine.CombineFn<org.apache.beam.sdk.values.TimestampedValue<org.apache.beam.sdk.values.KV<EventKeyT,org.apache.beam.sdk.values.KV<java.lang.Long,EventT>>>,SequenceRangeAccumulator,ContiguousSequenceRange>
-
- org.apache.beam.sdk.extensions.ordered.combiner.DefaultSequenceCombiner<EventKeyT,EventT,StateT>
-
- Type Parameters:
EventKeyT- type of keyEventT- type of eventStateT- type of state
- All Implemented Interfaces:
java.io.Serializable,org.apache.beam.sdk.transforms.CombineFnBase.GlobalCombineFn<org.apache.beam.sdk.values.TimestampedValue<org.apache.beam.sdk.values.KV<EventKeyT,org.apache.beam.sdk.values.KV<java.lang.Long,EventT>>>,SequenceRangeAccumulator,ContiguousSequenceRange>,org.apache.beam.sdk.transforms.display.HasDisplayData
public class DefaultSequenceCombiner<EventKeyT,EventT,StateT extends MutableState<EventT,?>> extends org.apache.beam.sdk.transforms.Combine.CombineFn<org.apache.beam.sdk.values.TimestampedValue<org.apache.beam.sdk.values.KV<EventKeyT,org.apache.beam.sdk.values.KV<java.lang.Long,EventT>>>,SequenceRangeAccumulator,ContiguousSequenceRange>
Default global sequence combiner.Produces the largest
ContiguousSequenceRangeof contiguous longs which starts from the initial event identified byEventExaminer#isInitialEvent(long, EventT).This combiner currently doesn't use
EventExaminer#isLastEvent(long, EventT).- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description DefaultSequenceCombiner(EventExaminer<EventT,StateT> eventExaminer)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SequenceRangeAccumulatoraddInput(SequenceRangeAccumulator accum, org.apache.beam.sdk.values.TimestampedValue<org.apache.beam.sdk.values.KV<EventKeyT,org.apache.beam.sdk.values.KV<java.lang.Long,EventT>>> event)SequenceRangeAccumulatorcreateAccumulator()ContiguousSequenceRangeextractOutput(SequenceRangeAccumulator accum)java.lang.reflect.TypeVariable<?>getAccumTVariable()@UnknownKeyFor @NonNull @Initialized org.apache.beam.sdk.coders.Coder<SequenceRangeAccumulator>getAccumulatorCoder(@UnknownKeyFor @NonNull @Initialized org.apache.beam.sdk.coders.CoderRegistry registry, @UnknownKeyFor @NonNull @Initialized org.apache.beam.sdk.coders.Coder<org.apache.beam.sdk.values.TimestampedValue<org.apache.beam.sdk.values.KV<EventKeyT,org.apache.beam.sdk.values.KV<java.lang.Long,EventT>>>> inputCoder)org.apache.beam.sdk.coders.Coder<OutputT>getDefaultOutputCoder(org.apache.beam.sdk.coders.CoderRegistry arg0, org.apache.beam.sdk.coders.Coder<@UnknownKeyFor @NonNull @Initialized InputT> arg1)java.lang.StringgetIncompatibleGlobalWindowErrorMessage()java.lang.reflect.TypeVariable<?>getInputTVariable()java.lang.reflect.TypeVariable<?>getOutputTVariable()SequenceRangeAccumulatormergeAccumulators(java.lang.Iterable<SequenceRangeAccumulator> accumulators)voidpopulateDisplayData(org.apache.beam.sdk.transforms.display.DisplayData.Builder arg0)
-
-
-
Constructor Detail
-
DefaultSequenceCombiner
public DefaultSequenceCombiner(EventExaminer<EventT,StateT> eventExaminer)
-
-
Method Detail
-
createAccumulator
public SequenceRangeAccumulator createAccumulator()
- Specified by:
createAccumulatorin classorg.apache.beam.sdk.transforms.Combine.CombineFn<org.apache.beam.sdk.values.TimestampedValue<org.apache.beam.sdk.values.KV<EventKeyT,org.apache.beam.sdk.values.KV<java.lang.Long,EventT>>>,SequenceRangeAccumulator,ContiguousSequenceRange>
-
addInput
public SequenceRangeAccumulator addInput(SequenceRangeAccumulator accum, org.apache.beam.sdk.values.TimestampedValue<org.apache.beam.sdk.values.KV<EventKeyT,org.apache.beam.sdk.values.KV<java.lang.Long,EventT>>> event)
- Specified by:
addInputin classorg.apache.beam.sdk.transforms.Combine.CombineFn<org.apache.beam.sdk.values.TimestampedValue<org.apache.beam.sdk.values.KV<EventKeyT,org.apache.beam.sdk.values.KV<java.lang.Long,EventT>>>,SequenceRangeAccumulator,ContiguousSequenceRange>
-
mergeAccumulators
public SequenceRangeAccumulator mergeAccumulators(java.lang.Iterable<SequenceRangeAccumulator> accumulators)
- Specified by:
mergeAccumulatorsin classorg.apache.beam.sdk.transforms.Combine.CombineFn<org.apache.beam.sdk.values.TimestampedValue<org.apache.beam.sdk.values.KV<EventKeyT,org.apache.beam.sdk.values.KV<java.lang.Long,EventT>>>,SequenceRangeAccumulator,ContiguousSequenceRange>
-
extractOutput
public ContiguousSequenceRange extractOutput(SequenceRangeAccumulator accum)
- Specified by:
extractOutputin classorg.apache.beam.sdk.transforms.Combine.CombineFn<org.apache.beam.sdk.values.TimestampedValue<org.apache.beam.sdk.values.KV<EventKeyT,org.apache.beam.sdk.values.KV<java.lang.Long,EventT>>>,SequenceRangeAccumulator,ContiguousSequenceRange>
-
getAccumulatorCoder
public @UnknownKeyFor @NonNull @Initialized org.apache.beam.sdk.coders.Coder<SequenceRangeAccumulator> getAccumulatorCoder(@UnknownKeyFor @NonNull @Initialized org.apache.beam.sdk.coders.CoderRegistry registry, @UnknownKeyFor @NonNull @Initialized org.apache.beam.sdk.coders.Coder<org.apache.beam.sdk.values.TimestampedValue<org.apache.beam.sdk.values.KV<EventKeyT,org.apache.beam.sdk.values.KV<java.lang.Long,EventT>>>> inputCoder) throws @UnknownKeyFor @NonNull @Initialized org.apache.beam.sdk.coders.CannotProvideCoderException
- Specified by:
getAccumulatorCoderin interfaceorg.apache.beam.sdk.transforms.CombineFnBase.GlobalCombineFn<EventKeyT,EventT,StateT extends MutableState<EventT,?>>- Throws:
@UnknownKeyFor @NonNull @Initialized org.apache.beam.sdk.coders.CannotProvideCoderException
-
getDefaultOutputCoder
public org.apache.beam.sdk.coders.Coder<OutputT> getDefaultOutputCoder(org.apache.beam.sdk.coders.CoderRegistry arg0, org.apache.beam.sdk.coders.Coder<@UnknownKeyFor @NonNull @Initialized InputT> arg1) throws org.apache.beam.sdk.coders.CannotProvideCoderException- Specified by:
getDefaultOutputCoderin interfaceorg.apache.beam.sdk.transforms.CombineFnBase.GlobalCombineFn<InputT extends java.lang.Object,AccumT extends java.lang.Object,OutputT extends java.lang.Object>- Throws:
org.apache.beam.sdk.coders.CannotProvideCoderException
-
getIncompatibleGlobalWindowErrorMessage
public java.lang.String getIncompatibleGlobalWindowErrorMessage()
- Specified by:
getIncompatibleGlobalWindowErrorMessagein interfaceorg.apache.beam.sdk.transforms.CombineFnBase.GlobalCombineFn<InputT extends java.lang.Object,AccumT extends java.lang.Object,OutputT extends java.lang.Object>
-
getInputTVariable
public java.lang.reflect.TypeVariable<?> getInputTVariable()
-
getAccumTVariable
public java.lang.reflect.TypeVariable<?> getAccumTVariable()
-
getOutputTVariable
public java.lang.reflect.TypeVariable<?> getOutputTVariable()
-
populateDisplayData
public void populateDisplayData(org.apache.beam.sdk.transforms.display.DisplayData.Builder arg0)
- Specified by:
populateDisplayDatain interfaceorg.apache.beam.sdk.transforms.display.HasDisplayData
-
-