add method
Adds a data event to the sink.
Must not be called on a closed sink.
Implementation
@override
void add(List<int> data) {
if (!isOpen && isBuffered) {
throw ResponseContext.closed();
} else if (!isBuffered) {
if (_isClosed) return;
if (_streamInitialized || _isPush) {
_openStream();
_write(data);
} else if (_finalizing != null || _needsFinalizers) {
// Headers wait for the finalizers; send this data after them.
_queued.add(data);
_commit().catchError((Object e, StackTrace st) {
_finalizerError ??= e;
_finalizerStackTrace ??= st;
});
} else {
_openStream();
_write(data);
}
} else {
buffer!.add(data);
}
}