Class StreamUtils
java.lang.Object
org.apache.flink.datastream.impl.utils.StreamUtils
This class encapsulates the common logic for all type of streams. It can be used to handle things
like extract type information, create a new transformation and so on for AbstractDataStream.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <T> DataStreamV2SinkTransformation<T,T> addSinkOperator(AbstractDataStream<T> inputStream, org.apache.flink.api.connector.dsv2.Sink<T> sink, org.apache.flink.api.common.typeinfo.TypeInformation<T> typeInformation) Add sink operator to the input stream.static <T,R, K> org.apache.flink.streaming.api.transformations.OneInputTransformation<T, R> getOneInputKeyedTransformation(String operatorName, AbstractDataStream<T> inputStream, org.apache.flink.api.common.typeinfo.TypeInformation<R> outTypeInformation, org.apache.flink.streaming.api.operators.OneInputStreamOperator<T, R> operator, org.apache.flink.api.java.functions.KeySelector<T, K> keySelector, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType) Construct and return aOneInputTransformationfrom keyed input streams.static <T,R> org.apache.flink.streaming.api.transformations.OneInputTransformation<T, R> getOneInputTransformation(String operatorName, AbstractDataStream<T> inputStream, org.apache.flink.api.common.typeinfo.TypeInformation<R> outTypeInformation, org.apache.flink.streaming.api.operators.OneInputStreamOperator<T, R> operator) Construct and return aOneInputTransformationfrom non-keyed input streams.static <IN,OUT> org.apache.flink.api.common.typeinfo.TypeInformation<OUT> getOutputTypeForOneInputProcessFunction(org.apache.flink.datastream.api.function.OneInputStreamProcessFunction<IN, OUT> processFunction, org.apache.flink.api.common.typeinfo.TypeInformation<IN> inTypeInformation) Get the output type information forOneInputStreamProcessFunctionfrom input type information.static <IN1,IN2, OUT>
org.apache.flink.api.common.typeinfo.TypeInformation<OUT>getOutputTypeForTwoInputBroadcastProcessFunction(org.apache.flink.datastream.api.function.TwoInputBroadcastStreamProcessFunction<IN1, IN2, OUT> processFunction, org.apache.flink.api.common.typeinfo.TypeInformation<IN1> in1TypeInformation, org.apache.flink.api.common.typeinfo.TypeInformation<IN2> in2TypeInformation) Get the output type information forTwoInputBroadcastStreamProcessFunctionfrom two input type information .static <IN1,IN2, OUT>
org.apache.flink.api.common.typeinfo.TypeInformation<OUT>getOutputTypeForTwoInputNonBroadcastProcessFunction(org.apache.flink.datastream.api.function.TwoInputNonBroadcastStreamProcessFunction<IN1, IN2, OUT> processFunction, org.apache.flink.api.common.typeinfo.TypeInformation<IN1> in1TypeInformation, org.apache.flink.api.common.typeinfo.TypeInformation<IN2> in2TypeInformation) Get the output type information forTwoInputNonBroadcastStreamProcessFunctionfrom two input type information .static <IN,OUT1, OUT2>
org.apache.flink.api.java.tuple.Tuple2<org.apache.flink.api.common.typeinfo.TypeInformation<OUT1>,org.apache.flink.api.common.typeinfo.TypeInformation<OUT2>> getOutputTypesForTwoOutputProcessFunction(org.apache.flink.datastream.api.function.TwoOutputStreamProcessFunction<IN, OUT1, OUT2> twoOutputStreamProcessFunction, org.apache.flink.api.common.typeinfo.TypeInformation<IN> inTypeInformation) Get output types information forTwoOutputStreamProcessFunctionfrom the input type information.static <K,IN1, IN2, OUT>
org.apache.flink.streaming.api.transformations.TwoInputTransformation<IN1,IN2, OUT> getTwoInputTransformation(String operatorName, org.apache.flink.api.dag.Transformation<IN1> inputStream1, org.apache.flink.api.dag.Transformation<IN2> inputStream2, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInformation, org.apache.flink.streaming.api.operators.TwoInputStreamOperator<IN1, IN2, OUT> operator, org.apache.flink.api.java.functions.KeySelector<IN1, K> keySelector1, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType1, org.apache.flink.api.java.functions.KeySelector<IN2, K> keySelector2, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType2) Construct and return aTwoInputTransformationfrom two input streams.static <IN1,IN2, OUT>
org.apache.flink.streaming.api.transformations.TwoInputTransformation<IN1,IN2, OUT> getTwoInputTransformation(String operatorName, AbstractDataStream<IN1> inputStream1, AbstractDataStream<IN2> inputStream2, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInformation, org.apache.flink.streaming.api.operators.TwoInputStreamOperator<IN1, IN2, OUT> operator) Construct and return aTwoInputTransformationfrom two input streams.static <T,R> AbstractDataStream<R> transformOneInputOperator(String operatorName, AbstractDataStream<T> inputStream, org.apache.flink.api.common.typeinfo.TypeInformation<R> outTypeInfo, org.apache.flink.streaming.api.operators.StreamOperatorFactory<R> operatorFactory) Construct and return a new DataStream with one input operator.static <K,IN, OUT, W extends org.apache.flink.streaming.api.windowing.windows.Window>
org.apache.flink.api.dag.Transformation<OUT>transformOneInputWindow(org.apache.flink.api.common.ExecutionConfig executionConfig, AbstractDataStream<IN> inputStream, org.apache.flink.api.common.typeinfo.TypeInformation<IN> inputType, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outType, InternalOneInputWindowStreamProcessFunction<IN, OUT, W> internalWindowFunction, org.apache.flink.api.java.functions.KeySelector<IN, K> keySelector, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType) Construct and return aOneInputTransformationof one input window operator.static <K,IN1, IN2, OUT, W extends org.apache.flink.streaming.api.windowing.windows.Window>
org.apache.flink.api.dag.Transformation<OUT>transformTwoInputNonBroadcastWindow(org.apache.flink.api.common.ExecutionConfig executionConfig, org.apache.flink.api.dag.Transformation<IN1> inputStream1, org.apache.flink.api.common.typeinfo.TypeInformation<IN1> inputType1, org.apache.flink.api.dag.Transformation<IN2> inputStream2, org.apache.flink.api.common.typeinfo.TypeInformation<IN2> inputType2, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outType, InternalTwoInputWindowStreamProcessFunction<IN1, IN2, OUT, W> internalWindowFunction, org.apache.flink.api.java.functions.KeySelector<IN1, K> keySelector1, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType1, org.apache.flink.api.java.functions.KeySelector<IN2, K> keySelector2, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType2) Construct and return aOneInputTransformationof one input window operator.static <K,IN, OUT1, OUT2, W extends org.apache.flink.streaming.api.windowing.windows.Window>
org.apache.flink.api.dag.Transformation<OUT1>transformTwoOutputWindow(org.apache.flink.api.common.ExecutionConfig executionConfig, AbstractDataStream<IN> inputStream, org.apache.flink.api.common.typeinfo.TypeInformation<IN> inputType, org.apache.flink.api.common.typeinfo.TypeInformation<OUT1> outType1, org.apache.flink.api.common.typeinfo.TypeInformation<OUT2> outType2, org.apache.flink.util.OutputTag<OUT2> secondOutputTag, InternalTwoOutputWindowStreamProcessFunction<IN, OUT1, OUT2, W> internalWindowFunction, org.apache.flink.api.java.functions.KeySelector<IN, K> keySelector, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType) Construct and return aOneInputTransformationof two output window operator.static voidvalidateStates(Set<org.apache.flink.api.common.state.StateDeclaration> inputStateDeclarations, Set<org.apache.flink.api.common.state.StateDeclaration.RedistributionMode> invalidStateDeclarations) Wrap aGlobalStreamImplwith configure handle.static <T> org.apache.flink.datastream.api.stream.GlobalStream.ProcessConfigurableAndGlobalStream<T>wrapWithConfigureHandle(GlobalStreamImpl<T> stream) Wrap aGlobalStreamImplwith configure handle.static <K,T> org.apache.flink.datastream.api.stream.KeyedPartitionStream.ProcessConfigurableAndKeyedPartitionStream<K, T> wrapWithConfigureHandle(KeyedPartitionStreamImpl<K, T> stream) Wrap aKeyedPartitionStreamImplwith configure handle.static <T> org.apache.flink.datastream.api.stream.NonKeyedPartitionStream.ProcessConfigurableAndNonKeyedPartitionStream<T>Wrap aNonKeyedPartitionStreamImplwith configure handle.
-
Constructor Details
-
StreamUtils
public StreamUtils()
-
-
Method Details
-
getOutputTypeForOneInputProcessFunction
public static <IN,OUT> org.apache.flink.api.common.typeinfo.TypeInformation<OUT> getOutputTypeForOneInputProcessFunction(org.apache.flink.datastream.api.function.OneInputStreamProcessFunction<IN, OUT> processFunction, org.apache.flink.api.common.typeinfo.TypeInformation<IN> inTypeInformation) Get the output type information forOneInputStreamProcessFunctionfrom input type information. -
getOutputTypeForTwoInputNonBroadcastProcessFunction
public static <IN1,IN2, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> getOutputTypeForTwoInputNonBroadcastProcessFunctionOUT> (org.apache.flink.datastream.api.function.TwoInputNonBroadcastStreamProcessFunction<IN1, IN2, OUT> processFunction, org.apache.flink.api.common.typeinfo.TypeInformation<IN1> in1TypeInformation, org.apache.flink.api.common.typeinfo.TypeInformation<IN2> in2TypeInformation) Get the output type information forTwoInputNonBroadcastStreamProcessFunctionfrom two input type information . -
getOutputTypeForTwoInputBroadcastProcessFunction
public static <IN1,IN2, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> getOutputTypeForTwoInputBroadcastProcessFunctionOUT> (org.apache.flink.datastream.api.function.TwoInputBroadcastStreamProcessFunction<IN1, IN2, OUT> processFunction, org.apache.flink.api.common.typeinfo.TypeInformation<IN1> in1TypeInformation, org.apache.flink.api.common.typeinfo.TypeInformation<IN2> in2TypeInformation) Get the output type information forTwoInputBroadcastStreamProcessFunctionfrom two input type information . -
getOutputTypesForTwoOutputProcessFunction
public static <IN,OUT1, org.apache.flink.api.java.tuple.Tuple2<org.apache.flink.api.common.typeinfo.TypeInformation<OUT1>,OUT2> org.apache.flink.api.common.typeinfo.TypeInformation<OUT2>> getOutputTypesForTwoOutputProcessFunction(org.apache.flink.datastream.api.function.TwoOutputStreamProcessFunction<IN, OUT1, OUT2> twoOutputStreamProcessFunction, org.apache.flink.api.common.typeinfo.TypeInformation<IN> inTypeInformation) Get output types information forTwoOutputStreamProcessFunctionfrom the input type information. -
getOneInputTransformation
public static <T,R> org.apache.flink.streaming.api.transformations.OneInputTransformation<T,R> getOneInputTransformation(String operatorName, AbstractDataStream<T> inputStream, org.apache.flink.api.common.typeinfo.TypeInformation<R> outTypeInformation, org.apache.flink.streaming.api.operators.OneInputStreamOperator<T, R> operator) Construct and return aOneInputTransformationfrom non-keyed input streams. -
getOneInputKeyedTransformation
public static <T,R, org.apache.flink.streaming.api.transformations.OneInputTransformation<T,K> R> getOneInputKeyedTransformation(String operatorName, AbstractDataStream<T> inputStream, org.apache.flink.api.common.typeinfo.TypeInformation<R> outTypeInformation, org.apache.flink.streaming.api.operators.OneInputStreamOperator<T, R> operator, org.apache.flink.api.java.functions.KeySelector<T, K> keySelector, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType) Construct and return aOneInputTransformationfrom keyed input streams. -
getTwoInputTransformation
public static <IN1,IN2, org.apache.flink.streaming.api.transformations.TwoInputTransformation<IN1,OUT> IN2, getTwoInputTransformationOUT> (String operatorName, AbstractDataStream<IN1> inputStream1, AbstractDataStream<IN2> inputStream2, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInformation, org.apache.flink.streaming.api.operators.TwoInputStreamOperator<IN1, IN2, OUT> operator) Construct and return aTwoInputTransformationfrom two input streams. -
getTwoInputTransformation
public static <K,IN1, org.apache.flink.streaming.api.transformations.TwoInputTransformation<IN1,IN2, OUT> IN2, getTwoInputTransformationOUT> (String operatorName, org.apache.flink.api.dag.Transformation<IN1> inputStream1, org.apache.flink.api.dag.Transformation<IN2> inputStream2, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outTypeInformation, org.apache.flink.streaming.api.operators.TwoInputStreamOperator<IN1, IN2, OUT> operator, org.apache.flink.api.java.functions.KeySelector<IN1, K> keySelector1, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType1, org.apache.flink.api.java.functions.KeySelector<IN2, K> keySelector2, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType2) Construct and return aTwoInputTransformationfrom two input streams. -
transformOneInputOperator
public static <T,R> AbstractDataStream<R> transformOneInputOperator(String operatorName, AbstractDataStream<T> inputStream, org.apache.flink.api.common.typeinfo.TypeInformation<R> outTypeInfo, org.apache.flink.streaming.api.operators.StreamOperatorFactory<R> operatorFactory) Construct and return a new DataStream with one input operator. -
transformOneInputWindow
public static <K,IN, org.apache.flink.api.dag.Transformation<OUT> transformOneInputWindowOUT, W extends org.apache.flink.streaming.api.windowing.windows.Window> (org.apache.flink.api.common.ExecutionConfig executionConfig, AbstractDataStream<IN> inputStream, org.apache.flink.api.common.typeinfo.TypeInformation<IN> inputType, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outType, InternalOneInputWindowStreamProcessFunction<IN, OUT, W> internalWindowFunction, org.apache.flink.api.java.functions.KeySelector<IN, K> keySelector, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType) Construct and return aOneInputTransformationof one input window operator. -
transformTwoInputNonBroadcastWindow
public static <K,IN1, org.apache.flink.api.dag.Transformation<OUT> transformTwoInputNonBroadcastWindowIN2, OUT, W extends org.apache.flink.streaming.api.windowing.windows.Window> (org.apache.flink.api.common.ExecutionConfig executionConfig, org.apache.flink.api.dag.Transformation<IN1> inputStream1, org.apache.flink.api.common.typeinfo.TypeInformation<IN1> inputType1, org.apache.flink.api.dag.Transformation<IN2> inputStream2, org.apache.flink.api.common.typeinfo.TypeInformation<IN2> inputType2, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outType, InternalTwoInputWindowStreamProcessFunction<IN1, IN2, OUT, W> internalWindowFunction, org.apache.flink.api.java.functions.KeySelector<IN1, K> keySelector1, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType1, org.apache.flink.api.java.functions.KeySelector<IN2, K> keySelector2, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType2) Construct and return aOneInputTransformationof one input window operator. -
transformTwoOutputWindow
public static <K,IN, org.apache.flink.api.dag.Transformation<OUT1> transformTwoOutputWindowOUT1, OUT2, W extends org.apache.flink.streaming.api.windowing.windows.Window> (org.apache.flink.api.common.ExecutionConfig executionConfig, AbstractDataStream<IN> inputStream, org.apache.flink.api.common.typeinfo.TypeInformation<IN> inputType, org.apache.flink.api.common.typeinfo.TypeInformation<OUT1> outType1, org.apache.flink.api.common.typeinfo.TypeInformation<OUT2> outType2, org.apache.flink.util.OutputTag<OUT2> secondOutputTag, InternalTwoOutputWindowStreamProcessFunction<IN, OUT1, OUT2, W> internalWindowFunction, org.apache.flink.api.java.functions.KeySelector<IN, K> keySelector, org.apache.flink.api.common.typeinfo.TypeInformation<K> keyType) Construct and return aOneInputTransformationof two output window operator. -
addSinkOperator
public static <T> DataStreamV2SinkTransformation<T,T> addSinkOperator(AbstractDataStream<T> inputStream, org.apache.flink.api.connector.dsv2.Sink<T> sink, org.apache.flink.api.common.typeinfo.TypeInformation<T> typeInformation) Add sink operator to the input stream. -
wrapWithConfigureHandle
public static <T> org.apache.flink.datastream.api.stream.NonKeyedPartitionStream.ProcessConfigurableAndNonKeyedPartitionStream<T> wrapWithConfigureHandle(NonKeyedPartitionStreamImpl<T> stream) Wrap aNonKeyedPartitionStreamImplwith configure handle. -
wrapWithConfigureHandle
public static <K,T> org.apache.flink.datastream.api.stream.KeyedPartitionStream.ProcessConfigurableAndKeyedPartitionStream<K,T> wrapWithConfigureHandle(KeyedPartitionStreamImpl<K, T> stream) Wrap aKeyedPartitionStreamImplwith configure handle. -
wrapWithConfigureHandle
public static <T> org.apache.flink.datastream.api.stream.GlobalStream.ProcessConfigurableAndGlobalStream<T> wrapWithConfigureHandle(GlobalStreamImpl<T> stream) Wrap aGlobalStreamImplwith configure handle. -
validateStates
public static void validateStates(Set<org.apache.flink.api.common.state.StateDeclaration> inputStateDeclarations, Set<org.apache.flink.api.common.state.StateDeclaration.RedistributionMode> invalidStateDeclarations) Wrap aGlobalStreamImplwith configure handle.
-