Class TcpProxy.TunnelingConfig.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder>
io.envoyproxy.envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy.TunnelingConfig.Builder
All Implemented Interfaces:
com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, TcpProxy.TunnelingConfigOrBuilder, Cloneable
Enclosing class:
TcpProxy.TunnelingConfig

public static final class TcpProxy.TunnelingConfig.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder> implements TcpProxy.TunnelingConfigOrBuilder
 Configuration for tunneling TCP over other transports or application layers.
 Tunneling is supported over HTTP/1.1 and HTTP/2. The upstream protocol is
 determined by the cluster configuration.
 [#next-free-field: 10]
 
Protobuf type envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy.TunnelingConfig
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder>
    • clear

      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder>
    • getDefaultInstanceForType

      public TcpProxy.TunnelingConfig getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      public TcpProxy.TunnelingConfig build()
      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public TcpProxy.TunnelingConfig buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • clone

      Specified by:
      clone in interface com.google.protobuf.Message.Builder
      Specified by:
      clone in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clone in class com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder>
    • setField

      public TcpProxy.TunnelingConfig.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      setField in interface com.google.protobuf.Message.Builder
      Overrides:
      setField in class com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder>
    • clearField

      public TcpProxy.TunnelingConfig.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
      Specified by:
      clearField in interface com.google.protobuf.Message.Builder
      Overrides:
      clearField in class com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder>
    • clearOneof

      public TcpProxy.TunnelingConfig.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
      Specified by:
      clearOneof in interface com.google.protobuf.Message.Builder
      Overrides:
      clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder>
    • setRepeatedField

      public TcpProxy.TunnelingConfig.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
      Specified by:
      setRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder>
    • addRepeatedField

      public TcpProxy.TunnelingConfig.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      addRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder>
    • mergeFrom

      public TcpProxy.TunnelingConfig.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<TcpProxy.TunnelingConfig.Builder>
    • mergeFrom

    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder>
    • mergeFrom

      public TcpProxy.TunnelingConfig.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<TcpProxy.TunnelingConfig.Builder>
      Throws:
      IOException
    • getHostname

      public String getHostname()
       The hostname to send in the synthesized CONNECT headers to the upstream proxy.
       This field evaluates command operators if present; otherwise, the value is used as-is.
      
       For example, dynamically set the hostname using downstream SNI:
      
       .. code-block:: yaml
      
          tunneling_config:
            hostname: "%REQUESTED_SERVER_NAME%:443"
      
       For example, dynamically set the hostname using dynamic metadata:
      
       .. code-block:: yaml
      
          tunneling_config:
            hostname: "%DYNAMIC_METADATA(tunnel:address)%"
       
      string hostname = 1 [(.validate.rules) = { ... }
      Specified by:
      getHostname in interface TcpProxy.TunnelingConfigOrBuilder
      Returns:
      The hostname.
    • getHostnameBytes

      public com.google.protobuf.ByteString getHostnameBytes()
       The hostname to send in the synthesized CONNECT headers to the upstream proxy.
       This field evaluates command operators if present; otherwise, the value is used as-is.
      
       For example, dynamically set the hostname using downstream SNI:
      
       .. code-block:: yaml
      
          tunneling_config:
            hostname: "%REQUESTED_SERVER_NAME%:443"
      
       For example, dynamically set the hostname using dynamic metadata:
      
       .. code-block:: yaml
      
          tunneling_config:
            hostname: "%DYNAMIC_METADATA(tunnel:address)%"
       
      string hostname = 1 [(.validate.rules) = { ... }
      Specified by:
      getHostnameBytes in interface TcpProxy.TunnelingConfigOrBuilder
      Returns:
      The bytes for hostname.
    • setHostname

      public TcpProxy.TunnelingConfig.Builder setHostname(String value)
       The hostname to send in the synthesized CONNECT headers to the upstream proxy.
       This field evaluates command operators if present; otherwise, the value is used as-is.
      
       For example, dynamically set the hostname using downstream SNI:
      
       .. code-block:: yaml
      
          tunneling_config:
            hostname: "%REQUESTED_SERVER_NAME%:443"
      
       For example, dynamically set the hostname using dynamic metadata:
      
       .. code-block:: yaml
      
          tunneling_config:
            hostname: "%DYNAMIC_METADATA(tunnel:address)%"
       
      string hostname = 1 [(.validate.rules) = { ... }
      Parameters:
      value - The hostname to set.
      Returns:
      This builder for chaining.
    • clearHostname

      public TcpProxy.TunnelingConfig.Builder clearHostname()
       The hostname to send in the synthesized CONNECT headers to the upstream proxy.
       This field evaluates command operators if present; otherwise, the value is used as-is.
      
       For example, dynamically set the hostname using downstream SNI:
      
       .. code-block:: yaml
      
          tunneling_config:
            hostname: "%REQUESTED_SERVER_NAME%:443"
      
       For example, dynamically set the hostname using dynamic metadata:
      
       .. code-block:: yaml
      
          tunneling_config:
            hostname: "%DYNAMIC_METADATA(tunnel:address)%"
       
      string hostname = 1 [(.validate.rules) = { ... }
      Returns:
      This builder for chaining.
    • setHostnameBytes

      public TcpProxy.TunnelingConfig.Builder setHostnameBytes(com.google.protobuf.ByteString value)
       The hostname to send in the synthesized CONNECT headers to the upstream proxy.
       This field evaluates command operators if present; otherwise, the value is used as-is.
      
       For example, dynamically set the hostname using downstream SNI:
      
       .. code-block:: yaml
      
          tunneling_config:
            hostname: "%REQUESTED_SERVER_NAME%:443"
      
       For example, dynamically set the hostname using dynamic metadata:
      
       .. code-block:: yaml
      
          tunneling_config:
            hostname: "%DYNAMIC_METADATA(tunnel:address)%"
       
      string hostname = 1 [(.validate.rules) = { ... }
      Parameters:
      value - The bytes for hostname to set.
      Returns:
      This builder for chaining.
    • getUsePost

      public boolean getUsePost()
       Use the ``POST`` method instead of the ``CONNECT`` method to tunnel the TCP stream.
       The ``protocol: bytestream`` header is not set for HTTP/2 to comply with the specification.
      
       The upstream proxy is expected to interpret the POST payload as raw TCP.
       
      bool use_post = 2;
      Specified by:
      getUsePost in interface TcpProxy.TunnelingConfigOrBuilder
      Returns:
      The usePost.
    • setUsePost

      public TcpProxy.TunnelingConfig.Builder setUsePost(boolean value)
       Use the ``POST`` method instead of the ``CONNECT`` method to tunnel the TCP stream.
       The ``protocol: bytestream`` header is not set for HTTP/2 to comply with the specification.
      
       The upstream proxy is expected to interpret the POST payload as raw TCP.
       
      bool use_post = 2;
      Parameters:
      value - The usePost to set.
      Returns:
      This builder for chaining.
    • clearUsePost

      public TcpProxy.TunnelingConfig.Builder clearUsePost()
       Use the ``POST`` method instead of the ``CONNECT`` method to tunnel the TCP stream.
       The ``protocol: bytestream`` header is not set for HTTP/2 to comply with the specification.
      
       The upstream proxy is expected to interpret the POST payload as raw TCP.
       
      bool use_post = 2;
      Returns:
      This builder for chaining.
    • getHeadersToAddList

      public List<HeaderValueOption> getHeadersToAddList()
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
      Specified by:
      getHeadersToAddList in interface TcpProxy.TunnelingConfigOrBuilder
    • getHeadersToAddCount

      public int getHeadersToAddCount()
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
      Specified by:
      getHeadersToAddCount in interface TcpProxy.TunnelingConfigOrBuilder
    • getHeadersToAdd

      public HeaderValueOption getHeadersToAdd(int index)
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
      Specified by:
      getHeadersToAdd in interface TcpProxy.TunnelingConfigOrBuilder
    • setHeadersToAdd

      public TcpProxy.TunnelingConfig.Builder setHeadersToAdd(int index, HeaderValueOption value)
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
    • setHeadersToAdd

      public TcpProxy.TunnelingConfig.Builder setHeadersToAdd(int index, HeaderValueOption.Builder builderForValue)
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
    • addHeadersToAdd

      public TcpProxy.TunnelingConfig.Builder addHeadersToAdd(HeaderValueOption value)
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
    • addHeadersToAdd

      public TcpProxy.TunnelingConfig.Builder addHeadersToAdd(int index, HeaderValueOption value)
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
    • addHeadersToAdd

      public TcpProxy.TunnelingConfig.Builder addHeadersToAdd(HeaderValueOption.Builder builderForValue)
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
    • addHeadersToAdd

      public TcpProxy.TunnelingConfig.Builder addHeadersToAdd(int index, HeaderValueOption.Builder builderForValue)
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
    • addAllHeadersToAdd

      public TcpProxy.TunnelingConfig.Builder addAllHeadersToAdd(Iterable<? extends HeaderValueOption> values)
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
    • clearHeadersToAdd

      public TcpProxy.TunnelingConfig.Builder clearHeadersToAdd()
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
    • removeHeadersToAdd

      public TcpProxy.TunnelingConfig.Builder removeHeadersToAdd(int index)
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
    • getHeadersToAddBuilder

      public HeaderValueOption.Builder getHeadersToAddBuilder(int index)
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
    • getHeadersToAddOrBuilder

      public HeaderValueOptionOrBuilder getHeadersToAddOrBuilder(int index)
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
      Specified by:
      getHeadersToAddOrBuilder in interface TcpProxy.TunnelingConfigOrBuilder
    • getHeadersToAddOrBuilderList

      public List<? extends HeaderValueOptionOrBuilder> getHeadersToAddOrBuilderList()
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
      Specified by:
      getHeadersToAddOrBuilderList in interface TcpProxy.TunnelingConfigOrBuilder
    • addHeadersToAddBuilder

      public HeaderValueOption.Builder addHeadersToAddBuilder()
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
    • addHeadersToAddBuilder

      public HeaderValueOption.Builder addHeadersToAddBuilder(int index)
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
    • getHeadersToAddBuilderList

      public List<HeaderValueOption.Builder> getHeadersToAddBuilderList()
       Additional request headers to send to the upstream proxy. This is mainly used to
       trigger the upstream to convert POST requests back to CONNECT requests.
      
       Neither ``:``-prefixed pseudo-headers like ``:path`` nor the ``host`` header can be overridden.
       
      repeated .envoy.config.core.v3.HeaderValueOption headers_to_add = 3 [(.validate.rules) = { ... }
    • getPropagateResponseHeaders

      public boolean getPropagateResponseHeaders()
       Save response headers to the downstream connection's filter state for consumption
       by network filters. The filter state key is ``envoy.tcp_proxy.propagate_response_headers``.
       
      bool propagate_response_headers = 4;
      Specified by:
      getPropagateResponseHeaders in interface TcpProxy.TunnelingConfigOrBuilder
      Returns:
      The propagateResponseHeaders.
    • setPropagateResponseHeaders

      public TcpProxy.TunnelingConfig.Builder setPropagateResponseHeaders(boolean value)
       Save response headers to the downstream connection's filter state for consumption
       by network filters. The filter state key is ``envoy.tcp_proxy.propagate_response_headers``.
       
      bool propagate_response_headers = 4;
      Parameters:
      value - The propagateResponseHeaders to set.
      Returns:
      This builder for chaining.
    • clearPropagateResponseHeaders

      public TcpProxy.TunnelingConfig.Builder clearPropagateResponseHeaders()
       Save response headers to the downstream connection's filter state for consumption
       by network filters. The filter state key is ``envoy.tcp_proxy.propagate_response_headers``.
       
      bool propagate_response_headers = 4;
      Returns:
      This builder for chaining.
    • getPostPath

      public String getPostPath()
       The path used with the POST method. The default path is ``/``. If this field is specified and
       :ref:`use_post field <envoy_v3_api_field_extensions.filters.network.tcp_proxy.v3.TcpProxy.TunnelingConfig.use_post>`
       is not set to true, the configuration will be rejected.
       
      string post_path = 5;
      Specified by:
      getPostPath in interface TcpProxy.TunnelingConfigOrBuilder
      Returns:
      The postPath.
    • getPostPathBytes

      public com.google.protobuf.ByteString getPostPathBytes()
       The path used with the POST method. The default path is ``/``. If this field is specified and
       :ref:`use_post field <envoy_v3_api_field_extensions.filters.network.tcp_proxy.v3.TcpProxy.TunnelingConfig.use_post>`
       is not set to true, the configuration will be rejected.
       
      string post_path = 5;
      Specified by:
      getPostPathBytes in interface TcpProxy.TunnelingConfigOrBuilder
      Returns:
      The bytes for postPath.
    • setPostPath

      public TcpProxy.TunnelingConfig.Builder setPostPath(String value)
       The path used with the POST method. The default path is ``/``. If this field is specified and
       :ref:`use_post field <envoy_v3_api_field_extensions.filters.network.tcp_proxy.v3.TcpProxy.TunnelingConfig.use_post>`
       is not set to true, the configuration will be rejected.
       
      string post_path = 5;
      Parameters:
      value - The postPath to set.
      Returns:
      This builder for chaining.
    • clearPostPath

      public TcpProxy.TunnelingConfig.Builder clearPostPath()
       The path used with the POST method. The default path is ``/``. If this field is specified and
       :ref:`use_post field <envoy_v3_api_field_extensions.filters.network.tcp_proxy.v3.TcpProxy.TunnelingConfig.use_post>`
       is not set to true, the configuration will be rejected.
       
      string post_path = 5;
      Returns:
      This builder for chaining.
    • setPostPathBytes

      public TcpProxy.TunnelingConfig.Builder setPostPathBytes(com.google.protobuf.ByteString value)
       The path used with the POST method. The default path is ``/``. If this field is specified and
       :ref:`use_post field <envoy_v3_api_field_extensions.filters.network.tcp_proxy.v3.TcpProxy.TunnelingConfig.use_post>`
       is not set to true, the configuration will be rejected.
       
      string post_path = 5;
      Parameters:
      value - The bytes for postPath to set.
      Returns:
      This builder for chaining.
    • getPropagateResponseTrailers

      public boolean getPropagateResponseTrailers()
       Save response trailers to the downstream connection's filter state for consumption
       by network filters. The filter state key is ``envoy.tcp_proxy.propagate_response_trailers``.
       
      bool propagate_response_trailers = 6;
      Specified by:
      getPropagateResponseTrailers in interface TcpProxy.TunnelingConfigOrBuilder
      Returns:
      The propagateResponseTrailers.
    • setPropagateResponseTrailers

      public TcpProxy.TunnelingConfig.Builder setPropagateResponseTrailers(boolean value)
       Save response trailers to the downstream connection's filter state for consumption
       by network filters. The filter state key is ``envoy.tcp_proxy.propagate_response_trailers``.
       
      bool propagate_response_trailers = 6;
      Parameters:
      value - The propagateResponseTrailers to set.
      Returns:
      This builder for chaining.
    • clearPropagateResponseTrailers

      public TcpProxy.TunnelingConfig.Builder clearPropagateResponseTrailers()
       Save response trailers to the downstream connection's filter state for consumption
       by network filters. The filter state key is ``envoy.tcp_proxy.propagate_response_trailers``.
       
      bool propagate_response_trailers = 6;
      Returns:
      This builder for chaining.
    • hasRequestIdExtension

      public boolean hasRequestIdExtension()
       The configuration of the request ID extension used for generation, validation, and
       associated tracing operations when tunneling.
      
       If this field is set, a request ID is generated using the specified extension. If
       this field is not set, no request ID is generated.
      
       When a request ID is generated, it is also stored in the downstream connection's
       dynamic metadata under the namespace ``envoy.filters.network.tcp_proxy`` with the key
       ``tunnel_request_id`` to allow emission from TCP proxy access logs via the
       ``%DYNAMIC_METADATA(envoy.filters.network.tcp_proxy:tunnel_request_id)%`` formatter.
       [#extension-category: envoy.request_id]
       
      .envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 7;
      Specified by:
      hasRequestIdExtension in interface TcpProxy.TunnelingConfigOrBuilder
      Returns:
      Whether the requestIdExtension field is set.
    • getRequestIdExtension

      public RequestIDExtension getRequestIdExtension()
       The configuration of the request ID extension used for generation, validation, and
       associated tracing operations when tunneling.
      
       If this field is set, a request ID is generated using the specified extension. If
       this field is not set, no request ID is generated.
      
       When a request ID is generated, it is also stored in the downstream connection's
       dynamic metadata under the namespace ``envoy.filters.network.tcp_proxy`` with the key
       ``tunnel_request_id`` to allow emission from TCP proxy access logs via the
       ``%DYNAMIC_METADATA(envoy.filters.network.tcp_proxy:tunnel_request_id)%`` formatter.
       [#extension-category: envoy.request_id]
       
      .envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 7;
      Specified by:
      getRequestIdExtension in interface TcpProxy.TunnelingConfigOrBuilder
      Returns:
      The requestIdExtension.
    • setRequestIdExtension

      public TcpProxy.TunnelingConfig.Builder setRequestIdExtension(RequestIDExtension value)
       The configuration of the request ID extension used for generation, validation, and
       associated tracing operations when tunneling.
      
       If this field is set, a request ID is generated using the specified extension. If
       this field is not set, no request ID is generated.
      
       When a request ID is generated, it is also stored in the downstream connection's
       dynamic metadata under the namespace ``envoy.filters.network.tcp_proxy`` with the key
       ``tunnel_request_id`` to allow emission from TCP proxy access logs via the
       ``%DYNAMIC_METADATA(envoy.filters.network.tcp_proxy:tunnel_request_id)%`` formatter.
       [#extension-category: envoy.request_id]
       
      .envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 7;
    • setRequestIdExtension

      public TcpProxy.TunnelingConfig.Builder setRequestIdExtension(RequestIDExtension.Builder builderForValue)
       The configuration of the request ID extension used for generation, validation, and
       associated tracing operations when tunneling.
      
       If this field is set, a request ID is generated using the specified extension. If
       this field is not set, no request ID is generated.
      
       When a request ID is generated, it is also stored in the downstream connection's
       dynamic metadata under the namespace ``envoy.filters.network.tcp_proxy`` with the key
       ``tunnel_request_id`` to allow emission from TCP proxy access logs via the
       ``%DYNAMIC_METADATA(envoy.filters.network.tcp_proxy:tunnel_request_id)%`` formatter.
       [#extension-category: envoy.request_id]
       
      .envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 7;
    • mergeRequestIdExtension

      public TcpProxy.TunnelingConfig.Builder mergeRequestIdExtension(RequestIDExtension value)
       The configuration of the request ID extension used for generation, validation, and
       associated tracing operations when tunneling.
      
       If this field is set, a request ID is generated using the specified extension. If
       this field is not set, no request ID is generated.
      
       When a request ID is generated, it is also stored in the downstream connection's
       dynamic metadata under the namespace ``envoy.filters.network.tcp_proxy`` with the key
       ``tunnel_request_id`` to allow emission from TCP proxy access logs via the
       ``%DYNAMIC_METADATA(envoy.filters.network.tcp_proxy:tunnel_request_id)%`` formatter.
       [#extension-category: envoy.request_id]
       
      .envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 7;
    • clearRequestIdExtension

      public TcpProxy.TunnelingConfig.Builder clearRequestIdExtension()
       The configuration of the request ID extension used for generation, validation, and
       associated tracing operations when tunneling.
      
       If this field is set, a request ID is generated using the specified extension. If
       this field is not set, no request ID is generated.
      
       When a request ID is generated, it is also stored in the downstream connection's
       dynamic metadata under the namespace ``envoy.filters.network.tcp_proxy`` with the key
       ``tunnel_request_id`` to allow emission from TCP proxy access logs via the
       ``%DYNAMIC_METADATA(envoy.filters.network.tcp_proxy:tunnel_request_id)%`` formatter.
       [#extension-category: envoy.request_id]
       
      .envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 7;
    • getRequestIdExtensionBuilder

      public RequestIDExtension.Builder getRequestIdExtensionBuilder()
       The configuration of the request ID extension used for generation, validation, and
       associated tracing operations when tunneling.
      
       If this field is set, a request ID is generated using the specified extension. If
       this field is not set, no request ID is generated.
      
       When a request ID is generated, it is also stored in the downstream connection's
       dynamic metadata under the namespace ``envoy.filters.network.tcp_proxy`` with the key
       ``tunnel_request_id`` to allow emission from TCP proxy access logs via the
       ``%DYNAMIC_METADATA(envoy.filters.network.tcp_proxy:tunnel_request_id)%`` formatter.
       [#extension-category: envoy.request_id]
       
      .envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 7;
    • getRequestIdExtensionOrBuilder

      public RequestIDExtensionOrBuilder getRequestIdExtensionOrBuilder()
       The configuration of the request ID extension used for generation, validation, and
       associated tracing operations when tunneling.
      
       If this field is set, a request ID is generated using the specified extension. If
       this field is not set, no request ID is generated.
      
       When a request ID is generated, it is also stored in the downstream connection's
       dynamic metadata under the namespace ``envoy.filters.network.tcp_proxy`` with the key
       ``tunnel_request_id`` to allow emission from TCP proxy access logs via the
       ``%DYNAMIC_METADATA(envoy.filters.network.tcp_proxy:tunnel_request_id)%`` formatter.
       [#extension-category: envoy.request_id]
       
      .envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension request_id_extension = 7;
      Specified by:
      getRequestIdExtensionOrBuilder in interface TcpProxy.TunnelingConfigOrBuilder
    • getRequestIdHeader

      public String getRequestIdHeader()
       The request header name to use for emitting the generated request ID on the tunneling
       HTTP request.
      
       If not specified or set to an empty string, the default header name ``x-request-id`` is
       used.
      
       .. note::
         This setting does not alter the internal request ID handling elsewhere in Envoy and
         only controls the header emitted on the tunneling request.
       
      string request_id_header = 8;
      Specified by:
      getRequestIdHeader in interface TcpProxy.TunnelingConfigOrBuilder
      Returns:
      The requestIdHeader.
    • getRequestIdHeaderBytes

      public com.google.protobuf.ByteString getRequestIdHeaderBytes()
       The request header name to use for emitting the generated request ID on the tunneling
       HTTP request.
      
       If not specified or set to an empty string, the default header name ``x-request-id`` is
       used.
      
       .. note::
         This setting does not alter the internal request ID handling elsewhere in Envoy and
         only controls the header emitted on the tunneling request.
       
      string request_id_header = 8;
      Specified by:
      getRequestIdHeaderBytes in interface TcpProxy.TunnelingConfigOrBuilder
      Returns:
      The bytes for requestIdHeader.
    • setRequestIdHeader

      public TcpProxy.TunnelingConfig.Builder setRequestIdHeader(String value)
       The request header name to use for emitting the generated request ID on the tunneling
       HTTP request.
      
       If not specified or set to an empty string, the default header name ``x-request-id`` is
       used.
      
       .. note::
         This setting does not alter the internal request ID handling elsewhere in Envoy and
         only controls the header emitted on the tunneling request.
       
      string request_id_header = 8;
      Parameters:
      value - The requestIdHeader to set.
      Returns:
      This builder for chaining.
    • clearRequestIdHeader

      public TcpProxy.TunnelingConfig.Builder clearRequestIdHeader()
       The request header name to use for emitting the generated request ID on the tunneling
       HTTP request.
      
       If not specified or set to an empty string, the default header name ``x-request-id`` is
       used.
      
       .. note::
         This setting does not alter the internal request ID handling elsewhere in Envoy and
         only controls the header emitted on the tunneling request.
       
      string request_id_header = 8;
      Returns:
      This builder for chaining.
    • setRequestIdHeaderBytes

      public TcpProxy.TunnelingConfig.Builder setRequestIdHeaderBytes(com.google.protobuf.ByteString value)
       The request header name to use for emitting the generated request ID on the tunneling
       HTTP request.
      
       If not specified or set to an empty string, the default header name ``x-request-id`` is
       used.
      
       .. note::
         This setting does not alter the internal request ID handling elsewhere in Envoy and
         only controls the header emitted on the tunneling request.
       
      string request_id_header = 8;
      Parameters:
      value - The bytes for requestIdHeader to set.
      Returns:
      This builder for chaining.
    • getRequestIdMetadataKey

      public String getRequestIdMetadataKey()
       The dynamic metadata key to use when storing the generated request ID. The metadata is
       stored under the namespace ``envoy.filters.network.tcp_proxy``.
      
       If not specified or set to an empty string, the default key ``tunnel_request_id`` is used.
       This enables customizing the key used by access log formatters such as
       ``%DYNAMIC_METADATA(envoy.filters.network.tcp_proxy:<key>)%``.
       
      string request_id_metadata_key = 9;
      Specified by:
      getRequestIdMetadataKey in interface TcpProxy.TunnelingConfigOrBuilder
      Returns:
      The requestIdMetadataKey.
    • getRequestIdMetadataKeyBytes

      public com.google.protobuf.ByteString getRequestIdMetadataKeyBytes()
       The dynamic metadata key to use when storing the generated request ID. The metadata is
       stored under the namespace ``envoy.filters.network.tcp_proxy``.
      
       If not specified or set to an empty string, the default key ``tunnel_request_id`` is used.
       This enables customizing the key used by access log formatters such as
       ``%DYNAMIC_METADATA(envoy.filters.network.tcp_proxy:<key>)%``.
       
      string request_id_metadata_key = 9;
      Specified by:
      getRequestIdMetadataKeyBytes in interface TcpProxy.TunnelingConfigOrBuilder
      Returns:
      The bytes for requestIdMetadataKey.
    • setRequestIdMetadataKey

      public TcpProxy.TunnelingConfig.Builder setRequestIdMetadataKey(String value)
       The dynamic metadata key to use when storing the generated request ID. The metadata is
       stored under the namespace ``envoy.filters.network.tcp_proxy``.
      
       If not specified or set to an empty string, the default key ``tunnel_request_id`` is used.
       This enables customizing the key used by access log formatters such as
       ``%DYNAMIC_METADATA(envoy.filters.network.tcp_proxy:<key>)%``.
       
      string request_id_metadata_key = 9;
      Parameters:
      value - The requestIdMetadataKey to set.
      Returns:
      This builder for chaining.
    • clearRequestIdMetadataKey

      public TcpProxy.TunnelingConfig.Builder clearRequestIdMetadataKey()
       The dynamic metadata key to use when storing the generated request ID. The metadata is
       stored under the namespace ``envoy.filters.network.tcp_proxy``.
      
       If not specified or set to an empty string, the default key ``tunnel_request_id`` is used.
       This enables customizing the key used by access log formatters such as
       ``%DYNAMIC_METADATA(envoy.filters.network.tcp_proxy:<key>)%``.
       
      string request_id_metadata_key = 9;
      Returns:
      This builder for chaining.
    • setRequestIdMetadataKeyBytes

      public TcpProxy.TunnelingConfig.Builder setRequestIdMetadataKeyBytes(com.google.protobuf.ByteString value)
       The dynamic metadata key to use when storing the generated request ID. The metadata is
       stored under the namespace ``envoy.filters.network.tcp_proxy``.
      
       If not specified or set to an empty string, the default key ``tunnel_request_id`` is used.
       This enables customizing the key used by access log formatters such as
       ``%DYNAMIC_METADATA(envoy.filters.network.tcp_proxy:<key>)%``.
       
      string request_id_metadata_key = 9;
      Parameters:
      value - The bytes for requestIdMetadataKey to set.
      Returns:
      This builder for chaining.
    • setUnknownFields

      public final TcpProxy.TunnelingConfig.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      setUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder>
    • mergeUnknownFields

      public final TcpProxy.TunnelingConfig.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      mergeUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<TcpProxy.TunnelingConfig.Builder>