ThrottleStreamTransformer<T> class

A StreamTransformer that emits a value from the source Stream, then ignores subsequent source values while the window Stream is open, then repeats this process.

If leading is true, then the first item in each window is emitted. If trailing is true, then the last item in each window is emitted.

Example

Stream.fromIterable([1, 2, 3])
  .transform(ThrottleStreamTransformer((_) => TimerStream(true, const Duration(seconds: 1))))
  .listen(print); // prints 1
Inheritance

Constructors

ThrottleStreamTransformer(Stream window(T event), {bool trailing = false, bool leading = true})
Construct a StreamTransformer that emits a value from the source Stream, then ignores subsequent source values while the window Stream is open, then repeats this process. [...]

Properties

closeWindowWhen bool Function(List<T> queue)
Predicate which determines when the current window should close
final, inherited
dispatchOnClose bool
Toggle to prevent, or allow the final set of events to be dispatched when the source Stream closes
final, inherited
hashCode int
The hash code for this object. [...]
read-only, inherited
ignoreEmptyWindows bool
Toggle to prevent, or allow windows that contain no events to be dispatched
final, inherited
maxLengthQueue int
Maximum length of the buffer. Specify this value to avoid running out of memory when adding too many events to the buffer. If it's null, maximum length of the buffer is unlimited.
final, inherited
onWindowEnd → T Function(List<T> queue)
Handler which fires when the window closes
final, inherited
onWindowStart → T Function(T event)
Handler which fires when the window opens
final, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
startBufferEvery int
Used to skip an amount of events
final, inherited
strategy → WindowStrategy
Determines how the window is created
final, inherited
windowStreamFactory Stream Function(T event)
Factory method used to create the Stream which will be buffered
final, inherited

Methods

bind(Stream<T> stream) Stream<T>
Transforms the provided stream. [...]
inherited
cast<RS, RT>() StreamTransformer<RS, RT>
Provides a StreamTransformer<RS, RT> view of this stream transformer. [...]
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
toString() String
A string representation of this object. [...]
inherited

Operators

operator ==(Object other) bool
The equality operator. [...]
inherited