public interface RouteMatchOrBuilder
extends com.google.protobuf.MessageOrBuilder
Modifier and Type | Method and Description |
---|---|
com.google.protobuf.BoolValue |
getCaseSensitive()
Indicates that prefix/path matching should be case sensitive.
|
com.google.protobuf.BoolValueOrBuilder |
getCaseSensitiveOrBuilder()
Indicates that prefix/path matching should be case sensitive.
|
RouteMatch.GrpcRouteMatchOptions |
getGrpc()
If specified, only gRPC requests will be matched.
|
RouteMatch.GrpcRouteMatchOptionsOrBuilder |
getGrpcOrBuilder()
If specified, only gRPC requests will be matched.
|
HeaderMatcher |
getHeaders(int index)
Specifies a set of headers that the route should match on.
|
int |
getHeadersCount()
Specifies a set of headers that the route should match on.
|
List<HeaderMatcher> |
getHeadersList()
Specifies a set of headers that the route should match on.
|
HeaderMatcherOrBuilder |
getHeadersOrBuilder(int index)
Specifies a set of headers that the route should match on.
|
List<? extends HeaderMatcherOrBuilder> |
getHeadersOrBuilderList()
Specifies a set of headers that the route should match on.
|
String |
getPath()
If specified, the route is an exact path rule meaning that the path must
exactly match the *:path* header once the query string is removed.
|
com.google.protobuf.ByteString |
getPathBytes()
If specified, the route is an exact path rule meaning that the path must
exactly match the *:path* header once the query string is removed.
|
RouteMatch.PathSpecifierCase |
getPathSpecifierCase() |
String |
getPrefix()
If specified, the route is a prefix rule meaning that the prefix must
match the beginning of the *:path* header.
|
com.google.protobuf.ByteString |
getPrefixBytes()
If specified, the route is a prefix rule meaning that the prefix must
match the beginning of the *:path* header.
|
QueryParameterMatcher |
getQueryParameters(int index)
Specifies a set of URL query parameters on which the route should
match.
|
int |
getQueryParametersCount()
Specifies a set of URL query parameters on which the route should
match.
|
List<QueryParameterMatcher> |
getQueryParametersList()
Specifies a set of URL query parameters on which the route should
match.
|
QueryParameterMatcherOrBuilder |
getQueryParametersOrBuilder(int index)
Specifies a set of URL query parameters on which the route should
match.
|
List<? extends QueryParameterMatcherOrBuilder> |
getQueryParametersOrBuilderList()
Specifies a set of URL query parameters on which the route should
match.
|
String |
getRegex()
Deprecated.
|
com.google.protobuf.ByteString |
getRegexBytes()
Deprecated.
|
RuntimeFractionalPercent |
getRuntimeFraction()
Indicates that the route should additionally match on a runtime key.
|
RuntimeFractionalPercentOrBuilder |
getRuntimeFractionOrBuilder()
Indicates that the route should additionally match on a runtime key.
|
RegexMatcher |
getSafeRegex()
If specified, the route is a regular expression rule meaning that the
regex must match the *:path* header once the query string is removed.
|
RegexMatcherOrBuilder |
getSafeRegexOrBuilder()
If specified, the route is a regular expression rule meaning that the
regex must match the *:path* header once the query string is removed.
|
RouteMatch.TlsContextMatchOptions |
getTlsContext()
If specified, the client tls context will be matched against the defined
match options.
|
RouteMatch.TlsContextMatchOptionsOrBuilder |
getTlsContextOrBuilder()
If specified, the client tls context will be matched against the defined
match options.
|
boolean |
hasCaseSensitive()
Indicates that prefix/path matching should be case sensitive.
|
boolean |
hasGrpc()
If specified, only gRPC requests will be matched.
|
boolean |
hasRuntimeFraction()
Indicates that the route should additionally match on a runtime key.
|
boolean |
hasSafeRegex()
If specified, the route is a regular expression rule meaning that the
regex must match the *:path* header once the query string is removed.
|
boolean |
hasTlsContext()
If specified, the client tls context will be matched against the defined
match options.
|
findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
String getPrefix()
If specified, the route is a prefix rule meaning that the prefix must match the beginning of the *:path* header.
string prefix = 1;
com.google.protobuf.ByteString getPrefixBytes()
If specified, the route is a prefix rule meaning that the prefix must match the beginning of the *:path* header.
string prefix = 1;
String getPath()
If specified, the route is an exact path rule meaning that the path must exactly match the *:path* header once the query string is removed.
string path = 2;
com.google.protobuf.ByteString getPathBytes()
If specified, the route is an exact path rule meaning that the path must exactly match the *:path* header once the query string is removed.
string path = 2;
@Deprecated String getRegex()
If specified, the route is a regular expression rule meaning that the regex must match the *:path* header once the query string is removed. The entire path (without the query string) must match the regex. The rule will not match if only a subsequence of the *:path* header matches the regex. The regex grammar is defined `here <https://en.cppreference.com/w/cpp/regex/ecmascript>`_. Examples: * The regex ``/b[io]t`` matches the path */bit* * The regex ``/b[io]t`` matches the path */bot* * The regex ``/b[io]t`` does not match the path */bite* * The regex ``/b[io]t`` does not match the path */bit/bot* .. attention:: This field has been deprecated in favor of `safe_regex` as it is not safe for use with untrusted input in all cases.
string regex = 3 [deprecated = true, (.validate.rules) = { ... }
@Deprecated com.google.protobuf.ByteString getRegexBytes()
If specified, the route is a regular expression rule meaning that the regex must match the *:path* header once the query string is removed. The entire path (without the query string) must match the regex. The rule will not match if only a subsequence of the *:path* header matches the regex. The regex grammar is defined `here <https://en.cppreference.com/w/cpp/regex/ecmascript>`_. Examples: * The regex ``/b[io]t`` matches the path */bit* * The regex ``/b[io]t`` matches the path */bot* * The regex ``/b[io]t`` does not match the path */bite* * The regex ``/b[io]t`` does not match the path */bit/bot* .. attention:: This field has been deprecated in favor of `safe_regex` as it is not safe for use with untrusted input in all cases.
string regex = 3 [deprecated = true, (.validate.rules) = { ... }
boolean hasSafeRegex()
If specified, the route is a regular expression rule meaning that the regex must match the *:path* header once the query string is removed. The entire path (without the query string) must match the regex. The rule will not match if only a subsequence of the *:path* header matches the regex. [#next-major-version: In the v3 API we should redo how path specification works such that we utilize StringMatcher, and additionally have consistent options around whether we strip query strings, do a case sensitive match, etc. In the interim it will be too disruptive to deprecate the existing options. We should even consider whether we want to do away with path_specifier entirely and just rely on a set of header matchers which can already match on :path, etc. The issue with that is it is unclear how to generically deal with query string stripping. This needs more thought.]
.envoy.type.matcher.RegexMatcher safe_regex = 10 [(.validate.rules) = { ... }
RegexMatcher getSafeRegex()
If specified, the route is a regular expression rule meaning that the regex must match the *:path* header once the query string is removed. The entire path (without the query string) must match the regex. The rule will not match if only a subsequence of the *:path* header matches the regex. [#next-major-version: In the v3 API we should redo how path specification works such that we utilize StringMatcher, and additionally have consistent options around whether we strip query strings, do a case sensitive match, etc. In the interim it will be too disruptive to deprecate the existing options. We should even consider whether we want to do away with path_specifier entirely and just rely on a set of header matchers which can already match on :path, etc. The issue with that is it is unclear how to generically deal with query string stripping. This needs more thought.]
.envoy.type.matcher.RegexMatcher safe_regex = 10 [(.validate.rules) = { ... }
RegexMatcherOrBuilder getSafeRegexOrBuilder()
If specified, the route is a regular expression rule meaning that the regex must match the *:path* header once the query string is removed. The entire path (without the query string) must match the regex. The rule will not match if only a subsequence of the *:path* header matches the regex. [#next-major-version: In the v3 API we should redo how path specification works such that we utilize StringMatcher, and additionally have consistent options around whether we strip query strings, do a case sensitive match, etc. In the interim it will be too disruptive to deprecate the existing options. We should even consider whether we want to do away with path_specifier entirely and just rely on a set of header matchers which can already match on :path, etc. The issue with that is it is unclear how to generically deal with query string stripping. This needs more thought.]
.envoy.type.matcher.RegexMatcher safe_regex = 10 [(.validate.rules) = { ... }
boolean hasCaseSensitive()
Indicates that prefix/path matching should be case sensitive. The default is true.
.google.protobuf.BoolValue case_sensitive = 4;
com.google.protobuf.BoolValue getCaseSensitive()
Indicates that prefix/path matching should be case sensitive. The default is true.
.google.protobuf.BoolValue case_sensitive = 4;
com.google.protobuf.BoolValueOrBuilder getCaseSensitiveOrBuilder()
Indicates that prefix/path matching should be case sensitive. The default is true.
.google.protobuf.BoolValue case_sensitive = 4;
boolean hasRuntimeFraction()
Indicates that the route should additionally match on a runtime key. Every time the route is considered for a match, it must also fall under the percentage of matches indicated by this field. For some fraction N/D, a random number in the range [0,D) is selected. If the number is <= the value of the numerator N, or if the key is not present, the default value, the router continues to evaluate the remaining match criteria. A runtime_fraction route configuration can be used to roll out route changes in a gradual manner without full code/config deploys. Refer to the :ref:`traffic shifting <config_http_conn_man_route_table_traffic_splitting_shift>` docs for additional documentation. .. note:: Parsing this field is implemented such that the runtime key's data may be represented as a FractionalPercent proto represented as JSON/YAML and may also be represented as an integer with the assumption that the value is an integral percentage out of 100. For instance, a runtime key lookup returning the value "42" would parse as a FractionalPercent whose numerator is 42 and denominator is HUNDRED. This preserves legacy semantics.
.envoy.api.v2.core.RuntimeFractionalPercent runtime_fraction = 9;
RuntimeFractionalPercent getRuntimeFraction()
Indicates that the route should additionally match on a runtime key. Every time the route is considered for a match, it must also fall under the percentage of matches indicated by this field. For some fraction N/D, a random number in the range [0,D) is selected. If the number is <= the value of the numerator N, or if the key is not present, the default value, the router continues to evaluate the remaining match criteria. A runtime_fraction route configuration can be used to roll out route changes in a gradual manner without full code/config deploys. Refer to the :ref:`traffic shifting <config_http_conn_man_route_table_traffic_splitting_shift>` docs for additional documentation. .. note:: Parsing this field is implemented such that the runtime key's data may be represented as a FractionalPercent proto represented as JSON/YAML and may also be represented as an integer with the assumption that the value is an integral percentage out of 100. For instance, a runtime key lookup returning the value "42" would parse as a FractionalPercent whose numerator is 42 and denominator is HUNDRED. This preserves legacy semantics.
.envoy.api.v2.core.RuntimeFractionalPercent runtime_fraction = 9;
RuntimeFractionalPercentOrBuilder getRuntimeFractionOrBuilder()
Indicates that the route should additionally match on a runtime key. Every time the route is considered for a match, it must also fall under the percentage of matches indicated by this field. For some fraction N/D, a random number in the range [0,D) is selected. If the number is <= the value of the numerator N, or if the key is not present, the default value, the router continues to evaluate the remaining match criteria. A runtime_fraction route configuration can be used to roll out route changes in a gradual manner without full code/config deploys. Refer to the :ref:`traffic shifting <config_http_conn_man_route_table_traffic_splitting_shift>` docs for additional documentation. .. note:: Parsing this field is implemented such that the runtime key's data may be represented as a FractionalPercent proto represented as JSON/YAML and may also be represented as an integer with the assumption that the value is an integral percentage out of 100. For instance, a runtime key lookup returning the value "42" would parse as a FractionalPercent whose numerator is 42 and denominator is HUNDRED. This preserves legacy semantics.
.envoy.api.v2.core.RuntimeFractionalPercent runtime_fraction = 9;
List<HeaderMatcher> getHeadersList()
Specifies a set of headers that the route should match on. The router will check the request’s headers against all the specified headers in the route config. A match will happen if all the headers in the route are present in the request with the same values (or based on presence if the value field is not in the config).
repeated .envoy.api.v2.route.HeaderMatcher headers = 6;
HeaderMatcher getHeaders(int index)
Specifies a set of headers that the route should match on. The router will check the request’s headers against all the specified headers in the route config. A match will happen if all the headers in the route are present in the request with the same values (or based on presence if the value field is not in the config).
repeated .envoy.api.v2.route.HeaderMatcher headers = 6;
int getHeadersCount()
Specifies a set of headers that the route should match on. The router will check the request’s headers against all the specified headers in the route config. A match will happen if all the headers in the route are present in the request with the same values (or based on presence if the value field is not in the config).
repeated .envoy.api.v2.route.HeaderMatcher headers = 6;
List<? extends HeaderMatcherOrBuilder> getHeadersOrBuilderList()
Specifies a set of headers that the route should match on. The router will check the request’s headers against all the specified headers in the route config. A match will happen if all the headers in the route are present in the request with the same values (or based on presence if the value field is not in the config).
repeated .envoy.api.v2.route.HeaderMatcher headers = 6;
HeaderMatcherOrBuilder getHeadersOrBuilder(int index)
Specifies a set of headers that the route should match on. The router will check the request’s headers against all the specified headers in the route config. A match will happen if all the headers in the route are present in the request with the same values (or based on presence if the value field is not in the config).
repeated .envoy.api.v2.route.HeaderMatcher headers = 6;
List<QueryParameterMatcher> getQueryParametersList()
Specifies a set of URL query parameters on which the route should match. The router will check the query string from the *path* header against all the specified query parameters. If the number of specified query parameters is nonzero, they all must match the *path* header's query string for a match to occur.
repeated .envoy.api.v2.route.QueryParameterMatcher query_parameters = 7;
QueryParameterMatcher getQueryParameters(int index)
Specifies a set of URL query parameters on which the route should match. The router will check the query string from the *path* header against all the specified query parameters. If the number of specified query parameters is nonzero, they all must match the *path* header's query string for a match to occur.
repeated .envoy.api.v2.route.QueryParameterMatcher query_parameters = 7;
int getQueryParametersCount()
Specifies a set of URL query parameters on which the route should match. The router will check the query string from the *path* header against all the specified query parameters. If the number of specified query parameters is nonzero, they all must match the *path* header's query string for a match to occur.
repeated .envoy.api.v2.route.QueryParameterMatcher query_parameters = 7;
List<? extends QueryParameterMatcherOrBuilder> getQueryParametersOrBuilderList()
Specifies a set of URL query parameters on which the route should match. The router will check the query string from the *path* header against all the specified query parameters. If the number of specified query parameters is nonzero, they all must match the *path* header's query string for a match to occur.
repeated .envoy.api.v2.route.QueryParameterMatcher query_parameters = 7;
QueryParameterMatcherOrBuilder getQueryParametersOrBuilder(int index)
Specifies a set of URL query parameters on which the route should match. The router will check the query string from the *path* header against all the specified query parameters. If the number of specified query parameters is nonzero, they all must match the *path* header's query string for a match to occur.
repeated .envoy.api.v2.route.QueryParameterMatcher query_parameters = 7;
boolean hasGrpc()
If specified, only gRPC requests will be matched. The router will check that the content-type header has a application/grpc or one of the various application/grpc+ values.
.envoy.api.v2.route.RouteMatch.GrpcRouteMatchOptions grpc = 8;
RouteMatch.GrpcRouteMatchOptions getGrpc()
If specified, only gRPC requests will be matched. The router will check that the content-type header has a application/grpc or one of the various application/grpc+ values.
.envoy.api.v2.route.RouteMatch.GrpcRouteMatchOptions grpc = 8;
RouteMatch.GrpcRouteMatchOptionsOrBuilder getGrpcOrBuilder()
If specified, only gRPC requests will be matched. The router will check that the content-type header has a application/grpc or one of the various application/grpc+ values.
.envoy.api.v2.route.RouteMatch.GrpcRouteMatchOptions grpc = 8;
boolean hasTlsContext()
If specified, the client tls context will be matched against the defined match options. [#next-major-version: unify with RBAC]
.envoy.api.v2.route.RouteMatch.TlsContextMatchOptions tls_context = 11;
RouteMatch.TlsContextMatchOptions getTlsContext()
If specified, the client tls context will be matched against the defined match options. [#next-major-version: unify with RBAC]
.envoy.api.v2.route.RouteMatch.TlsContextMatchOptions tls_context = 11;
RouteMatch.TlsContextMatchOptionsOrBuilder getTlsContextOrBuilder()
If specified, the client tls context will be matched against the defined match options. [#next-major-version: unify with RBAC]
.envoy.api.v2.route.RouteMatch.TlsContextMatchOptions tls_context = 11;
RouteMatch.PathSpecifierCase getPathSpecifierCase()
Copyright © 2018–2021 The Envoy Project. All rights reserved.