Class FixedTimeStreamWindow<I extends List>

  • 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 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 a StreamSource.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, the FixedTimeStreamWindow will pass windowed data to a subtransformation, and return the transformed results.
        Specified by:
        buffer in interface StreamWindow<I extends List,​org.pentaho.di.core.Result>