Class HeaderMatcher

  • All Implemented Interfaces:
    com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, HeaderMatcherOrBuilder, java.io.Serializable

    public final class HeaderMatcher
    extends com.google.protobuf.GeneratedMessage
    implements HeaderMatcherOrBuilder
     .. attention::
    
     Internally, Envoy always uses the HTTP/2 ``:authority`` header to represent the HTTP/1 ``Host``
     header. Thus, if attempting to match on ``Host``, match on ``:authority`` instead.
    
     .. attention::
    
     To route on HTTP method, use the special HTTP/2 ``:method`` header. This works for both
     HTTP/1 and HTTP/2 as Envoy normalizes headers. E.g.,
    
     .. code-block:: json
    
     {
     "name": ":method",
     "string_match": {
     "exact": "POST"
     }
     }
    
     .. attention::
     In the absence of any header match specifier, match will default to :ref:`present_match
     <envoy_v3_api_field_config.route.v3.HeaderMatcher.present_match>`. i.e, a request that has the :ref:`name
     <envoy_v3_api_field_config.route.v3.HeaderMatcher.name>` header will match, regardless of the header's
     value.
    
     [#next-major-version: HeaderMatcher should be refactored to use StringMatcher.]
     [#next-free-field: 15]
     
    Protobuf type envoy.config.route.v3.HeaderMatcher
    See Also:
    Serialized Form
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  HeaderMatcher.Builder
      ..
      static class  HeaderMatcher.HeaderMatchSpecifierCase  
      • Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessage

        com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>,​BuilderT extends com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT,​BuilderT>>, com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.FieldAccessorTable, com.google.protobuf.GeneratedMessage.GeneratedExtension<ContainingT extends com.google.protobuf.Message,​T extends java.lang.Object>, com.google.protobuf.GeneratedMessage.UnusedPrivateParameter
      • Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessage

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

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

      Constructors 
      Modifier Constructor Description
      private HeaderMatcher()  
      private HeaderMatcher​(com.google.protobuf.GeneratedMessage.Builder<?> builder)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object obj)  
      java.lang.String getContainsMatch()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.contains_match is deprecated.
      com.google.protobuf.ByteString getContainsMatchBytes()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.contains_match is deprecated.
      static HeaderMatcher getDefaultInstance()  
      HeaderMatcher getDefaultInstanceForType()  
      static com.google.protobuf.Descriptors.Descriptor getDescriptor()  
      java.lang.String getExactMatch()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.exact_match is deprecated.
      com.google.protobuf.ByteString getExactMatchBytes()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.exact_match is deprecated.
      HeaderMatcher.HeaderMatchSpecifierCase getHeaderMatchSpecifierCase()  
      boolean getInvertMatch()
      If specified, the match result will be inverted before checking.
      java.lang.String getName()
      Specifies the name of the header in the request.
      com.google.protobuf.ByteString getNameBytes()
      Specifies the name of the header in the request.
      com.google.protobuf.Parser<HeaderMatcher> getParserForType()  
      java.lang.String getPrefixMatch()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.prefix_match is deprecated.
      com.google.protobuf.ByteString getPrefixMatchBytes()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.prefix_match is deprecated.
      boolean getPresentMatch()
      If specified as true, header match will be performed based on whether the header is in the request.
      Int64Range getRangeMatch()
      If specified, header match will be performed based on range.
      Int64RangeOrBuilder getRangeMatchOrBuilder()
      If specified, header match will be performed based on range.
      RegexMatcher getSafeRegexMatch()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.safe_regex_match is deprecated.
      RegexMatcherOrBuilder getSafeRegexMatchOrBuilder()
      Deprecated.
      int getSerializedSize()  
      StringMatcher getStringMatch()
      If specified, header match will be performed based on the string match of the header value.
      StringMatcherOrBuilder getStringMatchOrBuilder()
      If specified, header match will be performed based on the string match of the header value.
      java.lang.String getSuffixMatch()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.suffix_match is deprecated.
      com.google.protobuf.ByteString getSuffixMatchBytes()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.suffix_match is deprecated.
      boolean getTreatMissingHeaderAsEmpty()
      If specified, for any header match rule, if the header match rule specified header does not exist, this header value will be treated as empty.
      boolean hasContainsMatch()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.contains_match is deprecated.
      boolean hasExactMatch()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.exact_match is deprecated.
      int hashCode()  
      boolean hasPrefixMatch()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.prefix_match is deprecated.
      boolean hasPresentMatch()
      If specified as true, header match will be performed based on whether the header is in the request.
      boolean hasRangeMatch()
      If specified, header match will be performed based on range.
      boolean hasSafeRegexMatch()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.safe_regex_match is deprecated.
      boolean hasStringMatch()
      If specified, header match will be performed based on the string match of the header value.
      boolean hasSuffixMatch()
      Deprecated.
      envoy.config.route.v3.HeaderMatcher.suffix_match is deprecated.
      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()  
      boolean isInitialized()  
      static HeaderMatcher.Builder newBuilder()  
      static HeaderMatcher.Builder newBuilder​(HeaderMatcher prototype)  
      HeaderMatcher.Builder newBuilderForType()  
      protected HeaderMatcher.Builder newBuilderForType​(com.google.protobuf.AbstractMessage.BuilderParent parent)  
      static HeaderMatcher parseDelimitedFrom​(java.io.InputStream input)  
      static HeaderMatcher parseDelimitedFrom​(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)  
      static HeaderMatcher parseFrom​(byte[] data)  
      static HeaderMatcher parseFrom​(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)  
      static HeaderMatcher parseFrom​(com.google.protobuf.ByteString data)  
      static HeaderMatcher parseFrom​(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)  
      static HeaderMatcher parseFrom​(com.google.protobuf.CodedInputStream input)  
      static HeaderMatcher parseFrom​(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)  
      static HeaderMatcher parseFrom​(java.io.InputStream input)  
      static HeaderMatcher parseFrom​(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)  
      static HeaderMatcher parseFrom​(java.nio.ByteBuffer data)  
      static HeaderMatcher parseFrom​(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)  
      static com.google.protobuf.Parser<HeaderMatcher> parser()  
      HeaderMatcher.Builder toBuilder()  
      void writeTo​(com.google.protobuf.CodedOutputStream output)  
      • Methods inherited from class com.google.protobuf.GeneratedMessage

        canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeMutableCopy, makeMutableCopy, mergeFromAndMakeImmutableInternal, newFileScopedGeneratedExtension, newInstance, newMessageScopedGeneratedExtension, 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, hashFields, toString
      • Methods inherited from class com.google.protobuf.AbstractMessageLite

        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 Detail

      • headerMatchSpecifierCase_

        private int headerMatchSpecifierCase_
      • headerMatchSpecifier_

        private java.lang.Object headerMatchSpecifier_
      • name_

        private volatile java.lang.Object name_
      • EXACT_MATCH_FIELD_NUMBER

        public static final int EXACT_MATCH_FIELD_NUMBER
        See Also:
        Constant Field Values
      • SAFE_REGEX_MATCH_FIELD_NUMBER

        public static final int SAFE_REGEX_MATCH_FIELD_NUMBER
        See Also:
        Constant Field Values
      • RANGE_MATCH_FIELD_NUMBER

        public static final int RANGE_MATCH_FIELD_NUMBER
        See Also:
        Constant Field Values
      • PRESENT_MATCH_FIELD_NUMBER

        public static final int PRESENT_MATCH_FIELD_NUMBER
        See Also:
        Constant Field Values
      • PREFIX_MATCH_FIELD_NUMBER

        public static final int PREFIX_MATCH_FIELD_NUMBER
        See Also:
        Constant Field Values
      • SUFFIX_MATCH_FIELD_NUMBER

        public static final int SUFFIX_MATCH_FIELD_NUMBER
        See Also:
        Constant Field Values
      • CONTAINS_MATCH_FIELD_NUMBER

        public static final int CONTAINS_MATCH_FIELD_NUMBER
        See Also:
        Constant Field Values
      • STRING_MATCH_FIELD_NUMBER

        public static final int STRING_MATCH_FIELD_NUMBER
        See Also:
        Constant Field Values
      • INVERT_MATCH_FIELD_NUMBER

        public static final int INVERT_MATCH_FIELD_NUMBER
        See Also:
        Constant Field Values
      • invertMatch_

        private boolean invertMatch_
      • TREAT_MISSING_HEADER_AS_EMPTY_FIELD_NUMBER

        public static final int TREAT_MISSING_HEADER_AS_EMPTY_FIELD_NUMBER
        See Also:
        Constant Field Values
      • treatMissingHeaderAsEmpty_

        private boolean treatMissingHeaderAsEmpty_
      • memoizedIsInitialized

        private byte memoizedIsInitialized
      • DEFAULT_INSTANCE

        private static final HeaderMatcher DEFAULT_INSTANCE
      • PARSER

        private static final com.google.protobuf.Parser<HeaderMatcher> PARSER
    • Constructor Detail

      • HeaderMatcher

        private HeaderMatcher​(com.google.protobuf.GeneratedMessage.Builder<?> builder)
      • HeaderMatcher

        private HeaderMatcher()
    • Method Detail

      • getDescriptor

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

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage
      • getName

        public java.lang.String getName()
         Specifies the name of the header in the request.
         
        string name = 1 [(.validate.rules) = { ... }
        Specified by:
        getName in interface HeaderMatcherOrBuilder
        Returns:
        The name.
      • getNameBytes

        public com.google.protobuf.ByteString getNameBytes()
         Specifies the name of the header in the request.
         
        string name = 1 [(.validate.rules) = { ... }
        Specified by:
        getNameBytes in interface HeaderMatcherOrBuilder
        Returns:
        The bytes for name.
      • hasExactMatch

        @Deprecated
        public boolean hasExactMatch()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.exact_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2241
         If specified, header match will be performed based on the value of the header.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
         
        string exact_match = 4 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
        Specified by:
        hasExactMatch in interface HeaderMatcherOrBuilder
        Returns:
        Whether the exactMatch field is set.
      • getExactMatch

        @Deprecated
        public java.lang.String getExactMatch()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.exact_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2241
         If specified, header match will be performed based on the value of the header.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
         
        string exact_match = 4 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
        Specified by:
        getExactMatch in interface HeaderMatcherOrBuilder
        Returns:
        The exactMatch.
      • getExactMatchBytes

        @Deprecated
        public com.google.protobuf.ByteString getExactMatchBytes()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.exact_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2241
         If specified, header match will be performed based on the value of the header.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
         
        string exact_match = 4 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
        Specified by:
        getExactMatchBytes in interface HeaderMatcherOrBuilder
        Returns:
        The bytes for exactMatch.
      • hasSafeRegexMatch

        @Deprecated
        public boolean hasSafeRegexMatch()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.safe_regex_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2248
         If specified, this regex string is a regular expression rule which implies the entire request
         header value must match the regex. The rule will not match if only a subsequence of the
         request header value matches the regex.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
         
        .envoy.type.matcher.v3.RegexMatcher safe_regex_match = 11 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
        Specified by:
        hasSafeRegexMatch in interface HeaderMatcherOrBuilder
        Returns:
        Whether the safeRegexMatch field is set.
      • getSafeRegexMatch

        @Deprecated
        public RegexMatcher getSafeRegexMatch()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.safe_regex_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2248
         If specified, this regex string is a regular expression rule which implies the entire request
         header value must match the regex. The rule will not match if only a subsequence of the
         request header value matches the regex.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
         
        .envoy.type.matcher.v3.RegexMatcher safe_regex_match = 11 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
        Specified by:
        getSafeRegexMatch in interface HeaderMatcherOrBuilder
        Returns:
        The safeRegexMatch.
      • getSafeRegexMatchOrBuilder

        @Deprecated
        public RegexMatcherOrBuilder getSafeRegexMatchOrBuilder()
        Deprecated.
         If specified, this regex string is a regular expression rule which implies the entire request
         header value must match the regex. The rule will not match if only a subsequence of the
         request header value matches the regex.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
         
        .envoy.type.matcher.v3.RegexMatcher safe_regex_match = 11 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
        Specified by:
        getSafeRegexMatchOrBuilder in interface HeaderMatcherOrBuilder
      • hasRangeMatch

        public boolean hasRangeMatch()
         If specified, header match will be performed based on range.
         The rule will match if the request header value is within this range.
         The entire request header value must represent an integer in base 10 notation: consisting of
         an optional plus or minus sign followed by a sequence of digits. The rule will not match if
         the header value does not represent an integer. Match will fail for empty values, floating
         point numbers or if only a subsequence of the header value is an integer.
        
         Examples:
        
         * For range [-10,0), route will match for header value -1, but not for 0, ``somestring``, 10.9,
         ``-1somestring``
         
        .envoy.type.v3.Int64Range range_match = 6;
        Specified by:
        hasRangeMatch in interface HeaderMatcherOrBuilder
        Returns:
        Whether the rangeMatch field is set.
      • getRangeMatch

        public Int64Range getRangeMatch()
         If specified, header match will be performed based on range.
         The rule will match if the request header value is within this range.
         The entire request header value must represent an integer in base 10 notation: consisting of
         an optional plus or minus sign followed by a sequence of digits. The rule will not match if
         the header value does not represent an integer. Match will fail for empty values, floating
         point numbers or if only a subsequence of the header value is an integer.
        
         Examples:
        
         * For range [-10,0), route will match for header value -1, but not for 0, ``somestring``, 10.9,
         ``-1somestring``
         
        .envoy.type.v3.Int64Range range_match = 6;
        Specified by:
        getRangeMatch in interface HeaderMatcherOrBuilder
        Returns:
        The rangeMatch.
      • getRangeMatchOrBuilder

        public Int64RangeOrBuilder getRangeMatchOrBuilder()
         If specified, header match will be performed based on range.
         The rule will match if the request header value is within this range.
         The entire request header value must represent an integer in base 10 notation: consisting of
         an optional plus or minus sign followed by a sequence of digits. The rule will not match if
         the header value does not represent an integer. Match will fail for empty values, floating
         point numbers or if only a subsequence of the header value is an integer.
        
         Examples:
        
         * For range [-10,0), route will match for header value -1, but not for 0, ``somestring``, 10.9,
         ``-1somestring``
         
        .envoy.type.v3.Int64Range range_match = 6;
        Specified by:
        getRangeMatchOrBuilder in interface HeaderMatcherOrBuilder
      • hasPresentMatch

        public boolean hasPresentMatch()
         If specified as true, header match will be performed based on whether the header is in the
         request. If specified as false, header match will be performed based on whether the header is absent.
         
        bool present_match = 7;
        Specified by:
        hasPresentMatch in interface HeaderMatcherOrBuilder
        Returns:
        Whether the presentMatch field is set.
      • getPresentMatch

        public boolean getPresentMatch()
         If specified as true, header match will be performed based on whether the header is in the
         request. If specified as false, header match will be performed based on whether the header is absent.
         
        bool present_match = 7;
        Specified by:
        getPresentMatch in interface HeaderMatcherOrBuilder
        Returns:
        The presentMatch.
      • hasPrefixMatch

        @Deprecated
        public boolean hasPrefixMatch()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.prefix_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2275
         If specified, header match will be performed based on the prefix of the header value.
         Note: empty prefix is not allowed, please use present_match instead.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
        
         Examples:
        
         * The prefix ``abcd`` matches the value ``abcdxyz``, but not for ``abcxyz``.
         
        string prefix_match = 9 [deprecated = true, (.validate.rules) = { ... }
        Specified by:
        hasPrefixMatch in interface HeaderMatcherOrBuilder
        Returns:
        Whether the prefixMatch field is set.
      • getPrefixMatch

        @Deprecated
        public java.lang.String getPrefixMatch()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.prefix_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2275
         If specified, header match will be performed based on the prefix of the header value.
         Note: empty prefix is not allowed, please use present_match instead.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
        
         Examples:
        
         * The prefix ``abcd`` matches the value ``abcdxyz``, but not for ``abcxyz``.
         
        string prefix_match = 9 [deprecated = true, (.validate.rules) = { ... }
        Specified by:
        getPrefixMatch in interface HeaderMatcherOrBuilder
        Returns:
        The prefixMatch.
      • getPrefixMatchBytes

        @Deprecated
        public com.google.protobuf.ByteString getPrefixMatchBytes()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.prefix_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2275
         If specified, header match will be performed based on the prefix of the header value.
         Note: empty prefix is not allowed, please use present_match instead.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
        
         Examples:
        
         * The prefix ``abcd`` matches the value ``abcdxyz``, but not for ``abcxyz``.
         
        string prefix_match = 9 [deprecated = true, (.validate.rules) = { ... }
        Specified by:
        getPrefixMatchBytes in interface HeaderMatcherOrBuilder
        Returns:
        The bytes for prefixMatch.
      • hasSuffixMatch

        @Deprecated
        public boolean hasSuffixMatch()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.suffix_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2288
         If specified, header match will be performed based on the suffix of the header value.
         Note: empty suffix is not allowed, please use present_match instead.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
        
         Examples:
        
         * The suffix ``abcd`` matches the value ``xyzabcd``, but not for ``xyzbcd``.
         
        string suffix_match = 10 [deprecated = true, (.validate.rules) = { ... }
        Specified by:
        hasSuffixMatch in interface HeaderMatcherOrBuilder
        Returns:
        Whether the suffixMatch field is set.
      • getSuffixMatch

        @Deprecated
        public java.lang.String getSuffixMatch()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.suffix_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2288
         If specified, header match will be performed based on the suffix of the header value.
         Note: empty suffix is not allowed, please use present_match instead.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
        
         Examples:
        
         * The suffix ``abcd`` matches the value ``xyzabcd``, but not for ``xyzbcd``.
         
        string suffix_match = 10 [deprecated = true, (.validate.rules) = { ... }
        Specified by:
        getSuffixMatch in interface HeaderMatcherOrBuilder
        Returns:
        The suffixMatch.
      • getSuffixMatchBytes

        @Deprecated
        public com.google.protobuf.ByteString getSuffixMatchBytes()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.suffix_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2288
         If specified, header match will be performed based on the suffix of the header value.
         Note: empty suffix is not allowed, please use present_match instead.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
        
         Examples:
        
         * The suffix ``abcd`` matches the value ``xyzabcd``, but not for ``xyzbcd``.
         
        string suffix_match = 10 [deprecated = true, (.validate.rules) = { ... }
        Specified by:
        getSuffixMatchBytes in interface HeaderMatcherOrBuilder
        Returns:
        The bytes for suffixMatch.
      • hasContainsMatch

        @Deprecated
        public boolean hasContainsMatch()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.contains_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2302
         If specified, header match will be performed based on whether the header value contains
         the given value or not.
         Note: empty contains match is not allowed, please use present_match instead.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
        
         Examples:
        
         * The value ``abcd`` matches the value ``xyzabcdpqr``, but not for ``xyzbcdpqr``.
         
        string contains_match = 12 [deprecated = true, (.validate.rules) = { ... }
        Specified by:
        hasContainsMatch in interface HeaderMatcherOrBuilder
        Returns:
        Whether the containsMatch field is set.
      • getContainsMatch

        @Deprecated
        public java.lang.String getContainsMatch()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.contains_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2302
         If specified, header match will be performed based on whether the header value contains
         the given value or not.
         Note: empty contains match is not allowed, please use present_match instead.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
        
         Examples:
        
         * The value ``abcd`` matches the value ``xyzabcdpqr``, but not for ``xyzbcdpqr``.
         
        string contains_match = 12 [deprecated = true, (.validate.rules) = { ... }
        Specified by:
        getContainsMatch in interface HeaderMatcherOrBuilder
        Returns:
        The containsMatch.
      • getContainsMatchBytes

        @Deprecated
        public com.google.protobuf.ByteString getContainsMatchBytes()
        Deprecated.
        envoy.config.route.v3.HeaderMatcher.contains_match is deprecated. See envoy/config/route/v3/route_components.proto;l=2302
         If specified, header match will be performed based on whether the header value contains
         the given value or not.
         Note: empty contains match is not allowed, please use present_match instead.
         This field is deprecated. Please use :ref:`string_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.string_match>`.
        
         Examples:
        
         * The value ``abcd`` matches the value ``xyzabcdpqr``, but not for ``xyzbcdpqr``.
         
        string contains_match = 12 [deprecated = true, (.validate.rules) = { ... }
        Specified by:
        getContainsMatchBytes in interface HeaderMatcherOrBuilder
        Returns:
        The bytes for containsMatch.
      • hasStringMatch

        public boolean hasStringMatch()
         If specified, header match will be performed based on the string match of the header value.
         
        .envoy.type.matcher.v3.StringMatcher string_match = 13;
        Specified by:
        hasStringMatch in interface HeaderMatcherOrBuilder
        Returns:
        Whether the stringMatch field is set.
      • getStringMatch

        public StringMatcher getStringMatch()
         If specified, header match will be performed based on the string match of the header value.
         
        .envoy.type.matcher.v3.StringMatcher string_match = 13;
        Specified by:
        getStringMatch in interface HeaderMatcherOrBuilder
        Returns:
        The stringMatch.
      • getInvertMatch

        public boolean getInvertMatch()
         If specified, the match result will be inverted before checking. Defaults to false.
        
         Examples:
        
         * The regex ``\d{3}`` does not match the value ``1234``, so it will match when inverted.
         * The range [-10,0) will match the value -1, so it will not match when inverted.
         
        bool invert_match = 8;
        Specified by:
        getInvertMatch in interface HeaderMatcherOrBuilder
        Returns:
        The invertMatch.
      • getTreatMissingHeaderAsEmpty

        public boolean getTreatMissingHeaderAsEmpty()
         If specified, for any header match rule, if the header match rule specified header
         does not exist, this header value will be treated as empty. Defaults to false.
        
         Examples:
        
         * The header match rule specified header "header1" to range match of [0, 10],
         :ref:`invert_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.invert_match>`
         is set to true and :ref:`treat_missing_header_as_empty <envoy_v3_api_field_config.route.v3.HeaderMatcher.treat_missing_header_as_empty>`
         is set to true; The "header1" header is not present. The match rule will
         treat the "header1" as an empty header. The empty header does not match the range,
         so it will match when inverted.
         * The header match rule specified header "header2" to range match of [0, 10],
         :ref:`invert_match <envoy_v3_api_field_config.route.v3.HeaderMatcher.invert_match>`
         is set to true and :ref:`treat_missing_header_as_empty <envoy_v3_api_field_config.route.v3.HeaderMatcher.treat_missing_header_as_empty>`
         is set to false; The "header2" header is not present and the header
         matcher rule for "header2" will be ignored so it will not match.
         * The header match rule specified header "header3" to a string regex match
         ``^$`` which means an empty string, and
         :ref:`treat_missing_header_as_empty <envoy_v3_api_field_config.route.v3.HeaderMatcher.treat_missing_header_as_empty>`
         is set to true; The "header3" header is not present.
         The match rule will treat the "header3" header as an empty header so it will match.
         * The header match rule specified header "header4" to a string regex match
         ``^$`` which means an empty string, and
         :ref:`treat_missing_header_as_empty <envoy_v3_api_field_config.route.v3.HeaderMatcher.treat_missing_header_as_empty>`
         is set to false; The "header4" header is not present.
         The match rule for "header4" will be ignored so it will not match.
         
        bool treat_missing_header_as_empty = 14;
        Specified by:
        getTreatMissingHeaderAsEmpty in interface HeaderMatcherOrBuilder
        Returns:
        The treatMissingHeaderAsEmpty.
      • isInitialized

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

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

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

        public boolean equals​(java.lang.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 HeaderMatcher parseFrom​(java.nio.ByteBuffer data)
                                       throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

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

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

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

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

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

        public static HeaderMatcher parseFrom​(java.io.InputStream input)
                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

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

        public static HeaderMatcher parseDelimitedFrom​(java.io.InputStream input)
                                                throws java.io.IOException
        Throws:
        java.io.IOException
      • parseDelimitedFrom

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

        public static HeaderMatcher parseFrom​(com.google.protobuf.CodedInputStream input)
                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

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

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

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

        protected HeaderMatcher.Builder newBuilderForType​(com.google.protobuf.AbstractMessage.BuilderParent parent)
        Overrides:
        newBuilderForType in class com.google.protobuf.AbstractMessage
      • getDefaultInstance

        public static HeaderMatcher getDefaultInstance()
      • parser

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

        public com.google.protobuf.Parser<HeaderMatcher> 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.GeneratedMessage
      • getDefaultInstanceForType

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