absl::optional<uint64_t> upstreamConnectionId() const override { return upstream_connection_id_; }
setUpstreamSslConnection(const Ssl::ConnectionInfoConstSharedPtr& ssl_connection_info) override {
Upstream::HostDescriptionConstSharedPtr upstreamHost() const override { return upstream_host_; }
void setUpstreamNumStreams(uint64_t num_streams) override { num_streams_ = num_streams; }
void setUpstreamProtocol(Http::Protocol protocol) override { upstream_protocol_ = protocol; }
absl::optional<Http::Protocol> upstreamProtocol() const override { return upstream_protocol_; }
absl::optional<std::chrono::nanoseconds> duration(absl::optional<MonotonicTime> time) const {
void setUpstreamInfo(std::shared_ptr<UpstreamInfo> info) override { upstream_info_ = info; }
void addBytesReceived(uint64_t bytes_received) override { bytes_received_ += bytes_received; }
void setConnectionTerminationDetails(absl::string_view connection_termination_details) override {
return std::find(response_flags_.begin(), response_flags_.end(), flag) != response_flags_.end();
void setVirtualClusterName(const absl::optional<std::string>& virtual_cluster_name) override {
void healthCheck(bool is_health_check) override { health_check_request_ = is_health_check; }
const envoy::config::core::v3::Metadata& dynamicMetadata() const override { return metadata_; };
const Http::RequestHeaderMap* getRequestHeaders() const override { return request_headers_; }
absl::optional<Upstream::ClusterInfoConstSharedPtr> upstreamClusterInfo() const override {
void setDownstreamBytesMeter(const BytesMeterSharedPtr& downstream_bytes_meter) override {
downstream_transport_failure_reason_ = std::string(info.downstreamTransportFailureReason());
// * request_headers_ is a raw pointer; to avoid pointer lifetime issues, a request header pointer
bool shouldDrainConnectionUponCompletion() const override { return should_drain_connection_; }
// TODO(agrawroh): Check if the owner of this storage outlives the StreamInfo. We should only copy