Class OperatorBufferWithSize<T>

java.lang.Object
rx.internal.operators.OperatorBufferWithSize<T>
Type Parameters:
T - the buffered value type
All Implemented Interfaces:
Func1<Subscriber<? super List<T>>,Subscriber<? super T>>, Function, Observable.Operator<List<T>,T>

public final class OperatorBufferWithSize<T> extends Object implements Observable.Operator<List<T>,T>
This operation takes values from the specified Observable source and stores them in all active chunks until the buffer contains a specified number of elements. The buffer is then emitted. Chunks are created after a certain amount of values have been received. When the source Observable completes or produces an error, the currently active chunks are emitted, and the event is propagated to all subscribed Subscribers.

Note that this operation can produce non-connected, connected non-overlapping, or overlapping chunks depending on the input parameters.

  • Field Details

    • count

      final int count
    • skip

      final int skip
  • Constructor Details

    • OperatorBufferWithSize

      public OperatorBufferWithSize(int count, int skip)
      Parameters:
      count - the number of elements a buffer should have before being emitted
      skip - the interval with which chunks have to be created. Note that when skip == count the operator will produce non-overlapping chunks. If skip < count, this buffer operation will produce overlapping chunks and if skip > count non-overlapping chunks will be created and some values will not be pushed into a buffer at all!
  • Method Details