Class HttpHeaderMatch (1.50.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
TypeDescription
int

HEADER_NAME_FIELD_NUMBER

public static final int HEADER_NAME_FIELD_NUMBER
Field Value
TypeDescription
int

INVERT_MATCH_FIELD_NUMBER

public static final int INVERT_MATCH_FIELD_NUMBER
Field Value
TypeDescription
int

PREFIX_MATCH_FIELD_NUMBER

public static final int PREFIX_MATCH_FIELD_NUMBER
Field Value
TypeDescription
int

PRESENT_MATCH_FIELD_NUMBER

public static final int PRESENT_MATCH_FIELD_NUMBER
Field Value
TypeDescription
int

RANGE_MATCH_FIELD_NUMBER

public static final int RANGE_MATCH_FIELD_NUMBER
Field Value
TypeDescription
int

REGEX_MATCH_FIELD_NUMBER

public static final int REGEX_MATCH_FIELD_NUMBER
Field Value
TypeDescription
int

SUFFIX_MATCH_FIELD_NUMBER

public static final int SUFFIX_MATCH_FIELD_NUMBER
Field Value
TypeDescription
int

Static Methods

getDefaultInstance()

public static HttpHeaderMatch getDefaultInstance()
Returns
TypeDescription
HttpHeaderMatch

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
TypeDescription
Descriptor

newBuilder()

public static HttpHeaderMatch.Builder newBuilder()
Returns
TypeDescription
HttpHeaderMatch.Builder

newBuilder(HttpHeaderMatch prototype)

public static HttpHeaderMatch.Builder newBuilder(HttpHeaderMatch prototype)
Parameter
NameDescription
prototypeHttpHeaderMatch
Returns
TypeDescription
HttpHeaderMatch.Builder

parseDelimitedFrom(InputStream input)

public static HttpHeaderMatch parseDelimitedFrom(InputStream input)
Parameter
NameDescription
inputInputStream
Returns
TypeDescription
HttpHeaderMatch
Exceptions
TypeDescription
IOException

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static HttpHeaderMatch parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
HttpHeaderMatch
Exceptions
TypeDescription
IOException

parseFrom(byte[] data)

public static HttpHeaderMatch parseFrom(byte[] data)
Parameter
NameDescription
databyte[]
Returns
TypeDescription
HttpHeaderMatch
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

public static HttpHeaderMatch parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
databyte[]
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
HttpHeaderMatch
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(ByteString data)

public static HttpHeaderMatch parseFrom(ByteString data)
Parameter
NameDescription
dataByteString
Returns
TypeDescription
HttpHeaderMatch
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)

public static HttpHeaderMatch parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
dataByteString
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
HttpHeaderMatch
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(CodedInputStream input)

public static HttpHeaderMatch parseFrom(CodedInputStream input)
Parameter
NameDescription
inputCodedInputStream
Returns
TypeDescription
HttpHeaderMatch
Exceptions
TypeDescription
IOException

parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public static HttpHeaderMatch parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputCodedInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
HttpHeaderMatch
Exceptions
TypeDescription
IOException

parseFrom(InputStream input)

public static HttpHeaderMatch parseFrom(InputStream input)
Parameter
NameDescription
inputInputStream
Returns
TypeDescription
HttpHeaderMatch
Exceptions
TypeDescription
IOException

parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static HttpHeaderMatch parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
HttpHeaderMatch
Exceptions
TypeDescription
IOException

parseFrom(ByteBuffer data)

public static HttpHeaderMatch parseFrom(ByteBuffer data)
Parameter
NameDescription
dataByteBuffer
Returns
TypeDescription
HttpHeaderMatch
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)

public static HttpHeaderMatch parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
dataByteBuffer
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
HttpHeaderMatch
Exceptions
TypeDescription
InvalidProtocolBufferException

parser()

public static Parser<HttpHeaderMatch> parser()
Returns
TypeDescription
Parser<HttpHeaderMatch>

Methods

equals(Object obj)

public boolean equals(Object obj)
Parameter
NameDescription
objObject
Returns
TypeDescription
boolean
Overrides

getDefaultInstanceForType()

public HttpHeaderMatch getDefaultInstanceForType()
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
boolean

The invertMatch.

getParserForType()

public Parser<HttpHeaderMatch> getParserForType()
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
ByteString

The bytes for regexMatch.

getSerializedSize()

public int getSerializedSize()
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
boolean

Whether the suffixMatch field is set.

hashCode()

public int hashCode()
Returns
TypeDescription
int
Overrides

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
TypeDescription
FieldAccessorTable
Overrides

isInitialized()

public final boolean isInitialized()
Returns
TypeDescription
boolean
Overrides

newBuilderForType()

public HttpHeaderMatch.Builder newBuilderForType()
Returns
TypeDescription
HttpHeaderMatch.Builder

newBuilderForType(GeneratedMessageV3.BuilderParent parent)

protected HttpHeaderMatch.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter
NameDescription
parentBuilderParent
Returns
TypeDescription
HttpHeaderMatch.Builder
Overrides

newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)

protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter
NameDescription
unusedUnusedPrivateParameter
Returns
TypeDescription
Object
Overrides

toBuilder()

public HttpHeaderMatch.Builder toBuilder()
Returns
TypeDescription
HttpHeaderMatch.Builder

writeTo(CodedOutputStream output)

public void writeTo(CodedOutputStream output)
Parameter
NameDescription
outputCodedOutputStream
Overrides
Exceptions
TypeDescription
IOException