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
-
- Object
- StreamTransformerBase<
T, T> - ThrottleStreamTransformer
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
finalinherited
- dispatchOnClose → bool
-
Toggle to prevent, or allow the final set of events to be dispatched
when the source Stream closes
finalinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- ignoreEmptyWindows → bool
-
Toggle to prevent, or allow windows that contain
no events to be dispatched
finalinherited
- 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.finalinherited -
onWindowEnd
→ T Function(List<
T> queue)? -
Handler which fires when the window closes
finalinherited
- onWindowStart → T Function(T event)?
-
Handler which fires when the window opens
finalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- startBufferEvery → int
-
Used to skip an amount of events
finalinherited
- strategy → WindowStrategy
-
Determines how the window is created
finalinherited
- windowStreamFactory → Stream Function(T event)?
-
Factory method used to create the Stream which will be buffered
finalinherited
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 nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited