A object that accepts stream events both synchronously and asynchronously.

A StreamSink unifies the asynchronous methods from StreamConsumer and the synchronous methods from EventSink.

The EventSink methods can't be used while the addStream is called. As soon as the addStream's Future completes with a value, the EventSink methods can be used again.

If addStream is called after any of the EventSink methods, it'll be delayed until the underlying system has consumed the data added by the EventSink methods.

When EventSink methods are used, the [done] [Future] can be used to catch any errors.

When close is called, it will return the [done] [Future].

Implements
Implemented by

Properties

Future done
read-only
Return a future which is completed when the StreamSink is finished.

Constructors

StreamSink()

Methods

add(S event) → void
inherited
Send a data event to a stream.
addError(errorEvent, [StackTrace stackTrace]) → void
inherited
Send an async error to a stream.
addStream(Stream<S> stream) → Future
inherited
Consumes the elements of stream.
close() → Future
Tells the stream sink that no futher streams will be added.