Class AbstractDataStream<T>

java.lang.Object
org.apache.flink.datastream.impl.stream.AbstractDataStream<T>
All Implemented Interfaces:
org.apache.flink.datastream.api.stream.DataStream
Direct Known Subclasses:
BroadcastStreamImpl, GlobalStreamImpl, KeyedPartitionStreamImpl, NonKeyedPartitionStreamImpl

public abstract class AbstractDataStream<T> extends Object implements org.apache.flink.datastream.api.stream.DataStream
Base class for all streams.

Note: This is only used for internal implementation. It must not leak to user face api.

  • Field Details

    • environment

      protected final ExecutionEnvironmentImpl environment
    • transformation

      protected final org.apache.flink.api.dag.Transformation<T> transformation
    • requestedSideOutputs

      protected final Map<org.apache.flink.util.OutputTag<?>,org.apache.flink.api.common.typeinfo.TypeInformation<?>> requestedSideOutputs
      We keep track of the side outputs that were already requested and their types. With this, we can catch the case when a side output with a matching id is requested for a different type because this would lead to problems at runtime.
  • Constructor Details

    • AbstractDataStream

      public AbstractDataStream(ExecutionEnvironmentImpl environment, org.apache.flink.api.dag.Transformation<T> transformation)
  • Method Details

    • getType

      public org.apache.flink.api.common.typeinfo.TypeInformation<T> getType()
    • getTransformation

      public org.apache.flink.api.dag.Transformation<T> getTransformation()
      This is only used for internal implementation. It must not leak to user face api.
    • getEnvironment

      public ExecutionEnvironmentImpl getEnvironment()
    • getSideOutputTransform

      public <X> org.apache.flink.api.dag.Transformation<X> getSideOutputTransform(org.apache.flink.util.OutputTag<X> outputTag)