Class HttpHeaderMatch (1.64.0)

public final class HttpHeaderMatch extends GeneratedMessageV3 implements HttpHeaderMatchOrBuilder

matchRule criteria for request header matches.

Protobuf type google.cloud.compute.v1.HttpHeaderMatch

Static Fields

EXACT_MATCH_FIELD_NUMBER

public static final int EXACT_MATCH_FIELD_NUMBER
Field Value
Type Description
int

HEADER_NAME_FIELD_NUMBER

public static final int HEADER_NAME_FIELD_NUMBER
Field Value
Type Description
int

INVERT_MATCH_FIELD_NUMBER

public static final int INVERT_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

PRESENT_MATCH_FIELD_NUMBER

public static final int PRESENT_MATCH_FIELD_NUMBER
Field Value
Type Description
int

RANGE_MATCH_FIELD_NUMBER

public static final int RANGE_MATCH_FIELD_NUMBER
Field Value
Type Description
int

REGEX_MATCH_FIELD_NUMBER

public static final int REGEX_MATCH_FIELD_NUMBER
Field Value
Type Description
int

SUFFIX_MATCH_FIELD_NUMBER

public static final int SUFFIX_MATCH_FIELD_NUMBER
Field Value
Type Description
int

Static Methods

getDefaultInstance()

public static HttpHeaderMatch getDefaultInstance()
Returns
Type Description
HttpHeaderMatch

getDescriptor()

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

newBuilder()

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

newBuilder(HttpHeaderMatch prototype)

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

parseDelimitedFrom(InputStream input)

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

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

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

parseFrom(byte[] data)

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

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

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

parseFrom(ByteString data)

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

parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)

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

parseFrom(CodedInputStream input)

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

parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

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

parseFrom(InputStream input)

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

parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

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

parseFrom(ByteBuffer data)

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

parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)

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

parser()

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

Methods

equals(Object obj)

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

getDefaultInstanceForType()

public HttpHeaderMatch getDefaultInstanceForType()
Returns
Type Description
HttpHeaderMatch

getExactMatch()

public String getExactMatch()

The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

optional string exact_match = 457641093;

Returns
Type Description
String

The exactMatch.

getExactMatchBytes()

public ByteString getExactMatchBytes()

The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

optional string exact_match = 457641093;

Returns
Type Description
ByteString

The bytes for exactMatch.

getHeaderName()

public String getHeaderName()

The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.

optional string header_name = 110223613;

Returns
Type Description
String

The headerName.

getHeaderNameBytes()

public ByteString getHeaderNameBytes()

The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.

optional string header_name = 110223613;

Returns
Type Description
ByteString

The bytes for headerName.

getInvertMatch()

public boolean getInvertMatch()

If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.

optional bool invert_match = 501130268;

Returns
Type Description
boolean

The invertMatch.

getParserForType()

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

getPrefixMatch()

public String getPrefixMatch()

The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

optional string prefix_match = 257898968;

Returns
Type Description
String

The prefixMatch.

getPrefixMatchBytes()

public ByteString getPrefixMatchBytes()

The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

optional string prefix_match = 257898968;

Returns
Type Description
ByteString

The bytes for prefixMatch.

getPresentMatch()

public boolean getPresentMatch()

A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

optional bool present_match = 67435841;

Returns
Type Description
boolean

The presentMatch.

getRangeMatch()

public Int64RangeMatch getRangeMatch()

The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.

optional .google.cloud.compute.v1.Int64RangeMatch range_match = 97244227;

Returns
Type Description
Int64RangeMatch

The rangeMatch.

getRangeMatchOrBuilder()

public Int64RangeMatchOrBuilder getRangeMatchOrBuilder()

The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.

optional .google.cloud.compute.v1.Int64RangeMatch range_match = 97244227;

Returns
Type Description
Int64RangeMatchOrBuilder

getRegexMatch()

public String getRegexMatch()

The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. 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()

The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. 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

getSuffixMatch()

public String getSuffixMatch()

The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

optional string suffix_match = 426488663;

Returns
Type Description
String

The suffixMatch.

getSuffixMatchBytes()

public ByteString getSuffixMatchBytes()

The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

optional string suffix_match = 426488663;

Returns
Type Description
ByteString

The bytes for suffixMatch.

hasExactMatch()

public boolean hasExactMatch()

The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

optional string exact_match = 457641093;

Returns
Type Description
boolean

Whether the exactMatch field is set.

hasHeaderName()

public boolean hasHeaderName()

The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.

optional string header_name = 110223613;

Returns
Type Description
boolean

Whether the headerName field is set.

hasInvertMatch()

public boolean hasInvertMatch()

If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.

optional bool invert_match = 501130268;

Returns
Type Description
boolean

Whether the invertMatch field is set.

hasPrefixMatch()

public boolean hasPrefixMatch()

The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

optional string prefix_match = 257898968;

Returns
Type Description
boolean

Whether the prefixMatch field is set.

hasPresentMatch()

public boolean hasPresentMatch()

A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

optional bool present_match = 67435841;

Returns
Type Description
boolean

Whether the presentMatch field is set.

hasRangeMatch()

public boolean hasRangeMatch()

The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.

optional .google.cloud.compute.v1.Int64RangeMatch range_match = 97244227;

Returns
Type Description
boolean

Whether the rangeMatch field is set.

hasRegexMatch()

public boolean hasRegexMatch()

The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. 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.

hasSuffixMatch()

public boolean hasSuffixMatch()

The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

optional string suffix_match = 426488663;

Returns
Type Description
boolean

Whether the suffixMatch 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 HttpHeaderMatch.Builder newBuilderForType()
Returns
Type Description
HttpHeaderMatch.Builder

newBuilderForType(GeneratedMessageV3.BuilderParent parent)

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

newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)

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

toBuilder()

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

writeTo(CodedOutputStream output)

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