add method

  1. @override
void add(
  1. List<int> data
)
override

Adds byte data to the target consumer, ignoring encoding.

The encoding does not apply to this method, and the data list is passed directly to the target consumer as a stream event.

This method must not be called when a stream is currently being added using addStream.

This operation is non-blocking. See flush or done for how to get any errors generated by this call.

The data list should not be modified after it has been passed to add because it is not defined whether the target consumer will receive the list in the original or modified state.

Individual values in data which are not in the range 0 .. 255 will be truncated to their low eight bits, as if by int.toUnsigned, before being used.

Implementation

@override
void add(List<int> data) {
  if (_done.isCompleted) {
    throw StateError('Cannot add to closed MockHttpResponse.');
  } else {
    _headers.lock();
    if (_bufferOutput == true) {
      _buf.add(data);
    } else {
      _stream.add(data);
    }
  }
}