Class FixedTimeStreamWindow<I extends List>
- java.lang.Object
-
- org.pentaho.di.trans.streaming.common.FixedTimeStreamWindow<I>
-
- All Implemented Interfaces:
StreamWindow<I,org.pentaho.di.core.Result>
public class FixedTimeStreamWindow<I extends List> extends Object implements StreamWindow<I,org.pentaho.di.core.Result>
A StreamWindow implementation which buffers rows of I by a fixed amount of time and size, executing each batch in a subtransformation.
-
-
Constructor Summary
Constructors Constructor Description FixedTimeStreamWindow(SubtransExecutor subtransExecutor, org.pentaho.di.core.row.RowMetaInterface rowMeta, long millis, int batchSize, int parallelism)
FixedTimeStreamWindow(SubtransExecutor subtransExecutor, org.pentaho.di.core.row.RowMetaInterface rowMeta, long millis, int batchSize, int parallelism, io.reactivex.functions.Consumer<Map.Entry<List<I>,org.pentaho.di.core.Result>> postProcessor)
FixedTimeStreamWindow(SubtransExecutor subtransExecutor, org.pentaho.di.core.row.RowMetaInterface rowMeta, long millis, int batchSize, int parallelism, io.reactivex.functions.Consumer<Map.Entry<List<I>,org.pentaho.di.core.Result>> postProcessor, io.reactivex.functions.Function<List<I>,List<I>> bufferFilter)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Iterable<org.pentaho.di.core.Result>
buffer(io.reactivex.Flowable<I> flowable)
Takes an iterable (would typically be aStreamSource.flowable()
} call) and buffers it according to the window strategy.
-
-
-
Constructor Detail
-
FixedTimeStreamWindow
public FixedTimeStreamWindow(SubtransExecutor subtransExecutor, org.pentaho.di.core.row.RowMetaInterface rowMeta, long millis, int batchSize, int parallelism)
-
FixedTimeStreamWindow
public FixedTimeStreamWindow(SubtransExecutor subtransExecutor, org.pentaho.di.core.row.RowMetaInterface rowMeta, long millis, int batchSize, int parallelism, io.reactivex.functions.Consumer<Map.Entry<List<I>,org.pentaho.di.core.Result>> postProcessor)
-
FixedTimeStreamWindow
public FixedTimeStreamWindow(SubtransExecutor subtransExecutor, org.pentaho.di.core.row.RowMetaInterface rowMeta, long millis, int batchSize, int parallelism, io.reactivex.functions.Consumer<Map.Entry<List<I>,org.pentaho.di.core.Result>> postProcessor, io.reactivex.functions.Function<List<I>,List<I>> bufferFilter)
-
-
Method Detail
-
buffer
public Iterable<org.pentaho.di.core.Result> buffer(io.reactivex.Flowable<I> flowable)
Description copied from interface:StreamWindow
Takes an iterable (would typically be aStreamSource.flowable()
} call) and buffers it according to the window strategy. Returns an iterable of data for the window. Depending on stream implementation, the output could also be transformed. For example, theFixedTimeStreamWindow
will pass windowed data to a subtransformation, and return the transformed results.- Specified by:
buffer
in interfaceStreamWindow<I extends List,org.pentaho.di.core.Result>
-
-