Class HttpRouteRuleMatch (1.53.0)

public final class HttpRouteRuleMatch extends GeneratedMessageV3 implements HttpRouteRuleMatchOrBuilder

HttpRouteRuleMatch specifies a set of criteria for matching requests to an HttpRouteRule. All specified criteria must be satisfied for a match to occur.

Protobuf type google.cloud.compute.v1.HttpRouteRuleMatch

Static Fields

FULL_PATH_MATCH_FIELD_NUMBER

public static final int FULL_PATH_MATCH_FIELD_NUMBER
Field Value
Type Description
int

HEADER_MATCHES_FIELD_NUMBER

public static final int HEADER_MATCHES_FIELD_NUMBER
Field Value
Type Description
int

IGNORE_CASE_FIELD_NUMBER

public static final int IGNORE_CASE_FIELD_NUMBER
Field Value
Type Description
int

METADATA_FILTERS_FIELD_NUMBER

public static final int METADATA_FILTERS_FIELD_NUMBER
Field Value
Type Description
int

PATH_TEMPLATE_MATCH_FIELD_NUMBER

public static final int PATH_TEMPLATE_MATCH_FIELD_NUMBER
Field Value
Type Description
int

PREFIX_MATCH_FIELD_NUMBER

public static final int PREFIX_MATCH_FIELD_NUMBER
Field Value
Type Description
int

QUERY_PARAMETER_MATCHES_FIELD_NUMBER

public static final int QUERY_PARAMETER_MATCHES_FIELD_NUMBER
Field Value
Type Description
int

REGEX_MATCH_FIELD_NUMBER

public static final int REGEX_MATCH_FIELD_NUMBER
Field Value
Type Description
int

Static Methods

getDefaultInstance()

public static HttpRouteRuleMatch getDefaultInstance()
Returns
Type Description
HttpRouteRuleMatch

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
Type Description
Descriptor

newBuilder()

public static HttpRouteRuleMatch.Builder newBuilder()
Returns
Type Description
HttpRouteRuleMatch.Builder

newBuilder(HttpRouteRuleMatch prototype)

public static HttpRouteRuleMatch.Builder newBuilder(HttpRouteRuleMatch prototype)
Parameter
Name Description
prototype HttpRouteRuleMatch
Returns
Type Description
HttpRouteRuleMatch.Builder

parseDelimitedFrom(InputStream input)

public static HttpRouteRuleMatch parseDelimitedFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
HttpRouteRuleMatch
Exceptions
Type Description
IOException

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static HttpRouteRuleMatch parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
HttpRouteRuleMatch
Exceptions
Type Description
IOException

parseFrom(byte[] data)

public static HttpRouteRuleMatch parseFrom(byte[] data)
Parameter
Name Description
data byte[]
Returns
Type Description
HttpRouteRuleMatch
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

public static HttpRouteRuleMatch parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data byte[]
extensionRegistry ExtensionRegistryLite
Returns
Type Description
HttpRouteRuleMatch
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data)

public static HttpRouteRuleMatch parseFrom(ByteString data)
Parameter
Name Description
data ByteString
Returns
Type Description
HttpRouteRuleMatch
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)

public static HttpRouteRuleMatch parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteString
extensionRegistry ExtensionRegistryLite
Returns
Type Description
HttpRouteRuleMatch
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(CodedInputStream input)

public static HttpRouteRuleMatch parseFrom(CodedInputStream input)
Parameter
Name Description
input CodedInputStream
Returns
Type Description
HttpRouteRuleMatch
Exceptions
Type Description
IOException

parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public static HttpRouteRuleMatch parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input CodedInputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
HttpRouteRuleMatch
Exceptions
Type Description
IOException

parseFrom(InputStream input)

public static HttpRouteRuleMatch parseFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
HttpRouteRuleMatch
Exceptions
Type Description
IOException

parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static HttpRouteRuleMatch parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
HttpRouteRuleMatch
Exceptions
Type Description
IOException

parseFrom(ByteBuffer data)

public static HttpRouteRuleMatch parseFrom(ByteBuffer data)
Parameter
Name Description
data ByteBuffer
Returns
Type Description
HttpRouteRuleMatch
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)

public static HttpRouteRuleMatch parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteBuffer
extensionRegistry ExtensionRegistryLite
Returns
Type Description
HttpRouteRuleMatch
Exceptions
Type Description
InvalidProtocolBufferException

parser()

public static Parser<HttpRouteRuleMatch> parser()
Returns
Type Description
Parser<HttpRouteRuleMatch>

Methods

equals(Object obj)

public boolean equals(Object obj)
Parameter
Name Description
obj Object
Returns
Type Description
boolean
Overrides

getDefaultInstanceForType()

public HttpRouteRuleMatch getDefaultInstanceForType()
Returns
Type Description
HttpRouteRuleMatch

getFullPathMatch()

public String getFullPathMatch()

For satisfying the matchRule condition, the path of the request must exactly match the value specified in fullPathMatch after removing any query parameters and anchor that may be part of the original URL. fullPathMatch must be from 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified.

optional string full_path_match = 214598875;

Returns
Type Description
String

The fullPathMatch.

getFullPathMatchBytes()

public ByteString getFullPathMatchBytes()

For satisfying the matchRule condition, the path of the request must exactly match the value specified in fullPathMatch after removing any query parameters and anchor that may be part of the original URL. fullPathMatch must be from 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified.

optional string full_path_match = 214598875;

Returns
Type Description
ByteString

The bytes for fullPathMatch.

getHeaderMatches(int index)

public HttpHeaderMatch getHeaderMatches(int index)

Specifies a list of header match criteria, all of which must match corresponding headers in the request.

repeated .google.cloud.compute.v1.HttpHeaderMatch header_matches = 361903489;

Parameter
Name Description
index int
Returns
Type Description
HttpHeaderMatch

getHeaderMatchesCount()

public int getHeaderMatchesCount()

Specifies a list of header match criteria, all of which must match corresponding headers in the request.

repeated .google.cloud.compute.v1.HttpHeaderMatch header_matches = 361903489;

Returns
Type Description
int

getHeaderMatchesList()

public List<HttpHeaderMatch> getHeaderMatchesList()

Specifies a list of header match criteria, all of which must match corresponding headers in the request.

repeated .google.cloud.compute.v1.HttpHeaderMatch header_matches = 361903489;

Returns
Type Description
List<HttpHeaderMatch>

getHeaderMatchesOrBuilder(int index)

public HttpHeaderMatchOrBuilder getHeaderMatchesOrBuilder(int index)

Specifies a list of header match criteria, all of which must match corresponding headers in the request.

repeated .google.cloud.compute.v1.HttpHeaderMatch header_matches = 361903489;

Parameter
Name Description
index int
Returns
Type Description
HttpHeaderMatchOrBuilder

getHeaderMatchesOrBuilderList()

public List<? extends HttpHeaderMatchOrBuilder> getHeaderMatchesOrBuilderList()

Specifies a list of header match criteria, all of which must match corresponding headers in the request.

repeated .google.cloud.compute.v1.HttpHeaderMatch header_matches = 361903489;

Returns
Type Description
List<? extends com.google.cloud.compute.v1.HttpHeaderMatchOrBuilder>

getIgnoreCase()

public boolean getIgnoreCase()

Specifies that prefixMatch and fullPathMatch matches are case sensitive. The default value is false. ignoreCase must not be used with regexMatch. Not supported when the URL map is bound to a target gRPC proxy.

optional bool ignore_case = 464324989;

Returns
Type Description
boolean

The ignoreCase.

getMetadataFilters(int index)

public MetadataFilter getMetadataFilters(int index)

Opaque filter criteria used by the load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to the load balancer, xDS clients present node metadata. When there is a match, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadata filters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here is applied after those specified in ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to. metadataFilters only applies to load balancers that have loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.

repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;

Parameter
Name Description
index int
Returns
Type Description
MetadataFilter

getMetadataFiltersCount()

public int getMetadataFiltersCount()

Opaque filter criteria used by the load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to the load balancer, xDS clients present node metadata. When there is a match, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadata filters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here is applied after those specified in ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to. metadataFilters only applies to load balancers that have loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.

repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;

Returns
Type Description
int

getMetadataFiltersList()

public List<MetadataFilter> getMetadataFiltersList()

Opaque filter criteria used by the load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to the load balancer, xDS clients present node metadata. When there is a match, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadata filters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here is applied after those specified in ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to. metadataFilters only applies to load balancers that have loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.

repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;

Returns
Type Description
List<MetadataFilter>

getMetadataFiltersOrBuilder(int index)

public MetadataFilterOrBuilder getMetadataFiltersOrBuilder(int index)

Opaque filter criteria used by the load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to the load balancer, xDS clients present node metadata. When there is a match, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadata filters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here is applied after those specified in ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to. metadataFilters only applies to load balancers that have loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.

repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;

Parameter
Name Description
index int
Returns
Type Description
MetadataFilterOrBuilder

getMetadataFiltersOrBuilderList()

public List<? extends MetadataFilterOrBuilder> getMetadataFiltersOrBuilderList()

Opaque filter criteria used by the load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to the load balancer, xDS clients present node metadata. When there is a match, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadata filters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here is applied after those specified in ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to. metadataFilters only applies to load balancers that have loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.

repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;

Returns
Type Description
List<? extends com.google.cloud.compute.v1.MetadataFilterOrBuilder>

getParserForType()

public Parser<HttpRouteRuleMatch> getParserForType()
Returns
Type Description
Parser<HttpRouteRuleMatch>
Overrides

getPathTemplateMatch()

public String getPathTemplateMatch()

If specified, the route is a pattern match expression that must match the :path header once the query string is removed. A pattern match allows you to match - The value must be between 1 and 1024 characters - The pattern must start with a leading slash ("/") - There may be no more than 5 operators in pattern Precisely one of prefix_match, full_path_match, regex_match or path_template_match must be set.

optional string path_template_match = 292348186;

Returns
Type Description
String

The pathTemplateMatch.

getPathTemplateMatchBytes()

public ByteString getPathTemplateMatchBytes()

If specified, the route is a pattern match expression that must match the :path header once the query string is removed. A pattern match allows you to match - The value must be between 1 and 1024 characters - The pattern must start with a leading slash ("/") - There may be no more than 5 operators in pattern Precisely one of prefix_match, full_path_match, regex_match or path_template_match must be set.

optional string path_template_match = 292348186;

Returns
Type Description
ByteString

The bytes for pathTemplateMatch.

getPrefixMatch()

public String getPrefixMatch()

For satisfying the matchRule condition, the request's path must begin with the specified prefixMatch. prefixMatch must begin with a /. The value must be from 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified.

optional string prefix_match = 257898968;

Returns
Type Description
String

The prefixMatch.

getPrefixMatchBytes()

public ByteString getPrefixMatchBytes()

For satisfying the matchRule condition, the request's path must begin with the specified prefixMatch. prefixMatch must begin with a /. The value must be from 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified.

optional string prefix_match = 257898968;

Returns
Type Description
ByteString

The bytes for prefixMatch.

getQueryParameterMatches(int index)

public HttpQueryParameterMatch getQueryParameterMatches(int index)

Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Not supported when the URL map is bound to a target gRPC proxy.

repeated .google.cloud.compute.v1.HttpQueryParameterMatch query_parameter_matches = 286231270;

Parameter
Name Description
index int
Returns
Type Description
HttpQueryParameterMatch

getQueryParameterMatchesCount()

public int getQueryParameterMatchesCount()

Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Not supported when the URL map is bound to a target gRPC proxy.

repeated .google.cloud.compute.v1.HttpQueryParameterMatch query_parameter_matches = 286231270;

Returns
Type Description
int

getQueryParameterMatchesList()

public List<HttpQueryParameterMatch> getQueryParameterMatchesList()

Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Not supported when the URL map is bound to a target gRPC proxy.

repeated .google.cloud.compute.v1.HttpQueryParameterMatch query_parameter_matches = 286231270;

Returns
Type Description
List<HttpQueryParameterMatch>

getQueryParameterMatchesOrBuilder(int index)

public HttpQueryParameterMatchOrBuilder getQueryParameterMatchesOrBuilder(int index)

Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Not supported when the URL map is bound to a target gRPC proxy.

repeated .google.cloud.compute.v1.HttpQueryParameterMatch query_parameter_matches = 286231270;

Parameter
Name Description
index int
Returns
Type Description
HttpQueryParameterMatchOrBuilder

getQueryParameterMatchesOrBuilderList()

public List<? extends HttpQueryParameterMatchOrBuilder> getQueryParameterMatchesOrBuilderList()

Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Not supported when the URL map is bound to a target gRPC proxy.

repeated .google.cloud.compute.v1.HttpQueryParameterMatch query_parameter_matches = 286231270;

Returns
Type Description
List<? extends com.google.cloud.compute.v1.HttpQueryParameterMatchOrBuilder>

getRegexMatch()

public String getRegexMatch()

For satisfying the matchRule condition, the path of the request must satisfy the regular expression specified in regexMatch after removing any query parameters and anchor supplied with the original URL. For more information about regular expression syntax, see Syntax. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.

optional string regex_match = 107387853;

Returns
Type Description
String

The regexMatch.

getRegexMatchBytes()

public ByteString getRegexMatchBytes()

For satisfying the matchRule condition, the path of the request must satisfy the regular expression specified in regexMatch after removing any query parameters and anchor supplied with the original URL. For more information about regular expression syntax, see Syntax. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.

optional string regex_match = 107387853;

Returns
Type Description
ByteString

The bytes for regexMatch.

getSerializedSize()

public int getSerializedSize()
Returns
Type Description
int
Overrides

hasFullPathMatch()

public boolean hasFullPathMatch()

For satisfying the matchRule condition, the path of the request must exactly match the value specified in fullPathMatch after removing any query parameters and anchor that may be part of the original URL. fullPathMatch must be from 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified.

optional string full_path_match = 214598875;

Returns
Type Description
boolean

Whether the fullPathMatch field is set.

hasIgnoreCase()

public boolean hasIgnoreCase()

Specifies that prefixMatch and fullPathMatch matches are case sensitive. The default value is false. ignoreCase must not be used with regexMatch. Not supported when the URL map is bound to a target gRPC proxy.

optional bool ignore_case = 464324989;

Returns
Type Description
boolean

Whether the ignoreCase field is set.

hasPathTemplateMatch()

public boolean hasPathTemplateMatch()

If specified, the route is a pattern match expression that must match the :path header once the query string is removed. A pattern match allows you to match - The value must be between 1 and 1024 characters - The pattern must start with a leading slash ("/") - There may be no more than 5 operators in pattern Precisely one of prefix_match, full_path_match, regex_match or path_template_match must be set.

optional string path_template_match = 292348186;

Returns
Type Description
boolean

Whether the pathTemplateMatch field is set.

hasPrefixMatch()

public boolean hasPrefixMatch()

For satisfying the matchRule condition, the request's path must begin with the specified prefixMatch. prefixMatch must begin with a /. The value must be from 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified.

optional string prefix_match = 257898968;

Returns
Type Description
boolean

Whether the prefixMatch field is set.

hasRegexMatch()

public boolean hasRegexMatch()

For satisfying the matchRule condition, the path of the request must satisfy the regular expression specified in regexMatch after removing any query parameters and anchor supplied with the original URL. For more information about regular expression syntax, see Syntax. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.

optional string regex_match = 107387853;

Returns
Type Description
boolean

Whether the regexMatch field is set.

hashCode()

public int hashCode()
Returns
Type Description
int
Overrides

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
Type Description
FieldAccessorTable
Overrides

isInitialized()

public final boolean isInitialized()
Returns
Type Description
boolean
Overrides

newBuilderForType()

public HttpRouteRuleMatch.Builder newBuilderForType()
Returns
Type Description
HttpRouteRuleMatch.Builder

newBuilderForType(GeneratedMessageV3.BuilderParent parent)

protected HttpRouteRuleMatch.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter
Name Description
parent BuilderParent
Returns
Type Description
HttpRouteRuleMatch.Builder
Overrides

newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)

protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter
Name Description
unused UnusedPrivateParameter
Returns
Type Description
Object
Overrides

toBuilder()

public HttpRouteRuleMatch.Builder toBuilder()
Returns
Type Description
HttpRouteRuleMatch.Builder

writeTo(CodedOutputStream output)

public void writeTo(CodedOutputStream output)
Parameter
Name Description
output CodedOutputStream
Overrides
Exceptions
Type Description
IOException