Class TwoOutputProcessOperator<IN,OUT_MAIN,OUT_SIDE>
java.lang.Object
org.apache.flink.streaming.api.operators.AbstractStreamOperator<OUT>
org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateStreamOperator<OUT>
org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateUdfStreamOperator<OUT_MAIN,org.apache.flink.datastream.api.function.TwoOutputStreamProcessFunction<IN,OUT_MAIN,OUT_SIDE>>
org.apache.flink.datastream.impl.operators.TwoOutputProcessOperator<IN,OUT_MAIN,OUT_SIDE>
- All Implemented Interfaces:
Serializable,org.apache.flink.api.common.state.CheckpointListener,org.apache.flink.streaming.api.operators.BoundedOneInput,org.apache.flink.streaming.api.operators.Input<IN>,org.apache.flink.streaming.api.operators.KeyContext,org.apache.flink.streaming.api.operators.KeyContextHandler,org.apache.flink.streaming.api.operators.OneInputStreamOperator<IN,,OUT_MAIN> org.apache.flink.streaming.api.operators.OutputTypeConfigurable<OUT_MAIN>,org.apache.flink.streaming.api.operators.StreamOperator<OUT_MAIN>,org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.CheckpointedStreamOperator,org.apache.flink.streaming.api.operators.UserFunctionProvider<org.apache.flink.datastream.api.function.TwoOutputStreamProcessFunction<IN,,OUT_MAIN, OUT_SIDE>> org.apache.flink.streaming.api.operators.YieldingOperator<OUT_MAIN>,org.apache.flink.streaming.runtime.operators.asyncprocessing.AsyncStateProcessing,org.apache.flink.streaming.runtime.operators.asyncprocessing.AsyncStateProcessingOperator
- Direct Known Subclasses:
BaseKeyedTwoOutputProcessOperator
public class TwoOutputProcessOperator<IN,OUT_MAIN,OUT_SIDE>
extends org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateUdfStreamOperator<OUT_MAIN,org.apache.flink.datastream.api.function.TwoOutputStreamProcessFunction<IN,OUT_MAIN,OUT_SIDE>>
implements org.apache.flink.streaming.api.operators.OneInputStreamOperator<IN,OUT_MAIN>, org.apache.flink.streaming.api.operators.BoundedOneInput
Operator for
TwoOutputStreamProcessFunction.
We support the second output via flink side-output mechanism.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected classThis is a special implementation ofTimestampCollectorthat using side-output mechanism to emit data. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected DefaultRuntimeContextprotected org.apache.flink.streaming.runtime.watermark.extension.eventtime.EventTimeWatermarkHandlerprotected TimestampCollector<OUT_MAIN>protected org.apache.flink.util.OutputTag<OUT_SIDE>protected DefaultTwoOutputPartitionedContext<OUT_MAIN,OUT_SIDE> protected TimestampCollector<OUT_SIDE>protected Map<String,org.apache.flink.streaming.runtime.watermark.AbstractInternalWatermarkDeclaration<?>> Fields inherited from class org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateUdfStreamOperator
declarationContext, userFunctionFields inherited from class org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateStreamOperator
declarationManagerFields inherited from class org.apache.flink.streaming.api.operators.AbstractStreamOperator
combinedWatermark, config, lastRecordAttributes1, lastRecordAttributes2, latencyStats, metrics, output, processingTimeService, stateHandler, stateKeySelector1, stateKeySelector2, timeServiceManager -
Constructor Summary
ConstructorsConstructorDescriptionTwoOutputProcessOperator(org.apache.flink.datastream.api.function.TwoOutputStreamProcessFunction<IN, OUT_MAIN, OUT_SIDE> userFunction, org.apache.flink.util.OutputTag<OUT_SIDE> outputTag) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()protected ObjectvoidendInput()protected TimestampCollector<OUT_MAIN>protected org.apache.flink.datastream.api.context.ProcessingTimeManagerprotected BiConsumer<Runnable,Object> protected org.apache.flink.streaming.api.operators.InternalTimerService<org.apache.flink.runtime.state.VoidNamespace>booleanvoidopen()voidprocessElement(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<IN> element) voidprocessWatermarkInternal(org.apache.flink.runtime.event.WatermarkEvent watermark) Methods inherited from class org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateUdfStreamOperator
finish, getUserFunction, initializeState, notifyCheckpointAborted, notifyCheckpointComplete, setOutputType, setup, snapshotStateMethods inherited from class org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateStreamOperator
asyncProcessWithKey, beforeInitializeStateHandler, drainStateRequests, getAsyncKeyedStateBackend, getCurrentKey, getDeclarationManager, getElementOrder, getInternalTimerService, getOrCreateKeyedState, getRecordProcessor, newKeySelected, postProcessElement, postProcessWatermark, prepareSnapshotPreBarrier, preProcessWatermark, preserveRecordOrderAndProcess, processRecordAttributes, processRecordAttributes1, processRecordAttributes2, processWatermark, processWatermark, processWatermark1, processWatermark1Internal, processWatermark2, processWatermark2Internal, processWatermarkStatus, processWatermarkStatus, reportOrForwardLatencyMarker, setAsyncKeyedContextElement, setKeyContextElement1, setKeyContextElement2Methods inherited from class org.apache.flink.streaming.api.operators.AbstractStreamOperator
getContainingTask, getExecutionConfig, getKeyedStateBackend, getKeyedStateStore, getMetricGroup, getOperatorConfig, getOperatorID, getOperatorName, getOperatorStateBackend, getOrCreateKeyedState, getPartitionedState, getPartitionedState, getProcessingTimeService, getRuntimeContext, getStateKeySelector1, getStateKeySelector2, getTimeServiceManager, getUserCodeClassloader, hasKeyContext1, hasKeyContext2, initializeState, isUsingCustomRawKeyedState, processLatencyMarker, processLatencyMarker1, processLatencyMarker2, processWatermark1, processWatermark2, processWatermarkStatus1, processWatermarkStatus2, setCurrentKey, setMailboxExecutor, setProcessingTimeService, snapshotState, useSplittableTimersMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.flink.api.common.state.CheckpointListener
notifyCheckpointAborted, notifyCheckpointCompleteMethods inherited from interface org.apache.flink.streaming.api.operators.Input
processLatencyMarker, processRecordAttributes, processWatermark, processWatermark, processWatermarkStatusMethods inherited from interface org.apache.flink.streaming.api.operators.KeyContext
getCurrentKey, setCurrentKeyMethods inherited from interface org.apache.flink.streaming.api.operators.KeyContextHandler
hasKeyContextMethods inherited from interface org.apache.flink.streaming.api.operators.OneInputStreamOperator
setKeyContextElementMethods inherited from interface org.apache.flink.streaming.api.operators.StreamOperator
finish, getMetricGroup, getOperatorAttributes, getOperatorID, initializeState, prepareSnapshotPreBarrier, setKeyContextElement1, setKeyContextElement2, snapshotState
-
Field Details
-
mainCollector
-
sideCollector
-
context
-
partitionedContext
-
nonPartitionedContext
-
outputTag
-
watermarkDeclarationMap
-
eventTimeWatermarkHandler
protected transient org.apache.flink.streaming.runtime.watermark.extension.eventtime.EventTimeWatermarkHandler eventTimeWatermarkHandler
-
-
Constructor Details
-
TwoOutputProcessOperator
-
-
Method Details
-
open
- Specified by:
openin interfaceorg.apache.flink.streaming.api.operators.StreamOperator<IN>- Overrides:
openin classorg.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateUdfStreamOperator<OUT_MAIN,org.apache.flink.datastream.api.function.TwoOutputStreamProcessFunction<IN, OUT_MAIN, OUT_SIDE>> - Throws:
Exception
-
processElement
-
processWatermarkInternal
public void processWatermarkInternal(org.apache.flink.runtime.event.WatermarkEvent watermark) throws Exception -
endInput
- Specified by:
endInputin interfaceorg.apache.flink.streaming.api.operators.BoundedOneInput- Throws:
Exception
-
getMainCollector
-
getSideCollector
-
currentKey
-
getProcessorWithKey
-
getNonPartitionedContext
-
getProcessingTimeManager
protected org.apache.flink.datastream.api.context.ProcessingTimeManager getProcessingTimeManager() -
close
- Specified by:
closein interfaceorg.apache.flink.streaming.api.operators.StreamOperator<IN>- Overrides:
closein classorg.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateUdfStreamOperator<OUT_MAIN,org.apache.flink.datastream.api.function.TwoOutputStreamProcessFunction<IN, OUT_MAIN, OUT_SIDE>> - Throws:
Exception
-
isAsyncStateProcessingEnabled
public boolean isAsyncStateProcessingEnabled()- Specified by:
isAsyncStateProcessingEnabledin interfaceorg.apache.flink.streaming.runtime.operators.asyncprocessing.AsyncStateProcessing- Overrides:
isAsyncStateProcessingEnabledin classorg.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateStreamOperator<OUT_MAIN>
-
getTimerService
protected org.apache.flink.streaming.api.operators.InternalTimerService<org.apache.flink.runtime.state.VoidNamespace> getTimerService() -
getEventTimeSupplier
-