Class HeaderMatcher.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<HeaderMatcher.Builder>
com.google.protobuf.GeneratedMessage.Builder<HeaderMatcher.Builder>
io.envoyproxy.envoy.config.route.v3.HeaderMatcher.Builder
All Implemented Interfaces:
com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, HeaderMatcherOrBuilder, Cloneable
Enclosing class:
HeaderMatcher

public static final class HeaderMatcher.Builder extends com.google.protobuf.GeneratedMessage.Builder<HeaderMatcher.Builder> 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
  • Field Details

  • Constructor Details

    • Builder

      private Builder()
    • Builder

      private Builder(com.google.protobuf.AbstractMessage.BuilderParent parent)
  • Method Details

    • 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.Builder<HeaderMatcher.Builder>
    • clear

      public HeaderMatcher.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.GeneratedMessage.Builder<HeaderMatcher.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.GeneratedMessage.Builder<HeaderMatcher.Builder>
    • getDefaultInstanceForType

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

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

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

      private void buildPartial0(HeaderMatcher result)
    • buildPartialOneofs

      private void buildPartialOneofs(HeaderMatcher result)
    • mergeFrom

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

      public HeaderMatcher.Builder mergeFrom(HeaderMatcher other)
    • isInitialized

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

      public HeaderMatcher.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<HeaderMatcher.Builder>
      Throws:
      IOException
    • getHeaderMatchSpecifierCase

      public HeaderMatcher.HeaderMatchSpecifierCase getHeaderMatchSpecifierCase()
      Specified by:
      getHeaderMatchSpecifierCase in interface HeaderMatcherOrBuilder
    • clearHeaderMatchSpecifier

      public HeaderMatcher.Builder clearHeaderMatchSpecifier()
    • getName

      public 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.
    • setName

      public HeaderMatcher.Builder setName(String value)
       Specifies the name of the header in the request.
       
      string name = 1 [(.validate.rules) = { ... }
      Parameters:
      value - The name to set.
      Returns:
      This builder for chaining.
    • clearName

      public HeaderMatcher.Builder clearName()
       Specifies the name of the header in the request.
       
      string name = 1 [(.validate.rules) = { ... }
      Returns:
      This builder for chaining.
    • setNameBytes

      public HeaderMatcher.Builder setNameBytes(com.google.protobuf.ByteString value)
       Specifies the name of the header in the request.
       
      string name = 1 [(.validate.rules) = { ... }
      Parameters:
      value - The bytes for name to set.
      Returns:
      This builder for chaining.
    • 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 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.
    • setExactMatch

      @Deprecated public HeaderMatcher.Builder setExactMatch(String value)
      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"];
      Parameters:
      value - The exactMatch to set.
      Returns:
      This builder for chaining.
    • clearExactMatch

      @Deprecated public HeaderMatcher.Builder clearExactMatch()
      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"];
      Returns:
      This builder for chaining.
    • setExactMatchBytes

      @Deprecated public HeaderMatcher.Builder setExactMatchBytes(com.google.protobuf.ByteString value)
      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"];
      Parameters:
      value - The bytes for exactMatch to set.
      Returns:
      This builder for chaining.
    • 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.
    • setSafeRegexMatch

      @Deprecated public HeaderMatcher.Builder setSafeRegexMatch(RegexMatcher value)
      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"];
    • setSafeRegexMatch

      @Deprecated public HeaderMatcher.Builder setSafeRegexMatch(RegexMatcher.Builder builderForValue)
      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"];
    • mergeSafeRegexMatch

      @Deprecated public HeaderMatcher.Builder mergeSafeRegexMatch(RegexMatcher value)
      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"];
    • clearSafeRegexMatch

      @Deprecated public HeaderMatcher.Builder clearSafeRegexMatch()
      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"];
    • getSafeRegexMatchBuilder

      @Deprecated public RegexMatcher.Builder getSafeRegexMatchBuilder()
      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"];
    • 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
    • getSafeRegexMatchFieldBuilder

      private com.google.protobuf.SingleFieldBuilder<RegexMatcher,RegexMatcher.Builder,RegexMatcherOrBuilder> getSafeRegexMatchFieldBuilder()
       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"];
    • 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.
    • setRangeMatch

      public HeaderMatcher.Builder setRangeMatch(Int64Range value)
       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;
    • setRangeMatch

      public HeaderMatcher.Builder setRangeMatch(Int64Range.Builder builderForValue)
       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;
    • mergeRangeMatch

      public HeaderMatcher.Builder mergeRangeMatch(Int64Range value)
       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;
    • clearRangeMatch

      public HeaderMatcher.Builder clearRangeMatch()
       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;
    • getRangeMatchBuilder

      public Int64Range.Builder getRangeMatchBuilder()
       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;
    • 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
    • getRangeMatchFieldBuilder

      private com.google.protobuf.SingleFieldBuilder<Int64Range,Int64Range.Builder,Int64RangeOrBuilder> getRangeMatchFieldBuilder()
       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;
    • 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.
    • setPresentMatch

      public HeaderMatcher.Builder setPresentMatch(boolean value)
       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;
      Parameters:
      value - The presentMatch to set.
      Returns:
      This builder for chaining.
    • clearPresentMatch

      public HeaderMatcher.Builder clearPresentMatch()
       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;
      Returns:
      This builder for chaining.
    • 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 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.
    • setPrefixMatch

      @Deprecated public HeaderMatcher.Builder setPrefixMatch(String value)
      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) = { ... }
      Parameters:
      value - The prefixMatch to set.
      Returns:
      This builder for chaining.
    • clearPrefixMatch

      @Deprecated public HeaderMatcher.Builder clearPrefixMatch()
      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) = { ... }
      Returns:
      This builder for chaining.
    • setPrefixMatchBytes

      @Deprecated public HeaderMatcher.Builder setPrefixMatchBytes(com.google.protobuf.ByteString value)
      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) = { ... }
      Parameters:
      value - The bytes for prefixMatch to set.
      Returns:
      This builder for chaining.
    • 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 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.
    • setSuffixMatch

      @Deprecated public HeaderMatcher.Builder setSuffixMatch(String value)
      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) = { ... }
      Parameters:
      value - The suffixMatch to set.
      Returns:
      This builder for chaining.
    • clearSuffixMatch

      @Deprecated public HeaderMatcher.Builder clearSuffixMatch()
      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) = { ... }
      Returns:
      This builder for chaining.
    • setSuffixMatchBytes

      @Deprecated public HeaderMatcher.Builder setSuffixMatchBytes(com.google.protobuf.ByteString value)
      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) = { ... }
      Parameters:
      value - The bytes for suffixMatch to set.
      Returns:
      This builder for chaining.
    • 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 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.
    • setContainsMatch

      @Deprecated public HeaderMatcher.Builder setContainsMatch(String value)
      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) = { ... }
      Parameters:
      value - The containsMatch to set.
      Returns:
      This builder for chaining.
    • clearContainsMatch

      @Deprecated public HeaderMatcher.Builder clearContainsMatch()
      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) = { ... }
      Returns:
      This builder for chaining.
    • setContainsMatchBytes

      @Deprecated public HeaderMatcher.Builder setContainsMatchBytes(com.google.protobuf.ByteString value)
      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) = { ... }
      Parameters:
      value - The bytes for containsMatch to set.
      Returns:
      This builder for chaining.
    • 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.
    • setStringMatch

      public HeaderMatcher.Builder setStringMatch(StringMatcher value)
       If specified, header match will be performed based on the string match of the header value.
       
      .envoy.type.matcher.v3.StringMatcher string_match = 13;
    • setStringMatch

      public HeaderMatcher.Builder setStringMatch(StringMatcher.Builder builderForValue)
       If specified, header match will be performed based on the string match of the header value.
       
      .envoy.type.matcher.v3.StringMatcher string_match = 13;
    • mergeStringMatch

      public HeaderMatcher.Builder mergeStringMatch(StringMatcher value)
       If specified, header match will be performed based on the string match of the header value.
       
      .envoy.type.matcher.v3.StringMatcher string_match = 13;
    • clearStringMatch

      public HeaderMatcher.Builder clearStringMatch()
       If specified, header match will be performed based on the string match of the header value.
       
      .envoy.type.matcher.v3.StringMatcher string_match = 13;
    • getStringMatchBuilder

      public StringMatcher.Builder getStringMatchBuilder()
       If specified, header match will be performed based on the string match of the header value.
       
      .envoy.type.matcher.v3.StringMatcher string_match = 13;
    • getStringMatchOrBuilder

      public StringMatcherOrBuilder getStringMatchOrBuilder()
       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:
      getStringMatchOrBuilder in interface HeaderMatcherOrBuilder
    • getStringMatchFieldBuilder

      private com.google.protobuf.SingleFieldBuilder<StringMatcher,StringMatcher.Builder,StringMatcherOrBuilder> getStringMatchFieldBuilder()
       If specified, header match will be performed based on the string match of the header value.
       
      .envoy.type.matcher.v3.StringMatcher string_match = 13;
    • 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.
    • setInvertMatch

      public HeaderMatcher.Builder setInvertMatch(boolean value)
       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;
      Parameters:
      value - The invertMatch to set.
      Returns:
      This builder for chaining.
    • clearInvertMatch

      public HeaderMatcher.Builder clearInvertMatch()
       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;
      Returns:
      This builder for chaining.
    • 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.
    • setTreatMissingHeaderAsEmpty

      public HeaderMatcher.Builder setTreatMissingHeaderAsEmpty(boolean value)
       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;
      Parameters:
      value - The treatMissingHeaderAsEmpty to set.
      Returns:
      This builder for chaining.
    • clearTreatMissingHeaderAsEmpty

      public HeaderMatcher.Builder clearTreatMissingHeaderAsEmpty()
       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;
      Returns:
      This builder for chaining.