Interface HttpConnectionManagerOrBuilder

  • All Superinterfaces:
    com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
    All Known Implementing Classes:
    HttpConnectionManager, HttpConnectionManager.Builder

    public interface HttpConnectionManagerOrBuilder
    extends com.google.protobuf.MessageOrBuilder
    • Method Detail

      • getCodecTypeValue

        int getCodecTypeValue()
         Supplies the type of codec that the connection manager should use.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.CodecType codec_type = 1 [(.validate.rules) = { ... }
        Returns:
        The enum numeric value on the wire for codecType.
      • getCodecType

        HttpConnectionManager.CodecType getCodecType()
         Supplies the type of codec that the connection manager should use.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.CodecType codec_type = 1 [(.validate.rules) = { ... }
        Returns:
        The codecType.
      • getStatPrefix

        java.lang.String getStatPrefix()
         The human readable prefix to use when emitting statistics for the
         connection manager. See the :ref:`statistics documentation <config_http_conn_man_stats>` for
         more information.
         
        string stat_prefix = 2 [(.validate.rules) = { ... }
        Returns:
        The statPrefix.
      • getStatPrefixBytes

        com.google.protobuf.ByteString getStatPrefixBytes()
         The human readable prefix to use when emitting statistics for the
         connection manager. See the :ref:`statistics documentation <config_http_conn_man_stats>` for
         more information.
         
        string stat_prefix = 2 [(.validate.rules) = { ... }
        Returns:
        The bytes for statPrefix.
      • hasRds

        boolean hasRds()
         The connection manager’s route table will be dynamically loaded via the RDS API.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.Rds rds = 3;
        Returns:
        Whether the rds field is set.
      • getRds

        Rds getRds()
         The connection manager’s route table will be dynamically loaded via the RDS API.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.Rds rds = 3;
        Returns:
        The rds.
      • getRdsOrBuilder

        RdsOrBuilder getRdsOrBuilder()
         The connection manager’s route table will be dynamically loaded via the RDS API.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.Rds rds = 3;
      • hasRouteConfig

        boolean hasRouteConfig()
         The route table for the connection manager is static and is specified in this property.
         
        .envoy.config.route.v3.RouteConfiguration route_config = 4;
        Returns:
        Whether the routeConfig field is set.
      • getRouteConfig

        RouteConfiguration getRouteConfig()
         The route table for the connection manager is static and is specified in this property.
         
        .envoy.config.route.v3.RouteConfiguration route_config = 4;
        Returns:
        The routeConfig.
      • getRouteConfigOrBuilder

        RouteConfigurationOrBuilder getRouteConfigOrBuilder()
         The route table for the connection manager is static and is specified in this property.
         
        .envoy.config.route.v3.RouteConfiguration route_config = 4;
      • hasScopedRoutes

        boolean hasScopedRoutes()
         A route table will be dynamically assigned to each request based on request attributes
         (e.g., the value of a header). The "routing scopes" (i.e., route tables) and "scope keys" are
         specified in this message.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes scoped_routes = 31;
        Returns:
        Whether the scopedRoutes field is set.
      • getScopedRoutes

        ScopedRoutes getScopedRoutes()
         A route table will be dynamically assigned to each request based on request attributes
         (e.g., the value of a header). The "routing scopes" (i.e., route tables) and "scope keys" are
         specified in this message.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes scoped_routes = 31;
        Returns:
        The scopedRoutes.
      • getScopedRoutesOrBuilder

        ScopedRoutesOrBuilder getScopedRoutesOrBuilder()
         A route table will be dynamically assigned to each request based on request attributes
         (e.g., the value of a header). The "routing scopes" (i.e., route tables) and "scope keys" are
         specified in this message.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes scoped_routes = 31;
      • getHttpFiltersList

        java.util.List<HttpFilter> getHttpFiltersList()
         A list of individual HTTP filters that make up the filter chain for
         requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>`
         as the filters are processed sequentially as request events happen.
         
        repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;
      • getHttpFilters

        HttpFilter getHttpFilters​(int index)
         A list of individual HTTP filters that make up the filter chain for
         requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>`
         as the filters are processed sequentially as request events happen.
         
        repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;
      • getHttpFiltersCount

        int getHttpFiltersCount()
         A list of individual HTTP filters that make up the filter chain for
         requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>`
         as the filters are processed sequentially as request events happen.
         
        repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;
      • getHttpFiltersOrBuilderList

        java.util.List<? extends HttpFilterOrBuilder> getHttpFiltersOrBuilderList()
         A list of individual HTTP filters that make up the filter chain for
         requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>`
         as the filters are processed sequentially as request events happen.
         
        repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;
      • getHttpFiltersOrBuilder

        HttpFilterOrBuilder getHttpFiltersOrBuilder​(int index)
         A list of individual HTTP filters that make up the filter chain for
         requests made to the connection manager. :ref:`Order matters <arch_overview_http_filters_ordering>`
         as the filters are processed sequentially as request events happen.
         
        repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter http_filters = 5;
      • hasAddUserAgent

        boolean hasAddUserAgent()
         Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent`
         and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers. See the linked
         documentation for more information. Defaults to false.
         
        .google.protobuf.BoolValue add_user_agent = 6;
        Returns:
        Whether the addUserAgent field is set.
      • getAddUserAgent

        com.google.protobuf.BoolValue getAddUserAgent()
         Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent`
         and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers. See the linked
         documentation for more information. Defaults to false.
         
        .google.protobuf.BoolValue add_user_agent = 6;
        Returns:
        The addUserAgent.
      • getAddUserAgentOrBuilder

        com.google.protobuf.BoolValueOrBuilder getAddUserAgentOrBuilder()
         Whether the connection manager manipulates the :ref:`config_http_conn_man_headers_user-agent`
         and :ref:`config_http_conn_man_headers_downstream-service-cluster` headers. See the linked
         documentation for more information. Defaults to false.
         
        .google.protobuf.BoolValue add_user_agent = 6;
      • hasTracing

        boolean hasTracing()
         Presence of the object defines whether the connection manager
         emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider
         <envoy_v3_api_msg_config.trace.v3.Tracing>`.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.Tracing tracing = 7;
        Returns:
        Whether the tracing field is set.
      • getTracing

        HttpConnectionManager.Tracing getTracing()
         Presence of the object defines whether the connection manager
         emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider
         <envoy_v3_api_msg_config.trace.v3.Tracing>`.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.Tracing tracing = 7;
        Returns:
        The tracing.
      • getTracingOrBuilder

        HttpConnectionManager.TracingOrBuilder getTracingOrBuilder()
         Presence of the object defines whether the connection manager
         emits :ref:`tracing <arch_overview_tracing>` data to the :ref:`configured tracing provider
         <envoy_v3_api_msg_config.trace.v3.Tracing>`.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.Tracing tracing = 7;
      • hasCommonHttpProtocolOptions

        boolean hasCommonHttpProtocolOptions()
         Additional settings for HTTP requests handled by the connection manager. These will be
         applicable to both HTTP1 and HTTP2 requests.
         
        .envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 35 [(.udpa.annotations.security) = { ... }
        Returns:
        Whether the commonHttpProtocolOptions field is set.
      • getCommonHttpProtocolOptions

        HttpProtocolOptions getCommonHttpProtocolOptions()
         Additional settings for HTTP requests handled by the connection manager. These will be
         applicable to both HTTP1 and HTTP2 requests.
         
        .envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 35 [(.udpa.annotations.security) = { ... }
        Returns:
        The commonHttpProtocolOptions.
      • getCommonHttpProtocolOptionsOrBuilder

        HttpProtocolOptionsOrBuilder getCommonHttpProtocolOptionsOrBuilder()
         Additional settings for HTTP requests handled by the connection manager. These will be
         applicable to both HTTP1 and HTTP2 requests.
         
        .envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 35 [(.udpa.annotations.security) = { ... }
      • hasHttpProtocolOptions

        boolean hasHttpProtocolOptions()
         Additional HTTP/1 settings that are passed to the HTTP/1 codec.
         [#comment:TODO: The following fields are ignored when the
         :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>`
         is present:
         1. :ref:`allow_chunked_length <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.allow_chunked_length>`]
         
        .envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 8;
        Returns:
        Whether the httpProtocolOptions field is set.
      • getHttpProtocolOptions

        Http1ProtocolOptions getHttpProtocolOptions()
         Additional HTTP/1 settings that are passed to the HTTP/1 codec.
         [#comment:TODO: The following fields are ignored when the
         :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>`
         is present:
         1. :ref:`allow_chunked_length <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.allow_chunked_length>`]
         
        .envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 8;
        Returns:
        The httpProtocolOptions.
      • getHttpProtocolOptionsOrBuilder

        Http1ProtocolOptionsOrBuilder getHttpProtocolOptionsOrBuilder()
         Additional HTTP/1 settings that are passed to the HTTP/1 codec.
         [#comment:TODO: The following fields are ignored when the
         :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>`
         is present:
         1. :ref:`allow_chunked_length <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.allow_chunked_length>`]
         
        .envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 8;
      • hasHttp2ProtocolOptions

        boolean hasHttp2ProtocolOptions()
         Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.
         
        .envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 9 [(.udpa.annotations.security) = { ... }
        Returns:
        Whether the http2ProtocolOptions field is set.
      • getHttp2ProtocolOptions

        Http2ProtocolOptions getHttp2ProtocolOptions()
         Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.
         
        .envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 9 [(.udpa.annotations.security) = { ... }
        Returns:
        The http2ProtocolOptions.
      • getHttp2ProtocolOptionsOrBuilder

        Http2ProtocolOptionsOrBuilder getHttp2ProtocolOptionsOrBuilder()
         Additional HTTP/2 settings that are passed directly to the HTTP/2 codec.
         
        .envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 9 [(.udpa.annotations.security) = { ... }
      • hasHttp3ProtocolOptions

        boolean hasHttp3ProtocolOptions()
         Additional HTTP/3 settings that are passed directly to the HTTP/3 codec.
         [#not-implemented-hide:]
         
        .envoy.config.core.v3.Http3ProtocolOptions http3_protocol_options = 44;
        Returns:
        Whether the http3ProtocolOptions field is set.
      • getHttp3ProtocolOptions

        Http3ProtocolOptions getHttp3ProtocolOptions()
         Additional HTTP/3 settings that are passed directly to the HTTP/3 codec.
         [#not-implemented-hide:]
         
        .envoy.config.core.v3.Http3ProtocolOptions http3_protocol_options = 44;
        Returns:
        The http3ProtocolOptions.
      • getHttp3ProtocolOptionsOrBuilder

        Http3ProtocolOptionsOrBuilder getHttp3ProtocolOptionsOrBuilder()
         Additional HTTP/3 settings that are passed directly to the HTTP/3 codec.
         [#not-implemented-hide:]
         
        .envoy.config.core.v3.Http3ProtocolOptions http3_protocol_options = 44;
      • getServerName

        java.lang.String getServerName()
         An optional override that the connection manager will write to the server
         header in responses. If not set, the default is ``envoy``.
         
        string server_name = 10 [(.validate.rules) = { ... }
        Returns:
        The serverName.
      • getServerNameBytes

        com.google.protobuf.ByteString getServerNameBytes()
         An optional override that the connection manager will write to the server
         header in responses. If not set, the default is ``envoy``.
         
        string server_name = 10 [(.validate.rules) = { ... }
        Returns:
        The bytes for serverName.
      • getServerHeaderTransformationValue

        int getServerHeaderTransformationValue()
         Defines the action to be applied to the Server header on the response path.
         By default, Envoy will overwrite the header with the value specified in
         server_name.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ServerHeaderTransformation server_header_transformation = 34 [(.validate.rules) = { ... }
        Returns:
        The enum numeric value on the wire for serverHeaderTransformation.
      • getServerHeaderTransformation

        HttpConnectionManager.ServerHeaderTransformation getServerHeaderTransformation()
         Defines the action to be applied to the Server header on the response path.
         By default, Envoy will overwrite the header with the value specified in
         server_name.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ServerHeaderTransformation server_header_transformation = 34 [(.validate.rules) = { ... }
        Returns:
        The serverHeaderTransformation.
      • hasSchemeHeaderTransformation

        boolean hasSchemeHeaderTransformation()
         Allows for explicit transformation of the :scheme header on the request path.
         If not set, Envoy's default :ref:`scheme  <config_http_conn_man_headers_scheme>`
         handling applies.
         
        .envoy.config.core.v3.SchemeHeaderTransformation scheme_header_transformation = 48;
        Returns:
        Whether the schemeHeaderTransformation field is set.
      • getSchemeHeaderTransformation

        SchemeHeaderTransformation getSchemeHeaderTransformation()
         Allows for explicit transformation of the :scheme header on the request path.
         If not set, Envoy's default :ref:`scheme  <config_http_conn_man_headers_scheme>`
         handling applies.
         
        .envoy.config.core.v3.SchemeHeaderTransformation scheme_header_transformation = 48;
        Returns:
        The schemeHeaderTransformation.
      • getSchemeHeaderTransformationOrBuilder

        SchemeHeaderTransformationOrBuilder getSchemeHeaderTransformationOrBuilder()
         Allows for explicit transformation of the :scheme header on the request path.
         If not set, Envoy's default :ref:`scheme  <config_http_conn_man_headers_scheme>`
         handling applies.
         
        .envoy.config.core.v3.SchemeHeaderTransformation scheme_header_transformation = 48;
      • hasMaxRequestHeadersKb

        boolean hasMaxRequestHeadersKb()
         The maximum request headers size for incoming connections.
         If unconfigured, the default max request headers allowed is 60 KiB.
         Requests that exceed this limit will receive a 431 response.
         
        .google.protobuf.UInt32Value max_request_headers_kb = 29 [(.validate.rules) = { ... }
        Returns:
        Whether the maxRequestHeadersKb field is set.
      • getMaxRequestHeadersKb

        com.google.protobuf.UInt32Value getMaxRequestHeadersKb()
         The maximum request headers size for incoming connections.
         If unconfigured, the default max request headers allowed is 60 KiB.
         Requests that exceed this limit will receive a 431 response.
         
        .google.protobuf.UInt32Value max_request_headers_kb = 29 [(.validate.rules) = { ... }
        Returns:
        The maxRequestHeadersKb.
      • getMaxRequestHeadersKbOrBuilder

        com.google.protobuf.UInt32ValueOrBuilder getMaxRequestHeadersKbOrBuilder()
         The maximum request headers size for incoming connections.
         If unconfigured, the default max request headers allowed is 60 KiB.
         Requests that exceed this limit will receive a 431 response.
         
        .google.protobuf.UInt32Value max_request_headers_kb = 29 [(.validate.rules) = { ... }
      • hasStreamIdleTimeout

        boolean hasStreamIdleTimeout()
         The stream idle timeout for connections managed by the connection manager.
         If not specified, this defaults to 5 minutes. The default value was selected
         so as not to interfere with any smaller configured timeouts that may have
         existed in configurations prior to the introduction of this feature, while
         introducing robustness to TCP connections that terminate without a FIN.
        
         This idle timeout applies to new streams and is overridable by the
         :ref:`route-level idle_timeout
         <envoy_v3_api_field_config.route.v3.RouteAction.idle_timeout>`. Even on a stream in
         which the override applies, prior to receipt of the initial request
         headers, the :ref:`stream_idle_timeout
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_idle_timeout>`
         applies. Each time an encode/decode event for headers or data is processed
         for the stream, the timer will be reset. If the timeout fires, the stream
         is terminated with a 408 Request Timeout error code if no upstream response
         header has been received, otherwise a stream reset occurs.
        
         This timeout also specifies the amount of time that Envoy will wait for the peer to open enough
         window to write any remaining stream data once the entirety of stream data (local end stream is
         true) has been buffered pending available window. In other words, this timeout defends against
         a peer that does not release enough window to completely write the stream, even though all
         data has been proxied within available flow control windows. If the timeout is hit in this
         case, the :ref:`tx_flush_timeout <config_http_conn_man_stats_per_codec>` counter will be
         incremented. Note that :ref:`max_stream_duration
         <envoy_v3_api_field_config.core.v3.HttpProtocolOptions.max_stream_duration>` does not apply to
         this corner case.
        
         If the :ref:`overload action <config_overload_manager_overload_actions>` "envoy.overload_actions.reduce_timeouts"
         is configured, this timeout is scaled according to the value for
         :ref:`HTTP_DOWNSTREAM_STREAM_IDLE <envoy_v3_api_enum_value_config.overload.v3.ScaleTimersOverloadActionConfig.TimerType.HTTP_DOWNSTREAM_STREAM_IDLE>`.
        
         Note that it is possible to idle timeout even if the wire traffic for a stream is non-idle, due
         to the granularity of events presented to the connection manager. For example, while receiving
         very large request headers, it may be the case that there is traffic regularly arriving on the
         wire while the connection manage is only able to observe the end-of-headers event, hence the
         stream may still idle timeout.
        
         A value of 0 will completely disable the connection manager stream idle
         timeout, although per-route idle timeout overrides will continue to apply.
         
        .google.protobuf.Duration stream_idle_timeout = 24 [(.udpa.annotations.security) = { ... }
        Returns:
        Whether the streamIdleTimeout field is set.
      • getStreamIdleTimeout

        com.google.protobuf.Duration getStreamIdleTimeout()
         The stream idle timeout for connections managed by the connection manager.
         If not specified, this defaults to 5 minutes. The default value was selected
         so as not to interfere with any smaller configured timeouts that may have
         existed in configurations prior to the introduction of this feature, while
         introducing robustness to TCP connections that terminate without a FIN.
        
         This idle timeout applies to new streams and is overridable by the
         :ref:`route-level idle_timeout
         <envoy_v3_api_field_config.route.v3.RouteAction.idle_timeout>`. Even on a stream in
         which the override applies, prior to receipt of the initial request
         headers, the :ref:`stream_idle_timeout
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_idle_timeout>`
         applies. Each time an encode/decode event for headers or data is processed
         for the stream, the timer will be reset. If the timeout fires, the stream
         is terminated with a 408 Request Timeout error code if no upstream response
         header has been received, otherwise a stream reset occurs.
        
         This timeout also specifies the amount of time that Envoy will wait for the peer to open enough
         window to write any remaining stream data once the entirety of stream data (local end stream is
         true) has been buffered pending available window. In other words, this timeout defends against
         a peer that does not release enough window to completely write the stream, even though all
         data has been proxied within available flow control windows. If the timeout is hit in this
         case, the :ref:`tx_flush_timeout <config_http_conn_man_stats_per_codec>` counter will be
         incremented. Note that :ref:`max_stream_duration
         <envoy_v3_api_field_config.core.v3.HttpProtocolOptions.max_stream_duration>` does not apply to
         this corner case.
        
         If the :ref:`overload action <config_overload_manager_overload_actions>` "envoy.overload_actions.reduce_timeouts"
         is configured, this timeout is scaled according to the value for
         :ref:`HTTP_DOWNSTREAM_STREAM_IDLE <envoy_v3_api_enum_value_config.overload.v3.ScaleTimersOverloadActionConfig.TimerType.HTTP_DOWNSTREAM_STREAM_IDLE>`.
        
         Note that it is possible to idle timeout even if the wire traffic for a stream is non-idle, due
         to the granularity of events presented to the connection manager. For example, while receiving
         very large request headers, it may be the case that there is traffic regularly arriving on the
         wire while the connection manage is only able to observe the end-of-headers event, hence the
         stream may still idle timeout.
        
         A value of 0 will completely disable the connection manager stream idle
         timeout, although per-route idle timeout overrides will continue to apply.
         
        .google.protobuf.Duration stream_idle_timeout = 24 [(.udpa.annotations.security) = { ... }
        Returns:
        The streamIdleTimeout.
      • getStreamIdleTimeoutOrBuilder

        com.google.protobuf.DurationOrBuilder getStreamIdleTimeoutOrBuilder()
         The stream idle timeout for connections managed by the connection manager.
         If not specified, this defaults to 5 minutes. The default value was selected
         so as not to interfere with any smaller configured timeouts that may have
         existed in configurations prior to the introduction of this feature, while
         introducing robustness to TCP connections that terminate without a FIN.
        
         This idle timeout applies to new streams and is overridable by the
         :ref:`route-level idle_timeout
         <envoy_v3_api_field_config.route.v3.RouteAction.idle_timeout>`. Even on a stream in
         which the override applies, prior to receipt of the initial request
         headers, the :ref:`stream_idle_timeout
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_idle_timeout>`
         applies. Each time an encode/decode event for headers or data is processed
         for the stream, the timer will be reset. If the timeout fires, the stream
         is terminated with a 408 Request Timeout error code if no upstream response
         header has been received, otherwise a stream reset occurs.
        
         This timeout also specifies the amount of time that Envoy will wait for the peer to open enough
         window to write any remaining stream data once the entirety of stream data (local end stream is
         true) has been buffered pending available window. In other words, this timeout defends against
         a peer that does not release enough window to completely write the stream, even though all
         data has been proxied within available flow control windows. If the timeout is hit in this
         case, the :ref:`tx_flush_timeout <config_http_conn_man_stats_per_codec>` counter will be
         incremented. Note that :ref:`max_stream_duration
         <envoy_v3_api_field_config.core.v3.HttpProtocolOptions.max_stream_duration>` does not apply to
         this corner case.
        
         If the :ref:`overload action <config_overload_manager_overload_actions>` "envoy.overload_actions.reduce_timeouts"
         is configured, this timeout is scaled according to the value for
         :ref:`HTTP_DOWNSTREAM_STREAM_IDLE <envoy_v3_api_enum_value_config.overload.v3.ScaleTimersOverloadActionConfig.TimerType.HTTP_DOWNSTREAM_STREAM_IDLE>`.
        
         Note that it is possible to idle timeout even if the wire traffic for a stream is non-idle, due
         to the granularity of events presented to the connection manager. For example, while receiving
         very large request headers, it may be the case that there is traffic regularly arriving on the
         wire while the connection manage is only able to observe the end-of-headers event, hence the
         stream may still idle timeout.
        
         A value of 0 will completely disable the connection manager stream idle
         timeout, although per-route idle timeout overrides will continue to apply.
         
        .google.protobuf.Duration stream_idle_timeout = 24 [(.udpa.annotations.security) = { ... }
      • hasRequestTimeout

        boolean hasRequestTimeout()
         The amount of time that Envoy will wait for the entire request to be received.
         The timer is activated when the request is initiated, and is disarmed when the last byte of the
         request is sent upstream (i.e. all decoding filters have processed the request), OR when the
         response is initiated. If not specified or set to 0, this timeout is disabled.
         
        .google.protobuf.Duration request_timeout = 28 [(.udpa.annotations.security) = { ... }
        Returns:
        Whether the requestTimeout field is set.
      • getRequestTimeout

        com.google.protobuf.Duration getRequestTimeout()
         The amount of time that Envoy will wait for the entire request to be received.
         The timer is activated when the request is initiated, and is disarmed when the last byte of the
         request is sent upstream (i.e. all decoding filters have processed the request), OR when the
         response is initiated. If not specified or set to 0, this timeout is disabled.
         
        .google.protobuf.Duration request_timeout = 28 [(.udpa.annotations.security) = { ... }
        Returns:
        The requestTimeout.
      • getRequestTimeoutOrBuilder

        com.google.protobuf.DurationOrBuilder getRequestTimeoutOrBuilder()
         The amount of time that Envoy will wait for the entire request to be received.
         The timer is activated when the request is initiated, and is disarmed when the last byte of the
         request is sent upstream (i.e. all decoding filters have processed the request), OR when the
         response is initiated. If not specified or set to 0, this timeout is disabled.
         
        .google.protobuf.Duration request_timeout = 28 [(.udpa.annotations.security) = { ... }
      • hasRequestHeadersTimeout

        boolean hasRequestHeadersTimeout()
         The amount of time that Envoy will wait for the request headers to be received. The timer is
         activated when the first byte of the headers is received, and is disarmed when the last byte of
         the headers has been received. If not specified or set to 0, this timeout is disabled.
         
        .google.protobuf.Duration request_headers_timeout = 41 [(.validate.rules) = { ... }
        Returns:
        Whether the requestHeadersTimeout field is set.
      • getRequestHeadersTimeout

        com.google.protobuf.Duration getRequestHeadersTimeout()
         The amount of time that Envoy will wait for the request headers to be received. The timer is
         activated when the first byte of the headers is received, and is disarmed when the last byte of
         the headers has been received. If not specified or set to 0, this timeout is disabled.
         
        .google.protobuf.Duration request_headers_timeout = 41 [(.validate.rules) = { ... }
        Returns:
        The requestHeadersTimeout.
      • getRequestHeadersTimeoutOrBuilder

        com.google.protobuf.DurationOrBuilder getRequestHeadersTimeoutOrBuilder()
         The amount of time that Envoy will wait for the request headers to be received. The timer is
         activated when the first byte of the headers is received, and is disarmed when the last byte of
         the headers has been received. If not specified or set to 0, this timeout is disabled.
         
        .google.protobuf.Duration request_headers_timeout = 41 [(.validate.rules) = { ... }
      • hasDrainTimeout

        boolean hasDrainTimeout()
         The time that Envoy will wait between sending an HTTP/2 “shutdown
         notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame.
         This is used so that Envoy provides a grace period for new streams that
         race with the final GOAWAY frame. During this grace period, Envoy will
         continue to accept new streams. After the grace period, a final GOAWAY
         frame is sent and Envoy will start refusing new streams. Draining occurs
         both when a connection hits the idle timeout or during general server
         draining. The default grace period is 5000 milliseconds (5 seconds) if this
         option is not specified.
         
        .google.protobuf.Duration drain_timeout = 12;
        Returns:
        Whether the drainTimeout field is set.
      • getDrainTimeout

        com.google.protobuf.Duration getDrainTimeout()
         The time that Envoy will wait between sending an HTTP/2 “shutdown
         notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame.
         This is used so that Envoy provides a grace period for new streams that
         race with the final GOAWAY frame. During this grace period, Envoy will
         continue to accept new streams. After the grace period, a final GOAWAY
         frame is sent and Envoy will start refusing new streams. Draining occurs
         both when a connection hits the idle timeout or during general server
         draining. The default grace period is 5000 milliseconds (5 seconds) if this
         option is not specified.
         
        .google.protobuf.Duration drain_timeout = 12;
        Returns:
        The drainTimeout.
      • getDrainTimeoutOrBuilder

        com.google.protobuf.DurationOrBuilder getDrainTimeoutOrBuilder()
         The time that Envoy will wait between sending an HTTP/2 “shutdown
         notification” (GOAWAY frame with max stream ID) and a final GOAWAY frame.
         This is used so that Envoy provides a grace period for new streams that
         race with the final GOAWAY frame. During this grace period, Envoy will
         continue to accept new streams. After the grace period, a final GOAWAY
         frame is sent and Envoy will start refusing new streams. Draining occurs
         both when a connection hits the idle timeout or during general server
         draining. The default grace period is 5000 milliseconds (5 seconds) if this
         option is not specified.
         
        .google.protobuf.Duration drain_timeout = 12;
      • hasDelayedCloseTimeout

        boolean hasDelayedCloseTimeout()
         The delayed close timeout is for downstream connections managed by the HTTP connection manager.
         It is defined as a grace period after connection close processing has been locally initiated
         during which Envoy will wait for the peer to close (i.e., a TCP FIN/RST is received by Envoy
         from the downstream connection) prior to Envoy closing the socket associated with that
         connection.
         NOTE: This timeout is enforced even when the socket associated with the downstream connection
         is pending a flush of the write buffer. However, any progress made writing data to the socket
         will restart the timer associated with this timeout. This means that the total grace period for
         a socket in this state will be
         <total_time_waiting_for_write_buffer_flushes>+<delayed_close_timeout>.
        
         Delaying Envoy's connection close and giving the peer the opportunity to initiate the close
         sequence mitigates a race condition that exists when downstream clients do not drain/process
         data in a connection's receive buffer after a remote close has been detected via a socket
         write(). This race leads to such clients failing to process the response code sent by Envoy,
         which could result in erroneous downstream processing.
        
         If the timeout triggers, Envoy will close the connection's socket.
        
         The default timeout is 1000 ms if this option is not specified.
        
         .. NOTE::
         To be useful in avoiding the race condition described above, this timeout must be set
         to *at least* <max round trip time expected between clients and Envoy>+<100ms to account for
         a reasonable "worst" case processing time for a full iteration of Envoy's event loop>.
        
         .. WARNING::
         A value of 0 will completely disable delayed close processing. When disabled, the downstream
         connection's socket will be closed immediately after the write flush is completed or will
         never close if the write flush does not complete.
         
        .google.protobuf.Duration delayed_close_timeout = 26;
        Returns:
        Whether the delayedCloseTimeout field is set.
      • getDelayedCloseTimeout

        com.google.protobuf.Duration getDelayedCloseTimeout()
         The delayed close timeout is for downstream connections managed by the HTTP connection manager.
         It is defined as a grace period after connection close processing has been locally initiated
         during which Envoy will wait for the peer to close (i.e., a TCP FIN/RST is received by Envoy
         from the downstream connection) prior to Envoy closing the socket associated with that
         connection.
         NOTE: This timeout is enforced even when the socket associated with the downstream connection
         is pending a flush of the write buffer. However, any progress made writing data to the socket
         will restart the timer associated with this timeout. This means that the total grace period for
         a socket in this state will be
         <total_time_waiting_for_write_buffer_flushes>+<delayed_close_timeout>.
        
         Delaying Envoy's connection close and giving the peer the opportunity to initiate the close
         sequence mitigates a race condition that exists when downstream clients do not drain/process
         data in a connection's receive buffer after a remote close has been detected via a socket
         write(). This race leads to such clients failing to process the response code sent by Envoy,
         which could result in erroneous downstream processing.
        
         If the timeout triggers, Envoy will close the connection's socket.
        
         The default timeout is 1000 ms if this option is not specified.
        
         .. NOTE::
         To be useful in avoiding the race condition described above, this timeout must be set
         to *at least* <max round trip time expected between clients and Envoy>+<100ms to account for
         a reasonable "worst" case processing time for a full iteration of Envoy's event loop>.
        
         .. WARNING::
         A value of 0 will completely disable delayed close processing. When disabled, the downstream
         connection's socket will be closed immediately after the write flush is completed or will
         never close if the write flush does not complete.
         
        .google.protobuf.Duration delayed_close_timeout = 26;
        Returns:
        The delayedCloseTimeout.
      • getDelayedCloseTimeoutOrBuilder

        com.google.protobuf.DurationOrBuilder getDelayedCloseTimeoutOrBuilder()
         The delayed close timeout is for downstream connections managed by the HTTP connection manager.
         It is defined as a grace period after connection close processing has been locally initiated
         during which Envoy will wait for the peer to close (i.e., a TCP FIN/RST is received by Envoy
         from the downstream connection) prior to Envoy closing the socket associated with that
         connection.
         NOTE: This timeout is enforced even when the socket associated with the downstream connection
         is pending a flush of the write buffer. However, any progress made writing data to the socket
         will restart the timer associated with this timeout. This means that the total grace period for
         a socket in this state will be
         <total_time_waiting_for_write_buffer_flushes>+<delayed_close_timeout>.
        
         Delaying Envoy's connection close and giving the peer the opportunity to initiate the close
         sequence mitigates a race condition that exists when downstream clients do not drain/process
         data in a connection's receive buffer after a remote close has been detected via a socket
         write(). This race leads to such clients failing to process the response code sent by Envoy,
         which could result in erroneous downstream processing.
        
         If the timeout triggers, Envoy will close the connection's socket.
        
         The default timeout is 1000 ms if this option is not specified.
        
         .. NOTE::
         To be useful in avoiding the race condition described above, this timeout must be set
         to *at least* <max round trip time expected between clients and Envoy>+<100ms to account for
         a reasonable "worst" case processing time for a full iteration of Envoy's event loop>.
        
         .. WARNING::
         A value of 0 will completely disable delayed close processing. When disabled, the downstream
         connection's socket will be closed immediately after the write flush is completed or will
         never close if the write flush does not complete.
         
        .google.protobuf.Duration delayed_close_timeout = 26;
      • getAccessLogList

        java.util.List<AccessLog> getAccessLogList()
         Configuration for :ref:`HTTP access logs <arch_overview_access_logs>`
         emitted by the connection manager.
         
        repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;
      • getAccessLog

        AccessLog getAccessLog​(int index)
         Configuration for :ref:`HTTP access logs <arch_overview_access_logs>`
         emitted by the connection manager.
         
        repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;
      • getAccessLogCount

        int getAccessLogCount()
         Configuration for :ref:`HTTP access logs <arch_overview_access_logs>`
         emitted by the connection manager.
         
        repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;
      • getAccessLogOrBuilderList

        java.util.List<? extends AccessLogOrBuilder> getAccessLogOrBuilderList()
         Configuration for :ref:`HTTP access logs <arch_overview_access_logs>`
         emitted by the connection manager.
         
        repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;
      • getAccessLogOrBuilder

        AccessLogOrBuilder getAccessLogOrBuilder​(int index)
         Configuration for :ref:`HTTP access logs <arch_overview_access_logs>`
         emitted by the connection manager.
         
        repeated .envoy.config.accesslog.v3.AccessLog access_log = 13;
      • hasAccessLogFlushInterval

        @Deprecated
        boolean hasAccessLogFlushInterval()
        Deprecated.
        envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.access_log_flush_interval is deprecated. See envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.proto;l=597
         .. attention::
         This field is deprecated in favor of
         :ref:`access_log_flush_interval
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.HcmAccessLogOptions.access_log_flush_interval>`.
         Note that if both this field and :ref:`access_log_flush_interval
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.HcmAccessLogOptions.access_log_flush_interval>`
         are specified, the former (deprecated field) is ignored.
         
        .google.protobuf.Duration access_log_flush_interval = 54 [deprecated = true, (.validate.rules) = { ... }
        Returns:
        Whether the accessLogFlushInterval field is set.
      • getAccessLogFlushInterval

        @Deprecated
        com.google.protobuf.Duration getAccessLogFlushInterval()
        Deprecated.
        envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.access_log_flush_interval is deprecated. See envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.proto;l=597
         .. attention::
         This field is deprecated in favor of
         :ref:`access_log_flush_interval
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.HcmAccessLogOptions.access_log_flush_interval>`.
         Note that if both this field and :ref:`access_log_flush_interval
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.HcmAccessLogOptions.access_log_flush_interval>`
         are specified, the former (deprecated field) is ignored.
         
        .google.protobuf.Duration access_log_flush_interval = 54 [deprecated = true, (.validate.rules) = { ... }
        Returns:
        The accessLogFlushInterval.
      • getAccessLogFlushIntervalOrBuilder

        @Deprecated
        com.google.protobuf.DurationOrBuilder getAccessLogFlushIntervalOrBuilder()
        Deprecated.
         .. attention::
         This field is deprecated in favor of
         :ref:`access_log_flush_interval
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.HcmAccessLogOptions.access_log_flush_interval>`.
         Note that if both this field and :ref:`access_log_flush_interval
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.HcmAccessLogOptions.access_log_flush_interval>`
         are specified, the former (deprecated field) is ignored.
         
        .google.protobuf.Duration access_log_flush_interval = 54 [deprecated = true, (.validate.rules) = { ... }
      • getFlushAccessLogOnNewRequest

        @Deprecated
        boolean getFlushAccessLogOnNewRequest()
        Deprecated.
        envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.flush_access_log_on_new_request is deprecated. See envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.proto;l=610
         .. attention::
         This field is deprecated in favor of
         :ref:`flush_access_log_on_new_request
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.HcmAccessLogOptions.flush_access_log_on_new_request>`.
         Note that if both this field and :ref:`flush_access_log_on_new_request
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.HcmAccessLogOptions.flush_access_log_on_new_request>`
         are specified, the former (deprecated field) is ignored.
         
        bool flush_access_log_on_new_request = 55 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
        Returns:
        The flushAccessLogOnNewRequest.
      • hasAccessLogOptions

        boolean hasAccessLogOptions()
         Additional access log options for HTTP connection manager.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.HcmAccessLogOptions access_log_options = 56;
        Returns:
        Whether the accessLogOptions field is set.
      • getAccessLogOptions

        HttpConnectionManager.HcmAccessLogOptions getAccessLogOptions()
         Additional access log options for HTTP connection manager.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.HcmAccessLogOptions access_log_options = 56;
        Returns:
        The accessLogOptions.
      • getAccessLogOptionsOrBuilder

        HttpConnectionManager.HcmAccessLogOptionsOrBuilder getAccessLogOptionsOrBuilder()
         Additional access log options for HTTP connection manager.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.HcmAccessLogOptions access_log_options = 56;
      • hasUseRemoteAddress

        boolean hasUseRemoteAddress()
         If set to true, the connection manager will use the real remote address
         of the client connection when determining internal versus external origin and manipulating
         various headers. If set to false or absent, the connection manager will use the
         :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header. See the documentation for
         :ref:`config_http_conn_man_headers_x-forwarded-for`,
         :ref:`config_http_conn_man_headers_x-envoy-internal`, and
         :ref:`config_http_conn_man_headers_x-envoy-external-address` for more information.
         
        .google.protobuf.BoolValue use_remote_address = 14 [(.udpa.annotations.security) = { ... }
        Returns:
        Whether the useRemoteAddress field is set.
      • getUseRemoteAddress

        com.google.protobuf.BoolValue getUseRemoteAddress()
         If set to true, the connection manager will use the real remote address
         of the client connection when determining internal versus external origin and manipulating
         various headers. If set to false or absent, the connection manager will use the
         :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header. See the documentation for
         :ref:`config_http_conn_man_headers_x-forwarded-for`,
         :ref:`config_http_conn_man_headers_x-envoy-internal`, and
         :ref:`config_http_conn_man_headers_x-envoy-external-address` for more information.
         
        .google.protobuf.BoolValue use_remote_address = 14 [(.udpa.annotations.security) = { ... }
        Returns:
        The useRemoteAddress.
      • getUseRemoteAddressOrBuilder

        com.google.protobuf.BoolValueOrBuilder getUseRemoteAddressOrBuilder()
         If set to true, the connection manager will use the real remote address
         of the client connection when determining internal versus external origin and manipulating
         various headers. If set to false or absent, the connection manager will use the
         :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header. See the documentation for
         :ref:`config_http_conn_man_headers_x-forwarded-for`,
         :ref:`config_http_conn_man_headers_x-envoy-internal`, and
         :ref:`config_http_conn_man_headers_x-envoy-external-address` for more information.
         
        .google.protobuf.BoolValue use_remote_address = 14 [(.udpa.annotations.security) = { ... }
      • getXffNumTrustedHops

        int getXffNumTrustedHops()
         The number of additional ingress proxy hops from the right side of the
         :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header to trust when
         determining the origin client's IP address. The default is zero if this option
         is not specified. See the documentation for
         :ref:`config_http_conn_man_headers_x-forwarded-for` for more information.
         
        uint32 xff_num_trusted_hops = 19;
        Returns:
        The xffNumTrustedHops.
      • getOriginalIpDetectionExtensionsList

        java.util.List<TypedExtensionConfig> getOriginalIpDetectionExtensionsList()
         The configuration for the original IP detection extensions.
        
         When configured the extensions will be called along with the request headers
         and information about the downstream connection, such as the directly connected address.
         Each extension will then use these parameters to decide the request's effective remote address.
         If an extension fails to detect the original IP address and isn't configured to reject
         the request, the HCM will try the remaining extensions until one succeeds or rejects
         the request. If the request isn't rejected nor any extension succeeds, the HCM will
         fallback to using the remote address.
        
         .. WARNING::
         Extensions cannot be used in conjunction with :ref:`use_remote_address
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>`
         nor :ref:`xff_num_trusted_hops
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.xff_num_trusted_hops>`.
        
         [#extension-category: envoy.http.original_ip_detection]
         
        repeated .envoy.config.core.v3.TypedExtensionConfig original_ip_detection_extensions = 46;
      • getOriginalIpDetectionExtensions

        TypedExtensionConfig getOriginalIpDetectionExtensions​(int index)
         The configuration for the original IP detection extensions.
        
         When configured the extensions will be called along with the request headers
         and information about the downstream connection, such as the directly connected address.
         Each extension will then use these parameters to decide the request's effective remote address.
         If an extension fails to detect the original IP address and isn't configured to reject
         the request, the HCM will try the remaining extensions until one succeeds or rejects
         the request. If the request isn't rejected nor any extension succeeds, the HCM will
         fallback to using the remote address.
        
         .. WARNING::
         Extensions cannot be used in conjunction with :ref:`use_remote_address
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>`
         nor :ref:`xff_num_trusted_hops
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.xff_num_trusted_hops>`.
        
         [#extension-category: envoy.http.original_ip_detection]
         
        repeated .envoy.config.core.v3.TypedExtensionConfig original_ip_detection_extensions = 46;
      • getOriginalIpDetectionExtensionsCount

        int getOriginalIpDetectionExtensionsCount()
         The configuration for the original IP detection extensions.
        
         When configured the extensions will be called along with the request headers
         and information about the downstream connection, such as the directly connected address.
         Each extension will then use these parameters to decide the request's effective remote address.
         If an extension fails to detect the original IP address and isn't configured to reject
         the request, the HCM will try the remaining extensions until one succeeds or rejects
         the request. If the request isn't rejected nor any extension succeeds, the HCM will
         fallback to using the remote address.
        
         .. WARNING::
         Extensions cannot be used in conjunction with :ref:`use_remote_address
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>`
         nor :ref:`xff_num_trusted_hops
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.xff_num_trusted_hops>`.
        
         [#extension-category: envoy.http.original_ip_detection]
         
        repeated .envoy.config.core.v3.TypedExtensionConfig original_ip_detection_extensions = 46;
      • getOriginalIpDetectionExtensionsOrBuilderList

        java.util.List<? extends TypedExtensionConfigOrBuilder> getOriginalIpDetectionExtensionsOrBuilderList()
         The configuration for the original IP detection extensions.
        
         When configured the extensions will be called along with the request headers
         and information about the downstream connection, such as the directly connected address.
         Each extension will then use these parameters to decide the request's effective remote address.
         If an extension fails to detect the original IP address and isn't configured to reject
         the request, the HCM will try the remaining extensions until one succeeds or rejects
         the request. If the request isn't rejected nor any extension succeeds, the HCM will
         fallback to using the remote address.
        
         .. WARNING::
         Extensions cannot be used in conjunction with :ref:`use_remote_address
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>`
         nor :ref:`xff_num_trusted_hops
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.xff_num_trusted_hops>`.
        
         [#extension-category: envoy.http.original_ip_detection]
         
        repeated .envoy.config.core.v3.TypedExtensionConfig original_ip_detection_extensions = 46;
      • getOriginalIpDetectionExtensionsOrBuilder

        TypedExtensionConfigOrBuilder getOriginalIpDetectionExtensionsOrBuilder​(int index)
         The configuration for the original IP detection extensions.
        
         When configured the extensions will be called along with the request headers
         and information about the downstream connection, such as the directly connected address.
         Each extension will then use these parameters to decide the request's effective remote address.
         If an extension fails to detect the original IP address and isn't configured to reject
         the request, the HCM will try the remaining extensions until one succeeds or rejects
         the request. If the request isn't rejected nor any extension succeeds, the HCM will
         fallback to using the remote address.
        
         .. WARNING::
         Extensions cannot be used in conjunction with :ref:`use_remote_address
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>`
         nor :ref:`xff_num_trusted_hops
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.xff_num_trusted_hops>`.
        
         [#extension-category: envoy.http.original_ip_detection]
         
        repeated .envoy.config.core.v3.TypedExtensionConfig original_ip_detection_extensions = 46;
      • getEarlyHeaderMutationExtensionsList

        java.util.List<TypedExtensionConfig> getEarlyHeaderMutationExtensionsList()
         The configuration for the early header mutation extensions.
        
         When configured the extensions will be called before any routing, tracing, or any filter processing.
         Each extension will be applied in the order they are configured.
         If the same header is mutated by multiple extensions, then the last extension will win.
        
         [#extension-category: envoy.http.early_header_mutation]
         
        repeated .envoy.config.core.v3.TypedExtensionConfig early_header_mutation_extensions = 52;
      • getEarlyHeaderMutationExtensions

        TypedExtensionConfig getEarlyHeaderMutationExtensions​(int index)
         The configuration for the early header mutation extensions.
        
         When configured the extensions will be called before any routing, tracing, or any filter processing.
         Each extension will be applied in the order they are configured.
         If the same header is mutated by multiple extensions, then the last extension will win.
        
         [#extension-category: envoy.http.early_header_mutation]
         
        repeated .envoy.config.core.v3.TypedExtensionConfig early_header_mutation_extensions = 52;
      • getEarlyHeaderMutationExtensionsCount

        int getEarlyHeaderMutationExtensionsCount()
         The configuration for the early header mutation extensions.
        
         When configured the extensions will be called before any routing, tracing, or any filter processing.
         Each extension will be applied in the order they are configured.
         If the same header is mutated by multiple extensions, then the last extension will win.
        
         [#extension-category: envoy.http.early_header_mutation]
         
        repeated .envoy.config.core.v3.TypedExtensionConfig early_header_mutation_extensions = 52;
      • getEarlyHeaderMutationExtensionsOrBuilderList

        java.util.List<? extends TypedExtensionConfigOrBuilder> getEarlyHeaderMutationExtensionsOrBuilderList()
         The configuration for the early header mutation extensions.
        
         When configured the extensions will be called before any routing, tracing, or any filter processing.
         Each extension will be applied in the order they are configured.
         If the same header is mutated by multiple extensions, then the last extension will win.
        
         [#extension-category: envoy.http.early_header_mutation]
         
        repeated .envoy.config.core.v3.TypedExtensionConfig early_header_mutation_extensions = 52;
      • getEarlyHeaderMutationExtensionsOrBuilder

        TypedExtensionConfigOrBuilder getEarlyHeaderMutationExtensionsOrBuilder​(int index)
         The configuration for the early header mutation extensions.
        
         When configured the extensions will be called before any routing, tracing, or any filter processing.
         Each extension will be applied in the order they are configured.
         If the same header is mutated by multiple extensions, then the last extension will win.
        
         [#extension-category: envoy.http.early_header_mutation]
         
        repeated .envoy.config.core.v3.TypedExtensionConfig early_header_mutation_extensions = 52;
      • hasInternalAddressConfig

        boolean hasInternalAddressConfig()
         Configures what network addresses are considered internal for stats and header sanitation
         purposes. If unspecified, only RFC1918 IP addresses will be considered internal.
         See the documentation for :ref:`config_http_conn_man_headers_x-envoy-internal` for more
         information about internal/external addresses.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.InternalAddressConfig internal_address_config = 25;
        Returns:
        Whether the internalAddressConfig field is set.
      • getInternalAddressConfig

        HttpConnectionManager.InternalAddressConfig getInternalAddressConfig()
         Configures what network addresses are considered internal for stats and header sanitation
         purposes. If unspecified, only RFC1918 IP addresses will be considered internal.
         See the documentation for :ref:`config_http_conn_man_headers_x-envoy-internal` for more
         information about internal/external addresses.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.InternalAddressConfig internal_address_config = 25;
        Returns:
        The internalAddressConfig.
      • getInternalAddressConfigOrBuilder

        HttpConnectionManager.InternalAddressConfigOrBuilder getInternalAddressConfigOrBuilder()
         Configures what network addresses are considered internal for stats and header sanitation
         purposes. If unspecified, only RFC1918 IP addresses will be considered internal.
         See the documentation for :ref:`config_http_conn_man_headers_x-envoy-internal` for more
         information about internal/external addresses.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.InternalAddressConfig internal_address_config = 25;
      • getSkipXffAppend

        boolean getSkipXffAppend()
         If set, Envoy will not append the remote address to the
         :ref:`config_http_conn_man_headers_x-forwarded-for` HTTP header. This may be used in
         conjunction with HTTP filters that explicitly manipulate XFF after the HTTP connection manager
         has mutated the request headers. While :ref:`use_remote_address
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>`
         will also suppress XFF addition, it has consequences for logging and other
         Envoy uses of the remote address, so ``skip_xff_append`` should be used
         when only an elision of XFF addition is intended.
         
        bool skip_xff_append = 21;
        Returns:
        The skipXffAppend.
      • getVia

        java.lang.String getVia()
         Via header value to append to request and response headers. If this is
         empty, no via header will be appended.
         
        string via = 22 [(.validate.rules) = { ... }
        Returns:
        The via.
      • getViaBytes

        com.google.protobuf.ByteString getViaBytes()
         Via header value to append to request and response headers. If this is
         empty, no via header will be appended.
         
        string via = 22 [(.validate.rules) = { ... }
        Returns:
        The bytes for via.
      • hasGenerateRequestId

        boolean hasGenerateRequestId()
         Whether the connection manager will generate the :ref:`x-request-id
         <config_http_conn_man_headers_x-request-id>` header if it does not exist. This defaults to
         true. Generating a random UUID4 is expensive so in high throughput scenarios where this feature
         is not desired it can be disabled.
         
        .google.protobuf.BoolValue generate_request_id = 15;
        Returns:
        Whether the generateRequestId field is set.
      • getGenerateRequestId

        com.google.protobuf.BoolValue getGenerateRequestId()
         Whether the connection manager will generate the :ref:`x-request-id
         <config_http_conn_man_headers_x-request-id>` header if it does not exist. This defaults to
         true. Generating a random UUID4 is expensive so in high throughput scenarios where this feature
         is not desired it can be disabled.
         
        .google.protobuf.BoolValue generate_request_id = 15;
        Returns:
        The generateRequestId.
      • getGenerateRequestIdOrBuilder

        com.google.protobuf.BoolValueOrBuilder getGenerateRequestIdOrBuilder()
         Whether the connection manager will generate the :ref:`x-request-id
         <config_http_conn_man_headers_x-request-id>` header if it does not exist. This defaults to
         true. Generating a random UUID4 is expensive so in high throughput scenarios where this feature
         is not desired it can be disabled.
         
        .google.protobuf.BoolValue generate_request_id = 15;
      • getPreserveExternalRequestId

        boolean getPreserveExternalRequestId()
         Whether the connection manager will keep the :ref:`x-request-id
         <config_http_conn_man_headers_x-request-id>` header if passed for a request that is edge
         (Edge request is the request from external clients to front Envoy) and not reset it, which
         is the current Envoy behaviour. This defaults to false.
         
        bool preserve_external_request_id = 32;
        Returns:
        The preserveExternalRequestId.
      • getAlwaysSetRequestIdInResponse

        boolean getAlwaysSetRequestIdInResponse()
         If set, Envoy will always set :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header in response.
         If this is false or not set, the request ID is returned in responses only if tracing is forced using
         :ref:`x-envoy-force-trace <config_http_conn_man_headers_x-envoy-force-trace>` header.
         
        bool always_set_request_id_in_response = 37;
        Returns:
        The alwaysSetRequestIdInResponse.
      • getForwardClientCertDetailsValue

        int getForwardClientCertDetailsValue()
         How to handle the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` (XFCC) HTTP
         header.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ForwardClientCertDetails forward_client_cert_details = 16 [(.validate.rules) = { ... }
        Returns:
        The enum numeric value on the wire for forwardClientCertDetails.
      • getForwardClientCertDetails

        HttpConnectionManager.ForwardClientCertDetails getForwardClientCertDetails()
         How to handle the :ref:`config_http_conn_man_headers_x-forwarded-client-cert` (XFCC) HTTP
         header.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ForwardClientCertDetails forward_client_cert_details = 16 [(.validate.rules) = { ... }
        Returns:
        The forwardClientCertDetails.
      • hasSetCurrentClientCertDetails

        boolean hasSetCurrentClientCertDetails()
         This field is valid only when :ref:`forward_client_cert_details
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>`
         is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS. It specifies the fields in
         the client certificate to be forwarded. Note that in the
         :ref:`config_http_conn_man_headers_x-forwarded-client-cert` header, ``Hash`` is always set, and
         ``By`` is always set when the client certificate presents the URI type Subject Alternative Name
         value.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.SetCurrentClientCertDetails set_current_client_cert_details = 17;
        Returns:
        Whether the setCurrentClientCertDetails field is set.
      • getSetCurrentClientCertDetails

        HttpConnectionManager.SetCurrentClientCertDetails getSetCurrentClientCertDetails()
         This field is valid only when :ref:`forward_client_cert_details
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>`
         is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS. It specifies the fields in
         the client certificate to be forwarded. Note that in the
         :ref:`config_http_conn_man_headers_x-forwarded-client-cert` header, ``Hash`` is always set, and
         ``By`` is always set when the client certificate presents the URI type Subject Alternative Name
         value.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.SetCurrentClientCertDetails set_current_client_cert_details = 17;
        Returns:
        The setCurrentClientCertDetails.
      • getSetCurrentClientCertDetailsOrBuilder

        HttpConnectionManager.SetCurrentClientCertDetailsOrBuilder getSetCurrentClientCertDetailsOrBuilder()
         This field is valid only when :ref:`forward_client_cert_details
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.forward_client_cert_details>`
         is APPEND_FORWARD or SANITIZE_SET and the client connection is mTLS. It specifies the fields in
         the client certificate to be forwarded. Note that in the
         :ref:`config_http_conn_man_headers_x-forwarded-client-cert` header, ``Hash`` is always set, and
         ``By`` is always set when the client certificate presents the URI type Subject Alternative Name
         value.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.SetCurrentClientCertDetails set_current_client_cert_details = 17;
      • getProxy100Continue

        boolean getProxy100Continue()
         If proxy_100_continue is true, Envoy will proxy incoming "Expect:
         100-continue" headers upstream, and forward "100 Continue" responses
         downstream. If this is false or not set, Envoy will instead strip the
         "Expect: 100-continue" header, and send a "100 Continue" response itself.
         
        bool proxy_100_continue = 18;
        Returns:
        The proxy100Continue.
      • getRepresentIpv4RemoteAddressAsIpv4MappedIpv6

        boolean getRepresentIpv4RemoteAddressAsIpv4MappedIpv6()
         If
         :ref:`use_remote_address
         <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.use_remote_address>`
         is true and represent_ipv4_remote_address_as_ipv4_mapped_ipv6 is true and the remote address is
         an IPv4 address, the address will be mapped to IPv6 before it is appended to ``x-forwarded-for``.
         This is useful for testing compatibility of upstream services that parse the header value. For
         example, 50.0.0.1 is represented as ::FFFF:50.0.0.1. See `IPv4-Mapped IPv6 Addresses
         <https://tools.ietf.org/html/rfc4291#section-2.5.5.2>`_ for details. This will also affect the
         :ref:`config_http_conn_man_headers_x-envoy-external-address` header. See
         :ref:`http_connection_manager.represent_ipv4_remote_address_as_ipv4_mapped_ipv6
         <config_http_conn_man_runtime_represent_ipv4_remote_address_as_ipv4_mapped_ipv6>` for runtime
         control.
         [#not-implemented-hide:]
         
        bool represent_ipv4_remote_address_as_ipv4_mapped_ipv6 = 20;
        Returns:
        The representIpv4RemoteAddressAsIpv4MappedIpv6.
      • getUpgradeConfigsList

        java.util.List<HttpConnectionManager.UpgradeConfig> getUpgradeConfigsList()
        repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;
      • getUpgradeConfigs

        HttpConnectionManager.UpgradeConfig getUpgradeConfigs​(int index)
        repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;
      • getUpgradeConfigsCount

        int getUpgradeConfigsCount()
        repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;
      • getUpgradeConfigsOrBuilderList

        java.util.List<? extends HttpConnectionManager.UpgradeConfigOrBuilder> getUpgradeConfigsOrBuilderList()
        repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;
      • getUpgradeConfigsOrBuilder

        HttpConnectionManager.UpgradeConfigOrBuilder getUpgradeConfigsOrBuilder​(int index)
        repeated .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig upgrade_configs = 23;
      • hasNormalizePath

        boolean hasNormalizePath()
         Should paths be normalized according to RFC 3986 before any processing of
         requests by HTTP filters or routing? This affects the upstream ``:path`` header
         as well. For paths that fail this check, Envoy will respond with 400 to
         paths that are malformed. This defaults to false currently but will default
         true in the future. When not specified, this value may be overridden by the
         runtime variable
         :ref:`http_connection_manager.normalize_path<config_http_conn_man_runtime_normalize_path>`.
         See `Normalization and Comparison <https://tools.ietf.org/html/rfc3986#section-6>`_
         for details of normalization.
         Note that Envoy does not perform
         `case normalization <https://tools.ietf.org/html/rfc3986#section-6.2.2.1>`_
         [#comment:TODO: This field is ignored when the
         :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>`
         is present.]
         
        .google.protobuf.BoolValue normalize_path = 30;
        Returns:
        Whether the normalizePath field is set.
      • getNormalizePath

        com.google.protobuf.BoolValue getNormalizePath()
         Should paths be normalized according to RFC 3986 before any processing of
         requests by HTTP filters or routing? This affects the upstream ``:path`` header
         as well. For paths that fail this check, Envoy will respond with 400 to
         paths that are malformed. This defaults to false currently but will default
         true in the future. When not specified, this value may be overridden by the
         runtime variable
         :ref:`http_connection_manager.normalize_path<config_http_conn_man_runtime_normalize_path>`.
         See `Normalization and Comparison <https://tools.ietf.org/html/rfc3986#section-6>`_
         for details of normalization.
         Note that Envoy does not perform
         `case normalization <https://tools.ietf.org/html/rfc3986#section-6.2.2.1>`_
         [#comment:TODO: This field is ignored when the
         :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>`
         is present.]
         
        .google.protobuf.BoolValue normalize_path = 30;
        Returns:
        The normalizePath.
      • getNormalizePathOrBuilder

        com.google.protobuf.BoolValueOrBuilder getNormalizePathOrBuilder()
         Should paths be normalized according to RFC 3986 before any processing of
         requests by HTTP filters or routing? This affects the upstream ``:path`` header
         as well. For paths that fail this check, Envoy will respond with 400 to
         paths that are malformed. This defaults to false currently but will default
         true in the future. When not specified, this value may be overridden by the
         runtime variable
         :ref:`http_connection_manager.normalize_path<config_http_conn_man_runtime_normalize_path>`.
         See `Normalization and Comparison <https://tools.ietf.org/html/rfc3986#section-6>`_
         for details of normalization.
         Note that Envoy does not perform
         `case normalization <https://tools.ietf.org/html/rfc3986#section-6.2.2.1>`_
         [#comment:TODO: This field is ignored when the
         :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>`
         is present.]
         
        .google.protobuf.BoolValue normalize_path = 30;
      • getMergeSlashes

        boolean getMergeSlashes()
         Determines if adjacent slashes in the path are merged into one before any processing of
         requests by HTTP filters or routing. This affects the upstream ``:path`` header as well. Without
         setting this option, incoming requests with path ``//dir///file`` will not match against route
         with ``prefix`` match set to ``/dir``. Defaults to ``false``. Note that slash merging is not part of
         `HTTP spec <https://tools.ietf.org/html/rfc3986>`_ and is provided for convenience.
         [#comment:TODO: This field is ignored when the
         :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>`
         is present.]
         
        bool merge_slashes = 33;
        Returns:
        The mergeSlashes.
      • getPathWithEscapedSlashesActionValue

        int getPathWithEscapedSlashesActionValue()
         Action to take when request URL path contains escaped slash sequences (%2F, %2f, %5C and %5c).
         The default value can be overridden by the :ref:`http_connection_manager.path_with_escaped_slashes_action<config_http_conn_man_runtime_path_with_escaped_slashes_action>`
         runtime variable.
         The :ref:`http_connection_manager.path_with_escaped_slashes_action_sampling<config_http_conn_man_runtime_path_with_escaped_slashes_action_enabled>` runtime
         variable can be used to apply the action to a portion of all requests.
         [#comment:TODO: This field is ignored when the
         :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>`
         is present.]
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.PathWithEscapedSlashesAction path_with_escaped_slashes_action = 45;
        Returns:
        The enum numeric value on the wire for pathWithEscapedSlashesAction.
      • getPathWithEscapedSlashesAction

        HttpConnectionManager.PathWithEscapedSlashesAction getPathWithEscapedSlashesAction()
         Action to take when request URL path contains escaped slash sequences (%2F, %2f, %5C and %5c).
         The default value can be overridden by the :ref:`http_connection_manager.path_with_escaped_slashes_action<config_http_conn_man_runtime_path_with_escaped_slashes_action>`
         runtime variable.
         The :ref:`http_connection_manager.path_with_escaped_slashes_action_sampling<config_http_conn_man_runtime_path_with_escaped_slashes_action_enabled>` runtime
         variable can be used to apply the action to a portion of all requests.
         [#comment:TODO: This field is ignored when the
         :ref:`header validation configuration <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.typed_header_validation_config>`
         is present.]
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.PathWithEscapedSlashesAction path_with_escaped_slashes_action = 45;
        Returns:
        The pathWithEscapedSlashesAction.
      • hasRequestIdExtension

        boolean hasRequestIdExtension()
         The configuration of the request ID extension. This includes operations such as
         generation, validation, and associated tracing operations. If empty, the
         :ref:`UuidRequestIdConfig <envoy_v3_api_msg_extensions.request_id.uuid.v3.UuidRequestIdConfig>`
         default extension is used with default parameters. See the documentation for that extension
         for details on what it does. Customizing the configuration for the default extension can be
         achieved by configuring it explicitly here. For example, to disable trace reason packing,
         the following configuration can be used:
        
         .. validated-code-block:: yaml
         :type-name: envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension
        
         typed_config:
         "@type": type.googleapis.com/envoy.extensions.request_id.uuid.v3.UuidRequestIdConfig
         pack_trace_reason: false
        
         [#extension-category: envoy.request_id]
         
        .envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 36;
        Returns:
        Whether the requestIdExtension field is set.
      • getRequestIdExtension

        RequestIDExtension getRequestIdExtension()
         The configuration of the request ID extension. This includes operations such as
         generation, validation, and associated tracing operations. If empty, the
         :ref:`UuidRequestIdConfig <envoy_v3_api_msg_extensions.request_id.uuid.v3.UuidRequestIdConfig>`
         default extension is used with default parameters. See the documentation for that extension
         for details on what it does. Customizing the configuration for the default extension can be
         achieved by configuring it explicitly here. For example, to disable trace reason packing,
         the following configuration can be used:
        
         .. validated-code-block:: yaml
         :type-name: envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension
        
         typed_config:
         "@type": type.googleapis.com/envoy.extensions.request_id.uuid.v3.UuidRequestIdConfig
         pack_trace_reason: false
        
         [#extension-category: envoy.request_id]
         
        .envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 36;
        Returns:
        The requestIdExtension.
      • getRequestIdExtensionOrBuilder

        RequestIDExtensionOrBuilder getRequestIdExtensionOrBuilder()
         The configuration of the request ID extension. This includes operations such as
         generation, validation, and associated tracing operations. If empty, the
         :ref:`UuidRequestIdConfig <envoy_v3_api_msg_extensions.request_id.uuid.v3.UuidRequestIdConfig>`
         default extension is used with default parameters. See the documentation for that extension
         for details on what it does. Customizing the configuration for the default extension can be
         achieved by configuring it explicitly here. For example, to disable trace reason packing,
         the following configuration can be used:
        
         .. validated-code-block:: yaml
         :type-name: envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension
        
         typed_config:
         "@type": type.googleapis.com/envoy.extensions.request_id.uuid.v3.UuidRequestIdConfig
         pack_trace_reason: false
        
         [#extension-category: envoy.request_id]
         
        .envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 36;
      • hasLocalReplyConfig

        boolean hasLocalReplyConfig()
         The configuration to customize local reply returned by Envoy. It can customize status code,
         body text and response content type. If not specified, status code and text body are hard
         coded in Envoy, the response content type is plain text.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.LocalReplyConfig local_reply_config = 38;
        Returns:
        Whether the localReplyConfig field is set.
      • getLocalReplyConfig

        LocalReplyConfig getLocalReplyConfig()
         The configuration to customize local reply returned by Envoy. It can customize status code,
         body text and response content type. If not specified, status code and text body are hard
         coded in Envoy, the response content type is plain text.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.LocalReplyConfig local_reply_config = 38;
        Returns:
        The localReplyConfig.
      • getLocalReplyConfigOrBuilder

        LocalReplyConfigOrBuilder getLocalReplyConfigOrBuilder()
         The configuration to customize local reply returned by Envoy. It can customize status code,
         body text and response content type. If not specified, status code and text body are hard
         coded in Envoy, the response content type is plain text.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.LocalReplyConfig local_reply_config = 38;
      • getStripMatchingHostPort

        boolean getStripMatchingHostPort()
         Determines if the port part should be removed from host/authority header before any processing
         of request by HTTP filters or routing. The port would be removed only if it is equal to the :ref:`listener's<envoy_v3_api_field_config.listener.v3.Listener.address>`
         local port. This affects the upstream host header unless the method is
         CONNECT in which case if no filter adds a port the original port will be restored before headers are
         sent upstream.
         Without setting this option, incoming requests with host ``example:443`` will not match against
         route with :ref:`domains<envoy_v3_api_field_config.route.v3.VirtualHost.domains>` match set to ``example``. Defaults to ``false``. Note that port removal is not part
         of `HTTP spec <https://tools.ietf.org/html/rfc3986>`_ and is provided for convenience.
         Only one of ``strip_matching_host_port`` or ``strip_any_host_port`` can be set.
         
        bool strip_matching_host_port = 39 [(.udpa.annotations.field_migrate) = { ... }
        Returns:
        The stripMatchingHostPort.
      • hasStripAnyHostPort

        boolean hasStripAnyHostPort()
         Determines if the port part should be removed from host/authority header before any processing
         of request by HTTP filters or routing.
         This affects the upstream host header unless the method is CONNECT in
         which case if no filter adds a port the original port will be restored before headers are sent upstream.
         Without setting this option, incoming requests with host ``example:443`` will not match against
         route with :ref:`domains<envoy_v3_api_field_config.route.v3.VirtualHost.domains>` match set to ``example``. Defaults to ``false``. Note that port removal is not part
         of `HTTP spec <https://tools.ietf.org/html/rfc3986>`_ and is provided for convenience.
         Only one of ``strip_matching_host_port`` or ``strip_any_host_port`` can be set.
         
        bool strip_any_host_port = 42;
        Returns:
        Whether the stripAnyHostPort field is set.
      • getStripAnyHostPort

        boolean getStripAnyHostPort()
         Determines if the port part should be removed from host/authority header before any processing
         of request by HTTP filters or routing.
         This affects the upstream host header unless the method is CONNECT in
         which case if no filter adds a port the original port will be restored before headers are sent upstream.
         Without setting this option, incoming requests with host ``example:443`` will not match against
         route with :ref:`domains<envoy_v3_api_field_config.route.v3.VirtualHost.domains>` match set to ``example``. Defaults to ``false``. Note that port removal is not part
         of `HTTP spec <https://tools.ietf.org/html/rfc3986>`_ and is provided for convenience.
         Only one of ``strip_matching_host_port`` or ``strip_any_host_port`` can be set.
         
        bool strip_any_host_port = 42;
        Returns:
        The stripAnyHostPort.
      • hasStreamErrorOnInvalidHttpMessage

        boolean hasStreamErrorOnInvalidHttpMessage()
         Governs Envoy's behavior when receiving invalid HTTP from downstream.
         If this option is false (default), Envoy will err on the conservative side handling HTTP
         errors, terminating both HTTP/1.1 and HTTP/2 connections when receiving an invalid request.
         If this option is set to true, Envoy will be more permissive, only resetting the invalid
         stream in the case of HTTP/2 and leaving the connection open where possible (if the entire
         request is read for HTTP/1.1)
         In general this should be true for deployments receiving trusted traffic (L2 Envoys,
         company-internal mesh) and false when receiving untrusted traffic (edge deployments).
        
         If different behaviors for invalid_http_message for HTTP/1 and HTTP/2 are
         desired, one should use the new HTTP/1 option :ref:`override_stream_error_on_invalid_http_message
         <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.override_stream_error_on_invalid_http_message>` or the new HTTP/2 option
         :ref:`override_stream_error_on_invalid_http_message
         <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.override_stream_error_on_invalid_http_message>`
         ``not`` the deprecated but similarly named :ref:`stream_error_on_invalid_http_messaging
         <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.stream_error_on_invalid_http_messaging>`
         
        .google.protobuf.BoolValue stream_error_on_invalid_http_message = 40;
        Returns:
        Whether the streamErrorOnInvalidHttpMessage field is set.
      • getStreamErrorOnInvalidHttpMessage

        com.google.protobuf.BoolValue getStreamErrorOnInvalidHttpMessage()
         Governs Envoy's behavior when receiving invalid HTTP from downstream.
         If this option is false (default), Envoy will err on the conservative side handling HTTP
         errors, terminating both HTTP/1.1 and HTTP/2 connections when receiving an invalid request.
         If this option is set to true, Envoy will be more permissive, only resetting the invalid
         stream in the case of HTTP/2 and leaving the connection open where possible (if the entire
         request is read for HTTP/1.1)
         In general this should be true for deployments receiving trusted traffic (L2 Envoys,
         company-internal mesh) and false when receiving untrusted traffic (edge deployments).
        
         If different behaviors for invalid_http_message for HTTP/1 and HTTP/2 are
         desired, one should use the new HTTP/1 option :ref:`override_stream_error_on_invalid_http_message
         <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.override_stream_error_on_invalid_http_message>` or the new HTTP/2 option
         :ref:`override_stream_error_on_invalid_http_message
         <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.override_stream_error_on_invalid_http_message>`
         ``not`` the deprecated but similarly named :ref:`stream_error_on_invalid_http_messaging
         <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.stream_error_on_invalid_http_messaging>`
         
        .google.protobuf.BoolValue stream_error_on_invalid_http_message = 40;
        Returns:
        The streamErrorOnInvalidHttpMessage.
      • getStreamErrorOnInvalidHttpMessageOrBuilder

        com.google.protobuf.BoolValueOrBuilder getStreamErrorOnInvalidHttpMessageOrBuilder()
         Governs Envoy's behavior when receiving invalid HTTP from downstream.
         If this option is false (default), Envoy will err on the conservative side handling HTTP
         errors, terminating both HTTP/1.1 and HTTP/2 connections when receiving an invalid request.
         If this option is set to true, Envoy will be more permissive, only resetting the invalid
         stream in the case of HTTP/2 and leaving the connection open where possible (if the entire
         request is read for HTTP/1.1)
         In general this should be true for deployments receiving trusted traffic (L2 Envoys,
         company-internal mesh) and false when receiving untrusted traffic (edge deployments).
        
         If different behaviors for invalid_http_message for HTTP/1 and HTTP/2 are
         desired, one should use the new HTTP/1 option :ref:`override_stream_error_on_invalid_http_message
         <envoy_v3_api_field_config.core.v3.Http1ProtocolOptions.override_stream_error_on_invalid_http_message>` or the new HTTP/2 option
         :ref:`override_stream_error_on_invalid_http_message
         <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.override_stream_error_on_invalid_http_message>`
         ``not`` the deprecated but similarly named :ref:`stream_error_on_invalid_http_messaging
         <envoy_v3_api_field_config.core.v3.Http2ProtocolOptions.stream_error_on_invalid_http_messaging>`
         
        .google.protobuf.BoolValue stream_error_on_invalid_http_message = 40;
      • hasPathNormalizationOptions

        boolean hasPathNormalizationOptions()
         [#not-implemented-hide:] Path normalization configuration. This includes
         configurations for transformations (e.g. RFC 3986 normalization or merge
         adjacent slashes) and the policy to apply them. The policy determines
         whether transformations affect the forwarded ``:path`` header. RFC 3986 path
         normalization is enabled by default and the default policy is that the
         normalized header will be forwarded. See :ref:`PathNormalizationOptions
         <envoy_v3_api_msg_extensions.filters.network.http_connection_manager.v3.PathNormalizationOptions>`
         for details.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.PathNormalizationOptions path_normalization_options = 43;
        Returns:
        Whether the pathNormalizationOptions field is set.
      • getPathNormalizationOptions

        HttpConnectionManager.PathNormalizationOptions getPathNormalizationOptions()
         [#not-implemented-hide:] Path normalization configuration. This includes
         configurations for transformations (e.g. RFC 3986 normalization or merge
         adjacent slashes) and the policy to apply them. The policy determines
         whether transformations affect the forwarded ``:path`` header. RFC 3986 path
         normalization is enabled by default and the default policy is that the
         normalized header will be forwarded. See :ref:`PathNormalizationOptions
         <envoy_v3_api_msg_extensions.filters.network.http_connection_manager.v3.PathNormalizationOptions>`
         for details.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.PathNormalizationOptions path_normalization_options = 43;
        Returns:
        The pathNormalizationOptions.
      • getPathNormalizationOptionsOrBuilder

        HttpConnectionManager.PathNormalizationOptionsOrBuilder getPathNormalizationOptionsOrBuilder()
         [#not-implemented-hide:] Path normalization configuration. This includes
         configurations for transformations (e.g. RFC 3986 normalization or merge
         adjacent slashes) and the policy to apply them. The policy determines
         whether transformations affect the forwarded ``:path`` header. RFC 3986 path
         normalization is enabled by default and the default policy is that the
         normalized header will be forwarded. See :ref:`PathNormalizationOptions
         <envoy_v3_api_msg_extensions.filters.network.http_connection_manager.v3.PathNormalizationOptions>`
         for details.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.PathNormalizationOptions path_normalization_options = 43;
      • getStripTrailingHostDot

        boolean getStripTrailingHostDot()
         Determines if trailing dot of the host should be removed from host/authority header before any
         processing of request by HTTP filters or routing.
         This affects the upstream host header.
         Without setting this option, incoming requests with host ``example.com.`` will not match against
         route with :ref:`domains<envoy_v3_api_field_config.route.v3.VirtualHost.domains>` match set to ``example.com``. Defaults to ``false``.
         When the incoming request contains a host/authority header that includes a port number,
         setting this option will strip a trailing dot, if present, from the host section,
         leaving the port as is (e.g. host value ``example.com.:443`` will be updated to ``example.com:443``).
         
        bool strip_trailing_host_dot = 47;
        Returns:
        The stripTrailingHostDot.
      • hasProxyStatusConfig

        boolean hasProxyStatusConfig()
         Proxy-Status HTTP response header configuration.
         If this config is set, the Proxy-Status HTTP response header field is
         populated. By default, it is not.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ProxyStatusConfig proxy_status_config = 49;
        Returns:
        Whether the proxyStatusConfig field is set.
      • getProxyStatusConfig

        HttpConnectionManager.ProxyStatusConfig getProxyStatusConfig()
         Proxy-Status HTTP response header configuration.
         If this config is set, the Proxy-Status HTTP response header field is
         populated. By default, it is not.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ProxyStatusConfig proxy_status_config = 49;
        Returns:
        The proxyStatusConfig.
      • getProxyStatusConfigOrBuilder

        HttpConnectionManager.ProxyStatusConfigOrBuilder getProxyStatusConfigOrBuilder()
         Proxy-Status HTTP response header configuration.
         If this config is set, the Proxy-Status HTTP response header field is
         populated. By default, it is not.
         
        .envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.ProxyStatusConfig proxy_status_config = 49;
      • hasTypedHeaderValidationConfig

        boolean hasTypedHeaderValidationConfig()
         Configuration options for Header Validation (UHV).
         UHV is an extensible mechanism for checking validity of HTTP requests as well as providing
         normalization for request attributes, such as URI path.
         If the typed_header_validation_config is present it overrides the following options:
         ``normalize_path``, ``merge_slashes``, ``path_with_escaped_slashes_action``
         ``http_protocol_options.allow_chunked_length``, ``common_http_protocol_options.headers_with_underscores_action``.
        
         The default UHV checks the following:
        
         #. HTTP/1 header map validity according to `RFC 7230 section 3.2<https://datatracker.ietf.org/doc/html/rfc7230#section-3.2>`_
         #. Syntax of HTTP/1 request target URI and response status
         #. HTTP/2 header map validity according to `RFC 7540 section 8.1.2<https://datatracker.ietf.org/doc/html/rfc7540#section-8.1.2`_
         #. Syntax of HTTP/2 pseudo headers
         #. HTTP/3 header map validity according to `RFC 9114 section 4.3 <https://www.rfc-editor.org/rfc/rfc9114.html>`_
         #. Syntax of HTTP/3 pseudo headers
         #. Syntax of ``Content-Length`` and ``Transfer-Encoding``
         #. Validation of HTTP/1 requests with both ``Content-Length`` and ``Transfer-Encoding`` headers
         #. Normalization of the URI path according to `Normalization and Comparison <https://datatracker.ietf.org/doc/html/rfc3986#section-6>`_
         without `case normalization <https://datatracker.ietf.org/doc/html/rfc3986#section-6.2.2.1>`_
        
         [#not-implemented-hide:]
         [#extension-category: envoy.http.header_validators]
         
        .envoy.config.core.v3.TypedExtensionConfig typed_header_validation_config = 50;
        Returns:
        Whether the typedHeaderValidationConfig field is set.
      • getTypedHeaderValidationConfig

        TypedExtensionConfig getTypedHeaderValidationConfig()
         Configuration options for Header Validation (UHV).
         UHV is an extensible mechanism for checking validity of HTTP requests as well as providing
         normalization for request attributes, such as URI path.
         If the typed_header_validation_config is present it overrides the following options:
         ``normalize_path``, ``merge_slashes``, ``path_with_escaped_slashes_action``
         ``http_protocol_options.allow_chunked_length``, ``common_http_protocol_options.headers_with_underscores_action``.
        
         The default UHV checks the following:
        
         #. HTTP/1 header map validity according to `RFC 7230 section 3.2<https://datatracker.ietf.org/doc/html/rfc7230#section-3.2>`_
         #. Syntax of HTTP/1 request target URI and response status
         #. HTTP/2 header map validity according to `RFC 7540 section 8.1.2<https://datatracker.ietf.org/doc/html/rfc7540#section-8.1.2`_
         #. Syntax of HTTP/2 pseudo headers
         #. HTTP/3 header map validity according to `RFC 9114 section 4.3 <https://www.rfc-editor.org/rfc/rfc9114.html>`_
         #. Syntax of HTTP/3 pseudo headers
         #. Syntax of ``Content-Length`` and ``Transfer-Encoding``
         #. Validation of HTTP/1 requests with both ``Content-Length`` and ``Transfer-Encoding`` headers
         #. Normalization of the URI path according to `Normalization and Comparison <https://datatracker.ietf.org/doc/html/rfc3986#section-6>`_
         without `case normalization <https://datatracker.ietf.org/doc/html/rfc3986#section-6.2.2.1>`_
        
         [#not-implemented-hide:]
         [#extension-category: envoy.http.header_validators]
         
        .envoy.config.core.v3.TypedExtensionConfig typed_header_validation_config = 50;
        Returns:
        The typedHeaderValidationConfig.
      • getTypedHeaderValidationConfigOrBuilder

        TypedExtensionConfigOrBuilder getTypedHeaderValidationConfigOrBuilder()
         Configuration options for Header Validation (UHV).
         UHV is an extensible mechanism for checking validity of HTTP requests as well as providing
         normalization for request attributes, such as URI path.
         If the typed_header_validation_config is present it overrides the following options:
         ``normalize_path``, ``merge_slashes``, ``path_with_escaped_slashes_action``
         ``http_protocol_options.allow_chunked_length``, ``common_http_protocol_options.headers_with_underscores_action``.
        
         The default UHV checks the following:
        
         #. HTTP/1 header map validity according to `RFC 7230 section 3.2<https://datatracker.ietf.org/doc/html/rfc7230#section-3.2>`_
         #. Syntax of HTTP/1 request target URI and response status
         #. HTTP/2 header map validity according to `RFC 7540 section 8.1.2<https://datatracker.ietf.org/doc/html/rfc7540#section-8.1.2`_
         #. Syntax of HTTP/2 pseudo headers
         #. HTTP/3 header map validity according to `RFC 9114 section 4.3 <https://www.rfc-editor.org/rfc/rfc9114.html>`_
         #. Syntax of HTTP/3 pseudo headers
         #. Syntax of ``Content-Length`` and ``Transfer-Encoding``
         #. Validation of HTTP/1 requests with both ``Content-Length`` and ``Transfer-Encoding`` headers
         #. Normalization of the URI path according to `Normalization and Comparison <https://datatracker.ietf.org/doc/html/rfc3986#section-6>`_
         without `case normalization <https://datatracker.ietf.org/doc/html/rfc3986#section-6.2.2.1>`_
        
         [#not-implemented-hide:]
         [#extension-category: envoy.http.header_validators]
         
        .envoy.config.core.v3.TypedExtensionConfig typed_header_validation_config = 50;
      • getAppendXForwardedPort

        boolean getAppendXForwardedPort()
         Append the ``x-forwarded-port`` header with the port value client used to connect to Envoy. It
         will be ignored if the ``x-forwarded-port`` header has been set by any trusted proxy in front of Envoy.
         
        bool append_x_forwarded_port = 51;
        Returns:
        The appendXForwardedPort.
      • getAppendLocalOverload

        boolean getAppendLocalOverload()
         Append the :ref:`config_http_conn_man_headers_x-envoy-local-overloaded` HTTP header in the scenario where
         the Overload Manager has been triggered.
         
        bool append_local_overload = 57;
        Returns:
        The appendLocalOverload.
      • hasAddProxyProtocolConnectionState

        boolean hasAddProxyProtocolConnectionState()
         Whether the HCM will add ProxyProtocolFilterState to the Connection lifetime filter state. Defaults to ``true``.
         This should be set to ``false`` in cases where Envoy's view of the downstream address may not correspond to the
         actual client address, for example, if there's another proxy in front of the Envoy.
         
        .google.protobuf.BoolValue add_proxy_protocol_connection_state = 53;
        Returns:
        Whether the addProxyProtocolConnectionState field is set.
      • getAddProxyProtocolConnectionState

        com.google.protobuf.BoolValue getAddProxyProtocolConnectionState()
         Whether the HCM will add ProxyProtocolFilterState to the Connection lifetime filter state. Defaults to ``true``.
         This should be set to ``false`` in cases where Envoy's view of the downstream address may not correspond to the
         actual client address, for example, if there's another proxy in front of the Envoy.
         
        .google.protobuf.BoolValue add_proxy_protocol_connection_state = 53;
        Returns:
        The addProxyProtocolConnectionState.
      • getAddProxyProtocolConnectionStateOrBuilder

        com.google.protobuf.BoolValueOrBuilder getAddProxyProtocolConnectionStateOrBuilder()
         Whether the HCM will add ProxyProtocolFilterState to the Connection lifetime filter state. Defaults to ``true``.
         This should be set to ``false`` in cases where Envoy's view of the downstream address may not correspond to the
         actual client address, for example, if there's another proxy in front of the Envoy.
         
        .google.protobuf.BoolValue add_proxy_protocol_connection_state = 53;