Class CopyingBroadcastingOutput

java.lang.Object
org.apache.flink.table.runtime.operators.multipleinput.output.BroadcastingOutput
org.apache.flink.table.runtime.operators.multipleinput.output.CopyingBroadcastingOutput
All Implemented Interfaces:
org.apache.flink.streaming.api.operators.Output<org.apache.flink.streaming.runtime.streamrecord.StreamRecord<org.apache.flink.table.data.RowData>>, org.apache.flink.util.Collector<org.apache.flink.streaming.runtime.streamrecord.StreamRecord<org.apache.flink.table.data.RowData>>

public class CopyingBroadcastingOutput extends BroadcastingOutput
Special version of BroadcastingOutput that performs a shallow copy of the StreamRecord to ensure that multi-output works correctly.

The functionality of this class is similar to OperatorChain#CopyingBroadcastingOutputCollector.

  • Constructor Details

    • CopyingBroadcastingOutput

      public CopyingBroadcastingOutput(org.apache.flink.streaming.api.operators.Output<org.apache.flink.streaming.runtime.streamrecord.StreamRecord<org.apache.flink.table.data.RowData>>[] outputs)
  • Method Details

    • collect

      public void collect(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<org.apache.flink.table.data.RowData> record)
      Specified by:
      collect in interface org.apache.flink.util.Collector<org.apache.flink.streaming.runtime.streamrecord.StreamRecord<org.apache.flink.table.data.RowData>>
      Overrides:
      collect in class BroadcastingOutput
    • collect

      public <X> void collect(org.apache.flink.util.OutputTag<X> outputTag, org.apache.flink.streaming.runtime.streamrecord.StreamRecord<X> record)
      Specified by:
      collect in interface org.apache.flink.streaming.api.operators.Output<org.apache.flink.streaming.runtime.streamrecord.StreamRecord<org.apache.flink.table.data.RowData>>
      Overrides:
      collect in class BroadcastingOutput