// With the introduction of ApiListeners, neither event occurs. This function allows consumer code
void setClearHopByHopResponseHeaders(bool value) { clear_hop_by_hop_response_headers_ = value; }
// This runtime key configures the number of streams which must be closed on a connection before
// TODO(paulsohn): Investigate whether we can move the headers/trailers and stream info required
response_encoder_->setDeferredLoggingHeadersAndTrailers(request_headers_, response_headers_,
bool isHalfCloseEnabled() override { return connection_manager_.allow_upstream_half_close_; }
ENVOY_BUG(!route_cache_blocked_, "Should never try to refresh or clear the route cache when "
// Return true if this stream was deferred and dispatched pending headers, body and trailers (if
// Snapshot of the route configuration at the time of request is started. This is used to ensure
// This is used to track whether the route has been blocked. If the route is blocked, we can not
// inline vector to avoid heap allocation. If this assumption is wrong, we should consider using
// lifetime management to every HTTP filter, we do a hack here. But if every filter could manage
// When set to true, add Connection:close response header to nudge downstream client to reconnect.
// protocols the stream is destroyed after both request and response are complete i.e. reach their
// respective end-of-stream, by receiving trailers or the header/body with end-stream set in both
// For HTTP/1 upstream protocol or if independent half-close is disabled the stream is destroyed
// when the response is complete and reaches its end-of-stream, i.e. when trailers or the response