Stream Disposable
Package to help disposing Streams and Sinks.
Simple Usage
Instantiate a disposable with
var disposable = StreamDisposable()
Add StreamSubscriptions or Sinks to it by calling add
var streamToDispose = Stream.fromIterable([1, 2, 3]);
disposable.add(streamToDispose.listen(print))
In the Stateful's Widget dispose method or equivalent, we can call
disposable.dispose(className: this.runtimeType.toString())
To safely dispose every subscription.
Available Methods
-
void addAdds a Sink or a StreamSusbcription to the disposable. Throws anErrorif another type of object is added or if the disposable has already been disposed. -
Future<void> didDisposeFuturethat completes when theStreamDisposableis disposed. -
bool isDisposedBoolean value to check if the disposable has been disposed. -
Future<void> disposeDispose the current Sink and StreamSusbcription that were addded to this instance. Throws an error if adisposeaction is in process or if the disposable has been disposed already.