* Force disable chunk encoding, even if there is no known content length. This effectively forces
* Encodes an HTTP stream. This interface contains methods common to both the request and response
* TODO(mattklein123): Consider removing the StreamEncoder interface entirely and just duplicating
* Stream encoder used for sending a response (server to client). Virtual inheritance is required
* Indicates whether invalid HTTP messaging should be handled with a stream error or a connection
* Set a new request decoder for this ResponseEncoder. This is helpful in the case of an internal
* Decodes an HTTP stream. These are callbacks fired into a sink. This interface contains methods
* TODO(mattklein123): Consider removing the StreamDecoder interface entirely and just duplicating
* Stream decoder used for receiving a request (client to server). Virtual inheritance is required
* Stream decoder used for receiving a response (server to client). Virtual inheritance is required
* @return A handle to the response decoder. Caller can check the response decoder's liveness via
* Fires when a stream, or the connection the stream is sending to, goes over its high watermark.
* CodecProtocolException so that the error can be associated only with the problematic stream and
virtual void onMaxStreamsChanged(uint32_t num_streams) { UNREFERENCED_PARAMETER(num_streams); }
// Allows Envoy to process requests/responses with both `Content-Length` and `Transfer-Encoding`
* @param data supplies the data to dispatch. The codec will drain as many bytes as it processes.
* Called when the downstream connection or stream goes from over its high watermark to under its
* low watermark. As with onAboveWriteBufferHighWatermark above, this may be called independently
* @param response_encoder supplies the encoder to use for creating the response. The request and