Class ProxyProtocolConfig

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessageV3
io.envoyproxy.envoy.config.core.v3.ProxyProtocolConfig
All Implemented Interfaces:
com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, ProxyProtocolConfigOrBuilder, Serializable

public final class ProxyProtocolConfig extends com.google.protobuf.GeneratedMessageV3 implements ProxyProtocolConfigOrBuilder
Protobuf type envoy.config.core.v3.ProxyProtocolConfig
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
    Protobuf type envoy.config.core.v3.ProxyProtocolConfig
    static enum 
    Protobuf enum envoy.config.core.v3.ProxyProtocolConfig.Version

    Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3

    com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>,BuilderT extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT,BuilderT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter

    Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite

    com.google.protobuf.AbstractMessageLite.InternalOneOfEnum
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
     
    static final int
     
    static final int
     

    Fields inherited from class com.google.protobuf.GeneratedMessageV3

    alwaysUseFieldBuilders, unknownFields

    Fields inherited from class com.google.protobuf.AbstractMessage

    memoizedSize

    Fields inherited from class com.google.protobuf.AbstractMessageLite

    memoizedHashCode
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
     
    getAddedTlvs(int index)
    This config allows additional TLVs to be included in the upstream PROXY protocol V2 header.
    int
    This config allows additional TLVs to be included in the upstream PROXY protocol V2 header.
    This config allows additional TLVs to be included in the upstream PROXY protocol V2 header.
    This config allows additional TLVs to be included in the upstream PROXY protocol V2 header.
    This config allows additional TLVs to be included in the upstream PROXY protocol V2 header.
     
     
    static final com.google.protobuf.Descriptors.Descriptor
     
    com.google.protobuf.Parser<ProxyProtocolConfig>
     
    This config controls which TLVs can be passed to upstream if it is Proxy Protocol V2 header.
    This config controls which TLVs can be passed to upstream if it is Proxy Protocol V2 header.
    int
     
    The PROXY protocol version to use.
    int
    The PROXY protocol version to use.
    int
     
    boolean
    This config controls which TLVs can be passed to upstream if it is Proxy Protocol V2 header.
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
     
    final boolean
     
     
     
     
    newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
     
    protected Object
    newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
     
     
    parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    parseFrom(byte[] data)
     
    parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    parseFrom(com.google.protobuf.ByteString data)
     
    parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    parseFrom(com.google.protobuf.CodedInputStream input)
     
    parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
     
    parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
     
    parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    static com.google.protobuf.Parser<ProxyProtocolConfig>
     
     
    void
    writeTo(com.google.protobuf.CodedOutputStream output)
     

    Methods inherited from class com.google.protobuf.GeneratedMessageV3

    canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeExtensionsImmutable, makeMutableCopy, makeMutableCopy, mergeFromAndMakeImmutableInternal, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBooleanList, newBuilderForType, newDoubleList, newFloatList, newIntList, newLongList, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag

    Methods inherited from class com.google.protobuf.AbstractMessage

    findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toString

    Methods inherited from class com.google.protobuf.AbstractMessageLite

    addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface com.google.protobuf.MessageLite

    toByteArray, toByteString, writeDelimitedTo, writeTo

    Methods inherited from interface com.google.protobuf.MessageOrBuilder

    findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
  • Field Details

    • VERSION_FIELD_NUMBER

      public static final int VERSION_FIELD_NUMBER
      See Also:
    • PASS_THROUGH_TLVS_FIELD_NUMBER

      public static final int PASS_THROUGH_TLVS_FIELD_NUMBER
      See Also:
    • ADDED_TLVS_FIELD_NUMBER

      public static final int ADDED_TLVS_FIELD_NUMBER
      See Also:
  • Method Details

    • newInstance

      protected Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
      Overrides:
      newInstance in class com.google.protobuf.GeneratedMessageV3
    • 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
    • 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.
    • 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.
    • 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.
    • 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
    • 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
    • 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
    • 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
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessageV3
    • writeTo

      public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException
      Specified by:
      writeTo in interface com.google.protobuf.MessageLite
      Overrides:
      writeTo in class com.google.protobuf.GeneratedMessageV3
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Specified by:
      getSerializedSize in interface com.google.protobuf.MessageLite
      Overrides:
      getSerializedSize in class com.google.protobuf.GeneratedMessageV3
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface com.google.protobuf.Message
      Overrides:
      equals in class com.google.protobuf.AbstractMessage
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface com.google.protobuf.Message
      Overrides:
      hashCode in class com.google.protobuf.AbstractMessage
    • parseFrom

      public static ProxyProtocolConfig parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static ProxyProtocolConfig parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static ProxyProtocolConfig parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static ProxyProtocolConfig parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static ProxyProtocolConfig parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static ProxyProtocolConfig parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static ProxyProtocolConfig parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static ProxyProtocolConfig parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static ProxyProtocolConfig parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static ProxyProtocolConfig parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static ProxyProtocolConfig parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static ProxyProtocolConfig parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilderForType

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

      public static ProxyProtocolConfig.Builder newBuilder()
    • newBuilder

      public static ProxyProtocolConfig.Builder newBuilder(ProxyProtocolConfig prototype)
    • toBuilder

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

      protected ProxyProtocolConfig.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
      Specified by:
      newBuilderForType in class com.google.protobuf.GeneratedMessageV3
    • getDefaultInstance

      public static ProxyProtocolConfig getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<ProxyProtocolConfig> parser()
    • getParserForType

      public com.google.protobuf.Parser<ProxyProtocolConfig> getParserForType()
      Specified by:
      getParserForType in interface com.google.protobuf.Message
      Specified by:
      getParserForType in interface com.google.protobuf.MessageLite
      Overrides:
      getParserForType in class com.google.protobuf.GeneratedMessageV3
    • getDefaultInstanceForType

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