Class 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.SetupableStreamOperator<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>
    Direct Known Subclasses:
    KeyedTwoOutputProcessOperator

    public class TwoOutputProcessOperator<IN,​OUT_MAIN,​OUT_SIDE>
    extends org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator<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:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      TwoOutputProcessOperator​(org.apache.flink.datastream.api.function.TwoOutputStreamProcessFunction<IN,​OUT_MAIN,​OUT_SIDE> userFunction, org.apache.flink.util.OutputTag<OUT_SIDE> outputTag)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected Object currentKey()  
      void endInput()  
      protected TimestampCollector<OUT_MAIN> getMainCollector()  
      protected org.apache.flink.datastream.api.context.TwoOutputNonPartitionedContext<OUT_MAIN,​OUT_SIDE> getNonPartitionedContext()  
      protected org.apache.flink.datastream.api.context.ProcessingTimeManager getProcessingTimeManager()  
      TimestampCollector<OUT_SIDE> getSideCollector()  
      void open()  
      void processElement​(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<IN> element)  
      • Methods inherited from class org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator

        close, finish, getUserFunction, getUserFunctionParameters, initializeState, notifyCheckpointAborted, notifyCheckpointComplete, setOutputType, setup, snapshotState
      • Methods inherited from class org.apache.flink.streaming.api.operators.AbstractStreamOperator

        getChainingStrategy, getContainingTask, getCurrentKey, getExecutionConfig, getInternalTimerService, getKeyedStateBackend, getKeyedStateStore, getMetricGroup, getOperatorConfig, getOperatorID, getOperatorName, getOperatorStateBackend, getOrCreateKeyedState, getPartitionedState, getPartitionedState, getProcessingTimeService, getRuntimeContext, getStateKeySelector1, getStateKeySelector2, getTimeServiceManager, getUserCodeClassloader, hasKeyContext1, hasKeyContext2, initializeState, isUsingCustomRawKeyedState, prepareSnapshotPreBarrier, processLatencyMarker, processLatencyMarker1, processLatencyMarker2, processRecordAttributes, processRecordAttributes1, processRecordAttributes2, processWatermark, processWatermark1, processWatermark2, processWatermarkStatus, processWatermarkStatus1, processWatermarkStatus2, reportOrForwardLatencyMarker, setChainingStrategy, setCurrentKey, setKeyContextElement1, setKeyContextElement2, setMailboxExecutor, setProcessingTimeService, snapshotState, useSplittableTimers
      • Methods inherited from interface org.apache.flink.api.common.state.CheckpointListener

        notifyCheckpointAborted, notifyCheckpointComplete
      • Methods inherited from interface org.apache.flink.streaming.api.operators.Input

        processLatencyMarker, processRecordAttributes, processWatermark, processWatermarkStatus
      • Methods inherited from interface org.apache.flink.streaming.api.operators.KeyContext

        getCurrentKey, setCurrentKey
      • Methods inherited from interface org.apache.flink.streaming.api.operators.KeyContextHandler

        hasKeyContext
      • Methods inherited from interface org.apache.flink.streaming.api.operators.OneInputStreamOperator

        setKeyContextElement
      • Methods inherited from interface org.apache.flink.streaming.api.operators.StreamOperator

        close, finish, getMetricGroup, getOperatorAttributes, getOperatorID, initializeState, prepareSnapshotPreBarrier, setKeyContextElement1, setKeyContextElement2, snapshotState
    • Constructor Detail

      • TwoOutputProcessOperator

        public TwoOutputProcessOperator​(org.apache.flink.datastream.api.function.TwoOutputStreamProcessFunction<IN,​OUT_MAIN,​OUT_SIDE> userFunction,
                                        org.apache.flink.util.OutputTag<OUT_SIDE> outputTag)
    • Method Detail

      • open

        public void open()
                  throws Exception
        Specified by:
        open in interface org.apache.flink.streaming.api.operators.StreamOperator<IN>
        Overrides:
        open in class org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator<OUT_MAIN,​org.apache.flink.datastream.api.function.TwoOutputStreamProcessFunction<IN,​OUT_MAIN,​OUT_SIDE>>
        Throws:
        Exception
      • processElement

        public void processElement​(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<IN> element)
                            throws Exception
        Specified by:
        processElement in interface org.apache.flink.streaming.api.operators.Input<IN>
        Throws:
        Exception
      • endInput

        public void endInput()
                      throws Exception
        Specified by:
        endInput in interface org.apache.flink.streaming.api.operators.BoundedOneInput
        Throws:
        Exception
      • currentKey

        protected Object currentKey()
      • getNonPartitionedContext

        protected org.apache.flink.datastream.api.context.TwoOutputNonPartitionedContext<OUT_MAIN,​OUT_SIDE> getNonPartitionedContext()
      • getProcessingTimeManager

        protected org.apache.flink.datastream.api.context.ProcessingTimeManager getProcessingTimeManager()