Class ProxyProtocolConfig.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessageV3.Builder<ProxyProtocolConfig.Builder>
io.envoyproxy.envoy.config.core.v3.ProxyProtocolConfig.Builder
All Implemented Interfaces:
com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, ProxyProtocolConfigOrBuilder, Cloneable
Enclosing class:
ProxyProtocolConfig

public static final class ProxyProtocolConfig.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<ProxyProtocolConfig.Builder> implements ProxyProtocolConfigOrBuilder
Protobuf type envoy.config.core.v3.ProxyProtocolConfig
  • 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<ProxyProtocolConfig.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<ProxyProtocolConfig.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<ProxyProtocolConfig.Builder>
    • getDefaultInstanceForType

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

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

      public ProxyProtocolConfig 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<ProxyProtocolConfig.Builder>
    • setField

      public ProxyProtocolConfig.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<ProxyProtocolConfig.Builder>
    • clearField

      public ProxyProtocolConfig.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<ProxyProtocolConfig.Builder>
    • clearOneof

      public ProxyProtocolConfig.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<ProxyProtocolConfig.Builder>
    • setRepeatedField

      public ProxyProtocolConfig.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<ProxyProtocolConfig.Builder>
    • addRepeatedField

      public ProxyProtocolConfig.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<ProxyProtocolConfig.Builder>
    • mergeFrom

      public ProxyProtocolConfig.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<ProxyProtocolConfig.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<ProxyProtocolConfig.Builder>
    • mergeFrom

      public ProxyProtocolConfig.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<ProxyProtocolConfig.Builder>
      Throws:
      IOException
    • getVersionValue

      public int getVersionValue()
       The PROXY protocol version to use. See https://www.haproxy.org/download/2.1/doc/proxy-protocol.txt for details
       
      .envoy.config.core.v3.ProxyProtocolConfig.Version version = 1;
      Specified by:
      getVersionValue in interface ProxyProtocolConfigOrBuilder
      Returns:
      The enum numeric value on the wire for version.
    • setVersionValue

      public ProxyProtocolConfig.Builder setVersionValue(int value)
       The PROXY protocol version to use. See https://www.haproxy.org/download/2.1/doc/proxy-protocol.txt for details
       
      .envoy.config.core.v3.ProxyProtocolConfig.Version version = 1;
      Parameters:
      value - The enum numeric value on the wire for version to set.
      Returns:
      This builder for chaining.
    • getVersion

      public ProxyProtocolConfig.Version getVersion()
       The PROXY protocol version to use. See https://www.haproxy.org/download/2.1/doc/proxy-protocol.txt for details
       
      .envoy.config.core.v3.ProxyProtocolConfig.Version version = 1;
      Specified by:
      getVersion in interface ProxyProtocolConfigOrBuilder
      Returns:
      The version.
    • setVersion

       The PROXY protocol version to use. See https://www.haproxy.org/download/2.1/doc/proxy-protocol.txt for details
       
      .envoy.config.core.v3.ProxyProtocolConfig.Version version = 1;
      Parameters:
      value - The version to set.
      Returns:
      This builder for chaining.
    • clearVersion

      public ProxyProtocolConfig.Builder clearVersion()
       The PROXY protocol version to use. See https://www.haproxy.org/download/2.1/doc/proxy-protocol.txt for details
       
      .envoy.config.core.v3.ProxyProtocolConfig.Version version = 1;
      Returns:
      This builder for chaining.
    • hasPassThroughTlvs

      public boolean hasPassThroughTlvs()
       This config controls which TLVs can be passed to upstream if it is Proxy Protocol
       V2 header. If there is no setting for this field, no TLVs will be passed through.
       
      .envoy.config.core.v3.ProxyProtocolPassThroughTLVs pass_through_tlvs = 2;
      Specified by:
      hasPassThroughTlvs in interface ProxyProtocolConfigOrBuilder
      Returns:
      Whether the passThroughTlvs field is set.
    • getPassThroughTlvs

      public ProxyProtocolPassThroughTLVs getPassThroughTlvs()
       This config controls which TLVs can be passed to upstream if it is Proxy Protocol
       V2 header. If there is no setting for this field, no TLVs will be passed through.
       
      .envoy.config.core.v3.ProxyProtocolPassThroughTLVs pass_through_tlvs = 2;
      Specified by:
      getPassThroughTlvs in interface ProxyProtocolConfigOrBuilder
      Returns:
      The passThroughTlvs.
    • setPassThroughTlvs

      public ProxyProtocolConfig.Builder setPassThroughTlvs(ProxyProtocolPassThroughTLVs value)
       This config controls which TLVs can be passed to upstream if it is Proxy Protocol
       V2 header. If there is no setting for this field, no TLVs will be passed through.
       
      .envoy.config.core.v3.ProxyProtocolPassThroughTLVs pass_through_tlvs = 2;
    • setPassThroughTlvs

      public ProxyProtocolConfig.Builder setPassThroughTlvs(ProxyProtocolPassThroughTLVs.Builder builderForValue)
       This config controls which TLVs can be passed to upstream if it is Proxy Protocol
       V2 header. If there is no setting for this field, no TLVs will be passed through.
       
      .envoy.config.core.v3.ProxyProtocolPassThroughTLVs pass_through_tlvs = 2;
    • mergePassThroughTlvs

      public ProxyProtocolConfig.Builder mergePassThroughTlvs(ProxyProtocolPassThroughTLVs value)
       This config controls which TLVs can be passed to upstream if it is Proxy Protocol
       V2 header. If there is no setting for this field, no TLVs will be passed through.
       
      .envoy.config.core.v3.ProxyProtocolPassThroughTLVs pass_through_tlvs = 2;
    • clearPassThroughTlvs

      public ProxyProtocolConfig.Builder clearPassThroughTlvs()
       This config controls which TLVs can be passed to upstream if it is Proxy Protocol
       V2 header. If there is no setting for this field, no TLVs will be passed through.
       
      .envoy.config.core.v3.ProxyProtocolPassThroughTLVs pass_through_tlvs = 2;
    • getPassThroughTlvsBuilder

      public ProxyProtocolPassThroughTLVs.Builder getPassThroughTlvsBuilder()
       This config controls which TLVs can be passed to upstream if it is Proxy Protocol
       V2 header. If there is no setting for this field, no TLVs will be passed through.
       
      .envoy.config.core.v3.ProxyProtocolPassThroughTLVs pass_through_tlvs = 2;
    • getPassThroughTlvsOrBuilder

      public ProxyProtocolPassThroughTLVsOrBuilder getPassThroughTlvsOrBuilder()
       This config controls which TLVs can be passed to upstream if it is Proxy Protocol
       V2 header. If there is no setting for this field, no TLVs will be passed through.
       
      .envoy.config.core.v3.ProxyProtocolPassThroughTLVs pass_through_tlvs = 2;
      Specified by:
      getPassThroughTlvsOrBuilder in interface ProxyProtocolConfigOrBuilder
    • getAddedTlvsList

      public List<TlvEntry> getAddedTlvsList()
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
      Specified by:
      getAddedTlvsList in interface ProxyProtocolConfigOrBuilder
    • getAddedTlvsCount

      public int getAddedTlvsCount()
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
      Specified by:
      getAddedTlvsCount in interface ProxyProtocolConfigOrBuilder
    • getAddedTlvs

      public TlvEntry getAddedTlvs(int index)
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
      Specified by:
      getAddedTlvs in interface ProxyProtocolConfigOrBuilder
    • setAddedTlvs

      public ProxyProtocolConfig.Builder setAddedTlvs(int index, TlvEntry value)
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
    • setAddedTlvs

      public ProxyProtocolConfig.Builder setAddedTlvs(int index, TlvEntry.Builder builderForValue)
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
    • addAddedTlvs

      public ProxyProtocolConfig.Builder addAddedTlvs(TlvEntry value)
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
    • addAddedTlvs

      public ProxyProtocolConfig.Builder addAddedTlvs(int index, TlvEntry value)
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
    • addAddedTlvs

      public ProxyProtocolConfig.Builder addAddedTlvs(TlvEntry.Builder builderForValue)
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
    • addAddedTlvs

      public ProxyProtocolConfig.Builder addAddedTlvs(int index, TlvEntry.Builder builderForValue)
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
    • addAllAddedTlvs

      public ProxyProtocolConfig.Builder addAllAddedTlvs(Iterable<? extends TlvEntry> values)
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
    • clearAddedTlvs

      public ProxyProtocolConfig.Builder clearAddedTlvs()
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
    • removeAddedTlvs

      public ProxyProtocolConfig.Builder removeAddedTlvs(int index)
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
    • getAddedTlvsBuilder

      public TlvEntry.Builder getAddedTlvsBuilder(int index)
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
    • getAddedTlvsOrBuilder

      public TlvEntryOrBuilder getAddedTlvsOrBuilder(int index)
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
      Specified by:
      getAddedTlvsOrBuilder in interface ProxyProtocolConfigOrBuilder
    • getAddedTlvsOrBuilderList

      public List<? extends TlvEntryOrBuilder> getAddedTlvsOrBuilderList()
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
      Specified by:
      getAddedTlvsOrBuilderList in interface ProxyProtocolConfigOrBuilder
    • addAddedTlvsBuilder

      public TlvEntry.Builder addAddedTlvsBuilder()
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
    • addAddedTlvsBuilder

      public TlvEntry.Builder addAddedTlvsBuilder(int index)
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
    • getAddedTlvsBuilderList

      public List<TlvEntry.Builder> getAddedTlvsBuilderList()
       This config allows additional TLVs to be included in the upstream PROXY protocol
       V2 header. Unlike ``pass_through_tlvs``, which passes TLVs from the downstream request,
       ``added_tlvs`` provides an extension mechanism for defining new TLVs that are included
       with the upstream request. These TLVs may not be present in the downstream request and
       can be defined at either the transport socket level or the host level to provide more
       granular control over the TLVs that are included in the upstream request.
      
       Host-level TLVs are specified in the ``metadata.typed_filter_metadata`` field under the
       ``envoy.transport_sockets.proxy_protocol`` namespace.
      
       .. literalinclude:: /_configs/repo/proxy_protocol.yaml
          :language: yaml
          :lines: 49-57
          :linenos:
          :lineno-start: 49
          :caption: :download:`proxy_protocol.yaml </_configs/repo/proxy_protocol.yaml>`
      
       **Precedence behavior**:
      
       - When a TLV is defined at both the host level and the transport socket level, the value
         from the host level configuration takes precedence. This allows users to define default TLVs
         at the transport socket level and override them at the host level.
       - Any TLV defined in the ``pass_through_tlvs`` field will be overridden by either the host-level
         or transport socket-level TLV.
      
       If there are multiple TLVs with the same type, only the TLVs from the highest precedence level
       will be used.
       
      repeated .envoy.config.core.v3.TlvEntry added_tlvs = 3;
    • setUnknownFields

      public final ProxyProtocolConfig.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<ProxyProtocolConfig.Builder>
    • mergeUnknownFields

      public final ProxyProtocolConfig.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<ProxyProtocolConfig.Builder>