// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: envoy/api/v2/route/route_components.proto
package io.envoyproxy.envoy.api.v2.route;
public interface HeaderMatcherOrBuilder extends
// @@protoc_insertion_point(interface_extends:envoy.api.v2.route.HeaderMatcher)
com.google.protobuf.MessageOrBuilder {
/**
*
* Specifies the name of the header in the request.
*
*
* string name = 1 [(.validate.rules) = { ... }
* @return The name.
*/
java.lang.String getName();
/**
*
* Specifies the name of the header in the request.
*
*
* string name = 1 [(.validate.rules) = { ... }
* @return The bytes for name.
*/
com.google.protobuf.ByteString
getNameBytes();
/**
*
* If specified, header match will be performed based on the value of the header.
*
*
* string exact_match = 4;
* @return Whether the exactMatch field is set.
*/
boolean hasExactMatch();
/**
*
* If specified, header match will be performed based on the value of the header.
*
*
* string exact_match = 4;
* @return The exactMatch.
*/
java.lang.String getExactMatch();
/**
*
* If specified, header match will be performed based on the value of the header.
*
*
* string exact_match = 4;
* @return The bytes for exactMatch.
*/
com.google.protobuf.ByteString
getExactMatchBytes();
/**
*
* 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. The regex grammar used in the value field is defined
* `here <https://en.cppreference.com/w/cpp/regex/ecmascript>`_.
* Examples:
* * The regex ``\d{3}`` matches the value *123*
* * The regex ``\d{3}`` does not match the value *1234*
* * The regex ``\d{3}`` does not match the value *123.456*
* .. attention::
* This field has been deprecated in favor of `safe_regex_match` as it is not safe for use
* with untrusted input in all cases.
*
*
* string regex_match = 5 [deprecated = true, (.validate.rules) = { ... }
* @deprecated envoy.api.v2.route.HeaderMatcher.regex_match is deprecated.
* See envoy/api/v2/route/route_components.proto;l=1542
* @return Whether the regexMatch field is set.
*/
@java.lang.Deprecated boolean hasRegexMatch();
/**
*
* 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. The regex grammar used in the value field is defined
* `here <https://en.cppreference.com/w/cpp/regex/ecmascript>`_.
* Examples:
* * The regex ``\d{3}`` matches the value *123*
* * The regex ``\d{3}`` does not match the value *1234*
* * The regex ``\d{3}`` does not match the value *123.456*
* .. attention::
* This field has been deprecated in favor of `safe_regex_match` as it is not safe for use
* with untrusted input in all cases.
*
*
* string regex_match = 5 [deprecated = true, (.validate.rules) = { ... }
* @deprecated envoy.api.v2.route.HeaderMatcher.regex_match is deprecated.
* See envoy/api/v2/route/route_components.proto;l=1542
* @return The regexMatch.
*/
@java.lang.Deprecated java.lang.String getRegexMatch();
/**
*
* 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. The regex grammar used in the value field is defined
* `here <https://en.cppreference.com/w/cpp/regex/ecmascript>`_.
* Examples:
* * The regex ``\d{3}`` matches the value *123*
* * The regex ``\d{3}`` does not match the value *1234*
* * The regex ``\d{3}`` does not match the value *123.456*
* .. attention::
* This field has been deprecated in favor of `safe_regex_match` as it is not safe for use
* with untrusted input in all cases.
*
*
* string regex_match = 5 [deprecated = true, (.validate.rules) = { ... }
* @deprecated envoy.api.v2.route.HeaderMatcher.regex_match is deprecated.
* See envoy/api/v2/route/route_components.proto;l=1542
* @return The bytes for regexMatch.
*/
@java.lang.Deprecated com.google.protobuf.ByteString
getRegexMatchBytes();
/**
*
* 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.
*
*
* .envoy.type.matcher.RegexMatcher safe_regex_match = 11;
* @return Whether the safeRegexMatch field is set.
*/
boolean hasSafeRegexMatch();
/**
*
* 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.
*
*
* .envoy.type.matcher.RegexMatcher safe_regex_match = 11;
* @return The safeRegexMatch.
*/
io.envoyproxy.envoy.type.matcher.RegexMatcher getSafeRegexMatch();
/**
*
* 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.
*
*
* .envoy.type.matcher.RegexMatcher safe_regex_match = 11;
*/
io.envoyproxy.envoy.type.matcher.RegexMatcherOrBuilder getSafeRegexMatchOrBuilder();
/**
*
* 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.Int64Range range_match = 6;
* @return Whether the rangeMatch field is set.
*/
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.Int64Range range_match = 6;
* @return The rangeMatch.
*/
io.envoyproxy.envoy.type.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.Int64Range range_match = 6;
*/
io.envoyproxy.envoy.type.Int64RangeOrBuilder getRangeMatchOrBuilder();
/**
*
* If specified, header match will be performed based on whether the header is in the
* request.
*
*
* bool present_match = 7;
* @return Whether the presentMatch field is set.
*/
boolean hasPresentMatch();
/**
*
* If specified, header match will be performed based on whether the header is in the
* request.
*
*
* bool present_match = 7;
* @return The presentMatch.
*/
boolean getPresentMatch();
/**
*
* 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.
* Examples:
* * The prefix *abcd* matches the value *abcdxyz*, but not for *abcxyz*.
*
*
* string prefix_match = 9 [(.validate.rules) = { ... }
* @return Whether the prefixMatch field is set.
*/
boolean hasPrefixMatch();
/**
*
* 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.
* Examples:
* * The prefix *abcd* matches the value *abcdxyz*, but not for *abcxyz*.
*
*
* string prefix_match = 9 [(.validate.rules) = { ... }
* @return The prefixMatch.
*/
java.lang.String getPrefixMatch();
/**
*
* 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.
* Examples:
* * The prefix *abcd* matches the value *abcdxyz*, but not for *abcxyz*.
*
*
* string prefix_match = 9 [(.validate.rules) = { ... }
* @return The bytes for prefixMatch.
*/
com.google.protobuf.ByteString
getPrefixMatchBytes();
/**
*
* 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.
* Examples:
* * The suffix *abcd* matches the value *xyzabcd*, but not for *xyzbcd*.
*
*
* string suffix_match = 10 [(.validate.rules) = { ... }
* @return Whether the suffixMatch field is set.
*/
boolean hasSuffixMatch();
/**
*
* 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.
* Examples:
* * The suffix *abcd* matches the value *xyzabcd*, but not for *xyzbcd*.
*
*
* string suffix_match = 10 [(.validate.rules) = { ... }
* @return The suffixMatch.
*/
java.lang.String getSuffixMatch();
/**
*
* 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.
* Examples:
* * The suffix *abcd* matches the value *xyzabcd*, but not for *xyzbcd*.
*
*
* string suffix_match = 10 [(.validate.rules) = { ... }
* @return The bytes for suffixMatch.
*/
com.google.protobuf.ByteString
getSuffixMatchBytes();
/**
*
* 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;
* @return The invertMatch.
*/
boolean getInvertMatch();
public io.envoyproxy.envoy.api.v2.route.HeaderMatcher.HeaderMatchSpecifierCase getHeaderMatchSpecifierCase();
}