chunkedTransferEncoding property

  1. @override
bool get chunkedTransferEncoding
override

Whether the connection uses chunked transfer encoding.

Reflects and modifies the value of the transferEncodingHeader header.

Implementation

@override
bool get chunkedTransferEncoding => _chunkedTransferEncoding;
  1. @override
set chunkedTransferEncoding (bool chunkedTransferEncoding)
override

Whether the connection uses chunked transfer encoding.

Reflects and modifies the value of the transferEncodingHeader header.

Implementation

@override
set chunkedTransferEncoding(bool chunkedTransferEncoding) {
  _checkMutable();
  if (chunkedTransferEncoding && protocolVersion == "1.0") {
    throw HttpException(
        "Trying to set 'Transfer-Encoding: Chunked' on HTTP 1.0 headers");
  }
  if (chunkedTransferEncoding == _chunkedTransferEncoding) return;
  if (chunkedTransferEncoding) {
    List<String>? values = _headers[HttpHeaders.transferEncodingHeader];
    if (values == null || !values.contains("chunked")) {
      // Headers does not specify chunked encoding - add it if set.
      _addValue(HttpHeaders.transferEncodingHeader, "chunked");
    }
    contentLength = -1;
  } else {
    // Headers does specify chunked encoding - remove it if not set.
    remove(HttpHeaders.transferEncodingHeader, "chunked");
  }
  _chunkedTransferEncoding = chunkedTransferEncoding;
}