Class FilterChain

  • All Implemented Interfaces:
    com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, FilterChainOrBuilder, Serializable

    public final class FilterChain
    extends com.google.protobuf.GeneratedMessageV3
    implements FilterChainOrBuilder
     A filter chain wraps a set of match criteria, an option TLS context, a set of filters, and
     various other parameters.
     [#next-free-field: 10]
     
    Protobuf type envoy.config.listener.v3.FilterChain
    See Also:
    Serialized Form
    • Field Detail

      • FILTER_CHAIN_MATCH_FIELD_NUMBER

        public static final int FILTER_CHAIN_MATCH_FIELD_NUMBER
        See Also:
        Constant Field Values
      • USE_PROXY_PROTO_FIELD_NUMBER

        public static final int USE_PROXY_PROTO_FIELD_NUMBER
        See Also:
        Constant Field Values
      • TRANSPORT_SOCKET_FIELD_NUMBER

        public static final int TRANSPORT_SOCKET_FIELD_NUMBER
        See Also:
        Constant Field Values
      • TRANSPORT_SOCKET_CONNECT_TIMEOUT_FIELD_NUMBER

        public static final int TRANSPORT_SOCKET_CONNECT_TIMEOUT_FIELD_NUMBER
        See Also:
        Constant Field Values
      • ON_DEMAND_CONFIGURATION_FIELD_NUMBER

        public static final int ON_DEMAND_CONFIGURATION_FIELD_NUMBER
        See Also:
        Constant Field Values
    • Method Detail

      • newInstance

        protected Object newInstance​(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
        Overrides:
        newInstance in class com.google.protobuf.GeneratedMessageV3
      • getUnknownFields

        public final com.google.protobuf.UnknownFieldSet getUnknownFields()
        Specified by:
        getUnknownFields in interface com.google.protobuf.MessageOrBuilder
        Overrides:
        getUnknownFields 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
      • hasFilterChainMatch

        public boolean hasFilterChainMatch()
         The criteria to use when matching a connection to this filter chain.
         
        .envoy.config.listener.v3.FilterChainMatch filter_chain_match = 1;
        Specified by:
        hasFilterChainMatch in interface FilterChainOrBuilder
        Returns:
        Whether the filterChainMatch field is set.
      • getFilterChainMatch

        public FilterChainMatch getFilterChainMatch()
         The criteria to use when matching a connection to this filter chain.
         
        .envoy.config.listener.v3.FilterChainMatch filter_chain_match = 1;
        Specified by:
        getFilterChainMatch in interface FilterChainOrBuilder
        Returns:
        The filterChainMatch.
      • getFiltersList

        public List<Filter> getFiltersList()
         A list of individual network filters that make up the filter chain for
         connections established with the listener. Order matters as the filters are
         processed sequentially as connection events happen. Note: If the filter
         list is empty, the connection will close by default.
         
        repeated .envoy.config.listener.v3.Filter filters = 3;
        Specified by:
        getFiltersList in interface FilterChainOrBuilder
      • getFiltersOrBuilderList

        public List<? extends FilterOrBuilder> getFiltersOrBuilderList()
         A list of individual network filters that make up the filter chain for
         connections established with the listener. Order matters as the filters are
         processed sequentially as connection events happen. Note: If the filter
         list is empty, the connection will close by default.
         
        repeated .envoy.config.listener.v3.Filter filters = 3;
        Specified by:
        getFiltersOrBuilderList in interface FilterChainOrBuilder
      • getFiltersCount

        public int getFiltersCount()
         A list of individual network filters that make up the filter chain for
         connections established with the listener. Order matters as the filters are
         processed sequentially as connection events happen. Note: If the filter
         list is empty, the connection will close by default.
         
        repeated .envoy.config.listener.v3.Filter filters = 3;
        Specified by:
        getFiltersCount in interface FilterChainOrBuilder
      • getFilters

        public Filter getFilters​(int index)
         A list of individual network filters that make up the filter chain for
         connections established with the listener. Order matters as the filters are
         processed sequentially as connection events happen. Note: If the filter
         list is empty, the connection will close by default.
         
        repeated .envoy.config.listener.v3.Filter filters = 3;
        Specified by:
        getFilters in interface FilterChainOrBuilder
      • getFiltersOrBuilder

        public FilterOrBuilder getFiltersOrBuilder​(int index)
         A list of individual network filters that make up the filter chain for
         connections established with the listener. Order matters as the filters are
         processed sequentially as connection events happen. Note: If the filter
         list is empty, the connection will close by default.
         
        repeated .envoy.config.listener.v3.Filter filters = 3;
        Specified by:
        getFiltersOrBuilder in interface FilterChainOrBuilder
      • hasUseProxyProto

        @Deprecated
        public boolean hasUseProxyProto()
        Deprecated.
        envoy.config.listener.v3.FilterChain.use_proxy_proto is deprecated. See envoy/config/listener/v3/listener_components.proto;l=241
         Whether the listener should expect a PROXY protocol V1 header on new
         connections. If this option is enabled, the listener will assume that that
         remote address of the connection is the one specified in the header. Some
         load balancers including the AWS ELB support this option. If the option is
         absent or set to false, Envoy will use the physical peer address of the
         connection as the remote address.
         This field is deprecated. Add a
         :ref:`PROXY protocol listener filter <config_listener_filters_proxy_protocol>`
         explicitly instead.
         
        .google.protobuf.BoolValue use_proxy_proto = 4 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
        Specified by:
        hasUseProxyProto in interface FilterChainOrBuilder
        Returns:
        Whether the useProxyProto field is set.
      • getUseProxyProto

        @Deprecated
        public com.google.protobuf.BoolValue getUseProxyProto()
        Deprecated.
        envoy.config.listener.v3.FilterChain.use_proxy_proto is deprecated. See envoy/config/listener/v3/listener_components.proto;l=241
         Whether the listener should expect a PROXY protocol V1 header on new
         connections. If this option is enabled, the listener will assume that that
         remote address of the connection is the one specified in the header. Some
         load balancers including the AWS ELB support this option. If the option is
         absent or set to false, Envoy will use the physical peer address of the
         connection as the remote address.
         This field is deprecated. Add a
         :ref:`PROXY protocol listener filter <config_listener_filters_proxy_protocol>`
         explicitly instead.
         
        .google.protobuf.BoolValue use_proxy_proto = 4 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
        Specified by:
        getUseProxyProto in interface FilterChainOrBuilder
        Returns:
        The useProxyProto.
      • getUseProxyProtoOrBuilder

        @Deprecated
        public com.google.protobuf.BoolValueOrBuilder getUseProxyProtoOrBuilder()
        Deprecated.
         Whether the listener should expect a PROXY protocol V1 header on new
         connections. If this option is enabled, the listener will assume that that
         remote address of the connection is the one specified in the header. Some
         load balancers including the AWS ELB support this option. If the option is
         absent or set to false, Envoy will use the physical peer address of the
         connection as the remote address.
         This field is deprecated. Add a
         :ref:`PROXY protocol listener filter <config_listener_filters_proxy_protocol>`
         explicitly instead.
         
        .google.protobuf.BoolValue use_proxy_proto = 4 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
        Specified by:
        getUseProxyProtoOrBuilder in interface FilterChainOrBuilder
      • hasMetadata

        public boolean hasMetadata()
         [#not-implemented-hide:] filter chain metadata.
         
        .envoy.config.core.v3.Metadata metadata = 5;
        Specified by:
        hasMetadata in interface FilterChainOrBuilder
        Returns:
        Whether the metadata field is set.
      • getMetadata

        public Metadata getMetadata()
         [#not-implemented-hide:] filter chain metadata.
         
        .envoy.config.core.v3.Metadata metadata = 5;
        Specified by:
        getMetadata in interface FilterChainOrBuilder
        Returns:
        The metadata.
      • hasTransportSocket

        public boolean hasTransportSocket()
         Optional custom transport socket implementation to use for downstream connections.
         To setup TLS, set a transport socket with name ``envoy.transport_sockets.tls`` and
         :ref:`DownstreamTlsContext <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.DownstreamTlsContext>` in the ``typed_config``.
         If no transport socket configuration is specified, new connections
         will be set up with plaintext.
         [#extension-category: envoy.transport_sockets.downstream]
         
        .envoy.config.core.v3.TransportSocket transport_socket = 6;
        Specified by:
        hasTransportSocket in interface FilterChainOrBuilder
        Returns:
        Whether the transportSocket field is set.
      • getTransportSocket

        public TransportSocket getTransportSocket()
         Optional custom transport socket implementation to use for downstream connections.
         To setup TLS, set a transport socket with name ``envoy.transport_sockets.tls`` and
         :ref:`DownstreamTlsContext <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.DownstreamTlsContext>` in the ``typed_config``.
         If no transport socket configuration is specified, new connections
         will be set up with plaintext.
         [#extension-category: envoy.transport_sockets.downstream]
         
        .envoy.config.core.v3.TransportSocket transport_socket = 6;
        Specified by:
        getTransportSocket in interface FilterChainOrBuilder
        Returns:
        The transportSocket.
      • getTransportSocketOrBuilder

        public TransportSocketOrBuilder getTransportSocketOrBuilder()
         Optional custom transport socket implementation to use for downstream connections.
         To setup TLS, set a transport socket with name ``envoy.transport_sockets.tls`` and
         :ref:`DownstreamTlsContext <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.DownstreamTlsContext>` in the ``typed_config``.
         If no transport socket configuration is specified, new connections
         will be set up with plaintext.
         [#extension-category: envoy.transport_sockets.downstream]
         
        .envoy.config.core.v3.TransportSocket transport_socket = 6;
        Specified by:
        getTransportSocketOrBuilder in interface FilterChainOrBuilder
      • hasTransportSocketConnectTimeout

        public boolean hasTransportSocketConnectTimeout()
         If present and nonzero, the amount of time to allow incoming connections to complete any
         transport socket negotiations. If this expires before the transport reports connection
         establishment, the connection is summarily closed.
         
        .google.protobuf.Duration transport_socket_connect_timeout = 9;
        Specified by:
        hasTransportSocketConnectTimeout in interface FilterChainOrBuilder
        Returns:
        Whether the transportSocketConnectTimeout field is set.
      • getTransportSocketConnectTimeout

        public com.google.protobuf.Duration getTransportSocketConnectTimeout()
         If present and nonzero, the amount of time to allow incoming connections to complete any
         transport socket negotiations. If this expires before the transport reports connection
         establishment, the connection is summarily closed.
         
        .google.protobuf.Duration transport_socket_connect_timeout = 9;
        Specified by:
        getTransportSocketConnectTimeout in interface FilterChainOrBuilder
        Returns:
        The transportSocketConnectTimeout.
      • getTransportSocketConnectTimeoutOrBuilder

        public com.google.protobuf.DurationOrBuilder getTransportSocketConnectTimeoutOrBuilder()
         If present and nonzero, the amount of time to allow incoming connections to complete any
         transport socket negotiations. If this expires before the transport reports connection
         establishment, the connection is summarily closed.
         
        .google.protobuf.Duration transport_socket_connect_timeout = 9;
        Specified by:
        getTransportSocketConnectTimeoutOrBuilder in interface FilterChainOrBuilder
      • getName

        public String getName()
         The unique name (or empty) by which this filter chain is known.
         Note: :ref:`filter_chain_matcher
         <envoy_v3_api_field_config.listener.v3.Listener.filter_chain_matcher>`
         requires that filter chains are uniquely named within a listener.
         
        string name = 7;
        Specified by:
        getName in interface FilterChainOrBuilder
        Returns:
        The name.
      • getNameBytes

        public com.google.protobuf.ByteString getNameBytes()
         The unique name (or empty) by which this filter chain is known.
         Note: :ref:`filter_chain_matcher
         <envoy_v3_api_field_config.listener.v3.Listener.filter_chain_matcher>`
         requires that filter chains are uniquely named within a listener.
         
        string name = 7;
        Specified by:
        getNameBytes in interface FilterChainOrBuilder
        Returns:
        The bytes for name.
      • hasOnDemandConfiguration

        public boolean hasOnDemandConfiguration()
         [#not-implemented-hide:] The configuration to specify whether the filter chain will be built on-demand.
         If this field is not empty, the filter chain will be built on-demand.
         Otherwise, the filter chain will be built normally and block listener warming.
         
        .envoy.config.listener.v3.FilterChain.OnDemandConfiguration on_demand_configuration = 8;
        Specified by:
        hasOnDemandConfiguration in interface FilterChainOrBuilder
        Returns:
        Whether the onDemandConfiguration field is set.
      • getOnDemandConfiguration

        public FilterChain.OnDemandConfiguration getOnDemandConfiguration()
         [#not-implemented-hide:] The configuration to specify whether the filter chain will be built on-demand.
         If this field is not empty, the filter chain will be built on-demand.
         Otherwise, the filter chain will be built normally and block listener warming.
         
        .envoy.config.listener.v3.FilterChain.OnDemandConfiguration on_demand_configuration = 8;
        Specified by:
        getOnDemandConfiguration in interface FilterChainOrBuilder
        Returns:
        The onDemandConfiguration.
      • getOnDemandConfigurationOrBuilder

        public FilterChain.OnDemandConfigurationOrBuilder getOnDemandConfigurationOrBuilder()
         [#not-implemented-hide:] The configuration to specify whether the filter chain will be built on-demand.
         If this field is not empty, the filter chain will be built on-demand.
         Otherwise, the filter chain will be built normally and block listener warming.
         
        .envoy.config.listener.v3.FilterChain.OnDemandConfiguration on_demand_configuration = 8;
        Specified by:
        getOnDemandConfigurationOrBuilder in interface FilterChainOrBuilder
      • 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 FilterChain parseFrom​(ByteBuffer data)
                                     throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

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

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

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

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

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

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

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

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

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

        public static FilterChain getDefaultInstance()
      • parser

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

        public com.google.protobuf.Parser<FilterChain> 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 FilterChain getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder