Package build.buf.validate
Interface StringRulesOrBuilder
- All Superinterfaces:
com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder<StringRules>,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder
- All Known Implementing Classes:
StringRules,StringRules.Builder
@Generated
public interface StringRulesOrBuilder
extends com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder<StringRules>
-
Method Summary
Modifier and TypeMethodDescriptionboolean`address` specifies that the field value must be either a valid hostname (for example, "example.com"), or a valid IP (v4 or v6) address (for example, "192.168.0.1", or "::1").getConst()`const` requires the field value to exactly match the specified value.com.google.protobuf.ByteString`const` requires the field value to exactly match the specified value.`contains` specifies that the field value must have the specified substring anywhere in the string.com.google.protobuf.ByteString`contains` specifies that the field value must have the specified substring anywhere in the string.booleangetEmail()`email` specifies that the field value must be a valid email address, for example "foo@example.com".getExample(int index) `example` specifies values that the field may have.com.google.protobuf.ByteStringgetExampleBytes(int index) `example` specifies values that the field may have.int`example` specifies values that the field may have.`example` specifies values that the field may have.boolean`host_and_port` specifies that the field value must be valid host/port pair—for example, "example.com:8080".boolean`hostname` specifies that the field value must be a valid hostname, for example "foo.example.com".getIn(int index) `in` specifies that the field value must be equal to one of the specified values.com.google.protobuf.ByteStringgetInBytes(int index) `in` specifies that the field value must be equal to one of the specified values.int`in` specifies that the field value must be equal to one of the specified values.`in` specifies that the field value must be equal to one of the specified values.booleangetIp()`ip` specifies that the field value must be a valid IP (v4 or v6) address.boolean`ip_prefix` specifies that the field value must be a valid IP (v4 or v6) prefix—for example, "192.168.0.0/16" or "2001:0DB8:ABCD:0012::0/64".booleangetIpv4()`ipv4` specifies that the field value must be a valid IPv4 address—for example "192.168.5.21".boolean`ipv4_prefix` specifies that the field value must be a valid IPv4 prefix, for example "192.168.0.0/16".boolean`ipv4_with_prefixlen` specifies that the field value must be a valid IPv4 address with prefix length—for example, "192.168.5.21/16".booleangetIpv6()`ipv6` specifies that the field value must be a valid IPv6 address—for example "::1", or "d7a:115c:a1e0:ab12:4843:cd96:626b:430b".boolean`ipv6_prefix` specifies that the field value must be a valid IPv6 prefix—for example, "2001:0DB8:ABCD:0012::0/64".boolean`ipv6_with_prefixlen` specifies that the field value must be a valid IPv6 address with prefix length—for example, "2001:0DB8:ABCD:0012::F1/64".boolean`ip_with_prefixlen` specifies that the field value must be a valid IP (v4 or v6) address with prefix length—for example, "192.168.5.21/16" or "2001:0DB8:ABCD:0012::F1/64".longgetLen()`len` dictates that the field value must have the specified number of characters (Unicode code points), which may differ from the number of bytes in the string.long`len_bytes` dictates that the field value must have the specified number of bytes.long`max_bytes` specifies that the field value must have no more than the specified number of bytes.long`max_len` specifies that the field value must have no more than the specified number of characters (Unicode code points), which may differ from the number of bytes in the string.long`min_bytes` specifies that the field value must have at least the specified number of bytes.long`min_len` specifies that the field value must have at least the specified number of characters (Unicode code points), which may differ from the number of bytes in the string.`not_contains` specifies that the field value must not have the specified substring anywhere in the string.com.google.protobuf.ByteString`not_contains` specifies that the field value must not have the specified substring anywhere in the string.getNotIn(int index) `not_in` specifies that the field value cannot be equal to any of the specified values.com.google.protobuf.ByteStringgetNotInBytes(int index) `not_in` specifies that the field value cannot be equal to any of the specified values.int`not_in` specifies that the field value cannot be equal to any of the specified values.`not_in` specifies that the field value cannot be equal to any of the specified values.`pattern` specifies that the field value must match the specified regular expression (RE2 syntax), with the expression provided without any delimiters.com.google.protobuf.ByteString`pattern` specifies that the field value must match the specified regular expression (RE2 syntax), with the expression provided without any delimiters.`prefix` specifies that the field value must have the specified substring at the beginning of the string.com.google.protobuf.ByteString`prefix` specifies that the field value must have the specified substring at the beginning of the string.booleanThis applies to regexes `HTTP_HEADER_NAME` and `HTTP_HEADER_VALUE` to enable strict header validation.`suffix` specifies that the field value must have the specified substring at the end of the string.com.google.protobuf.ByteString`suffix` specifies that the field value must have the specified substring at the end of the string.booleangetTuuid()`tuuid` (trimmed UUID) specifies that the field value must be a valid UUID as defined by [RFC 4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.2) with all dashes omitted.booleangetUri()`uri` specifies that the field value must be a valid URI, for example "https://example.com/foo/bar?baz=quux#frag".boolean`uri_ref` specifies that the field value must be a valid URI Reference—either a URI such as "https://example.com/foo/bar?baz=quux#frag", or a Relative Reference such as "./foo/bar?query".booleangetUuid()`uuid` specifies that the field value must be a valid UUID as defined by [RFC 4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.2).`well_known_regex` specifies a common well-known pattern defined as a regex.boolean`address` specifies that the field value must be either a valid hostname (for example, "example.com"), or a valid IP (v4 or v6) address (for example, "192.168.0.1", or "::1").booleanhasConst()`const` requires the field value to exactly match the specified value.boolean`contains` specifies that the field value must have the specified substring anywhere in the string.booleanhasEmail()`email` specifies that the field value must be a valid email address, for example "foo@example.com".boolean`host_and_port` specifies that the field value must be valid host/port pair—for example, "example.com:8080".boolean`hostname` specifies that the field value must be a valid hostname, for example "foo.example.com".booleanhasIp()`ip` specifies that the field value must be a valid IP (v4 or v6) address.boolean`ip_prefix` specifies that the field value must be a valid IP (v4 or v6) prefix—for example, "192.168.0.0/16" or "2001:0DB8:ABCD:0012::0/64".booleanhasIpv4()`ipv4` specifies that the field value must be a valid IPv4 address—for example "192.168.5.21".boolean`ipv4_prefix` specifies that the field value must be a valid IPv4 prefix, for example "192.168.0.0/16".boolean`ipv4_with_prefixlen` specifies that the field value must be a valid IPv4 address with prefix length—for example, "192.168.5.21/16".booleanhasIpv6()`ipv6` specifies that the field value must be a valid IPv6 address—for example "::1", or "d7a:115c:a1e0:ab12:4843:cd96:626b:430b".boolean`ipv6_prefix` specifies that the field value must be a valid IPv6 prefix—for example, "2001:0DB8:ABCD:0012::0/64".boolean`ipv6_with_prefixlen` specifies that the field value must be a valid IPv6 address with prefix length—for example, "2001:0DB8:ABCD:0012::F1/64".boolean`ip_with_prefixlen` specifies that the field value must be a valid IP (v4 or v6) address with prefix length—for example, "192.168.5.21/16" or "2001:0DB8:ABCD:0012::F1/64".booleanhasLen()`len` dictates that the field value must have the specified number of characters (Unicode code points), which may differ from the number of bytes in the string.boolean`len_bytes` dictates that the field value must have the specified number of bytes.boolean`max_bytes` specifies that the field value must have no more than the specified number of bytes.boolean`max_len` specifies that the field value must have no more than the specified number of characters (Unicode code points), which may differ from the number of bytes in the string.boolean`min_bytes` specifies that the field value must have at least the specified number of bytes.boolean`min_len` specifies that the field value must have at least the specified number of characters (Unicode code points), which may differ from the number of bytes in the string.boolean`not_contains` specifies that the field value must not have the specified substring anywhere in the string.boolean`pattern` specifies that the field value must match the specified regular expression (RE2 syntax), with the expression provided without any delimiters.boolean`prefix` specifies that the field value must have the specified substring at the beginning of the string.booleanThis applies to regexes `HTTP_HEADER_NAME` and `HTTP_HEADER_VALUE` to enable strict header validation.boolean`suffix` specifies that the field value must have the specified substring at the end of the string.booleanhasTuuid()`tuuid` (trimmed UUID) specifies that the field value must be a valid UUID as defined by [RFC 4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.2) with all dashes omitted.booleanhasUri()`uri` specifies that the field value must be a valid URI, for example "https://example.com/foo/bar?baz=quux#frag".boolean`uri_ref` specifies that the field value must be a valid URI Reference—either a URI such as "https://example.com/foo/bar?baz=quux#frag", or a Relative Reference such as "./foo/bar?query".booleanhasUuid()`uuid` specifies that the field value must be a valid UUID as defined by [RFC 4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.2).boolean`well_known_regex` specifies a common well-known pattern defined as a regex.Methods inherited from interface com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder
getDefaultInstanceForType, getExtension, getExtension, getExtensionCount, hasExtensionMethods inherited from interface com.google.protobuf.MessageLiteOrBuilder
isInitializedMethods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Method Details
-
hasConst
boolean hasConst()`const` requires the field value to exactly match the specified value. If the field value doesn't match, an error message is generated. ```proto message MyString { // value must equal `hello` string value = 1 [(buf.validate.field).string.const = "hello"]; } ```optional string const = 1 [json_name = "const", (.buf.validate.predefined) = { ... }- Returns:
- Whether the const field is set.
-
getConst
String getConst()`const` requires the field value to exactly match the specified value. If the field value doesn't match, an error message is generated. ```proto message MyString { // value must equal `hello` string value = 1 [(buf.validate.field).string.const = "hello"]; } ```optional string const = 1 [json_name = "const", (.buf.validate.predefined) = { ... }- Returns:
- The const.
-
getConstBytes
com.google.protobuf.ByteString getConstBytes()`const` requires the field value to exactly match the specified value. If the field value doesn't match, an error message is generated. ```proto message MyString { // value must equal `hello` string value = 1 [(buf.validate.field).string.const = "hello"]; } ```optional string const = 1 [json_name = "const", (.buf.validate.predefined) = { ... }- Returns:
- The bytes for const.
-
hasLen
boolean hasLen()`len` dictates that the field value must have the specified number of characters (Unicode code points), which may differ from the number of bytes in the string. If the field value does not meet the specified length, an error message will be generated. ```proto message MyString { // value length must be 5 characters string value = 1 [(buf.validate.field).string.len = 5]; } ```optional uint64 len = 19 [json_name = "len", (.buf.validate.predefined) = { ... }- Returns:
- Whether the len field is set.
-
getLen
long getLen()`len` dictates that the field value must have the specified number of characters (Unicode code points), which may differ from the number of bytes in the string. If the field value does not meet the specified length, an error message will be generated. ```proto message MyString { // value length must be 5 characters string value = 1 [(buf.validate.field).string.len = 5]; } ```optional uint64 len = 19 [json_name = "len", (.buf.validate.predefined) = { ... }- Returns:
- The len.
-
hasMinLen
boolean hasMinLen()`min_len` specifies that the field value must have at least the specified number of characters (Unicode code points), which may differ from the number of bytes in the string. If the field value contains fewer characters, an error message will be generated. ```proto message MyString { // value length must be at least 3 characters string value = 1 [(buf.validate.field).string.min_len = 3]; } ```optional uint64 min_len = 2 [json_name = "minLen", (.buf.validate.predefined) = { ... }- Returns:
- Whether the minLen field is set.
-
getMinLen
long getMinLen()`min_len` specifies that the field value must have at least the specified number of characters (Unicode code points), which may differ from the number of bytes in the string. If the field value contains fewer characters, an error message will be generated. ```proto message MyString { // value length must be at least 3 characters string value = 1 [(buf.validate.field).string.min_len = 3]; } ```optional uint64 min_len = 2 [json_name = "minLen", (.buf.validate.predefined) = { ... }- Returns:
- The minLen.
-
hasMaxLen
boolean hasMaxLen()`max_len` specifies that the field value must have no more than the specified number of characters (Unicode code points), which may differ from the number of bytes in the string. If the field value contains more characters, an error message will be generated. ```proto message MyString { // value length must be at most 10 characters string value = 1 [(buf.validate.field).string.max_len = 10]; } ```optional uint64 max_len = 3 [json_name = "maxLen", (.buf.validate.predefined) = { ... }- Returns:
- Whether the maxLen field is set.
-
getMaxLen
long getMaxLen()`max_len` specifies that the field value must have no more than the specified number of characters (Unicode code points), which may differ from the number of bytes in the string. If the field value contains more characters, an error message will be generated. ```proto message MyString { // value length must be at most 10 characters string value = 1 [(buf.validate.field).string.max_len = 10]; } ```optional uint64 max_len = 3 [json_name = "maxLen", (.buf.validate.predefined) = { ... }- Returns:
- The maxLen.
-
hasLenBytes
boolean hasLenBytes()`len_bytes` dictates that the field value must have the specified number of bytes. If the field value does not match the specified length in bytes, an error message will be generated. ```proto message MyString { // value length must be 6 bytes string value = 1 [(buf.validate.field).string.len_bytes = 6]; } ```optional uint64 len_bytes = 20 [json_name = "lenBytes", (.buf.validate.predefined) = { ... }- Returns:
- Whether the lenBytes field is set.
-
getLenBytes
long getLenBytes()`len_bytes` dictates that the field value must have the specified number of bytes. If the field value does not match the specified length in bytes, an error message will be generated. ```proto message MyString { // value length must be 6 bytes string value = 1 [(buf.validate.field).string.len_bytes = 6]; } ```optional uint64 len_bytes = 20 [json_name = "lenBytes", (.buf.validate.predefined) = { ... }- Returns:
- The lenBytes.
-
hasMinBytes
boolean hasMinBytes()`min_bytes` specifies that the field value must have at least the specified number of bytes. If the field value contains fewer bytes, an error message will be generated. ```proto message MyString { // value length must be at least 4 bytes string value = 1 [(buf.validate.field).string.min_bytes = 4]; } ```optional uint64 min_bytes = 4 [json_name = "minBytes", (.buf.validate.predefined) = { ... }- Returns:
- Whether the minBytes field is set.
-
getMinBytes
long getMinBytes()`min_bytes` specifies that the field value must have at least the specified number of bytes. If the field value contains fewer bytes, an error message will be generated. ```proto message MyString { // value length must be at least 4 bytes string value = 1 [(buf.validate.field).string.min_bytes = 4]; } ```optional uint64 min_bytes = 4 [json_name = "minBytes", (.buf.validate.predefined) = { ... }- Returns:
- The minBytes.
-
hasMaxBytes
boolean hasMaxBytes()`max_bytes` specifies that the field value must have no more than the specified number of bytes. If the field value contains more bytes, an error message will be generated. ```proto message MyString { // value length must be at most 8 bytes string value = 1 [(buf.validate.field).string.max_bytes = 8]; } ```optional uint64 max_bytes = 5 [json_name = "maxBytes", (.buf.validate.predefined) = { ... }- Returns:
- Whether the maxBytes field is set.
-
getMaxBytes
long getMaxBytes()`max_bytes` specifies that the field value must have no more than the specified number of bytes. If the field value contains more bytes, an error message will be generated. ```proto message MyString { // value length must be at most 8 bytes string value = 1 [(buf.validate.field).string.max_bytes = 8]; } ```optional uint64 max_bytes = 5 [json_name = "maxBytes", (.buf.validate.predefined) = { ... }- Returns:
- The maxBytes.
-
hasPattern
boolean hasPattern()`pattern` specifies that the field value must match the specified regular expression (RE2 syntax), with the expression provided without any delimiters. If the field value doesn't match the regular expression, an error message will be generated. ```proto message MyString { // value does not match regex pattern `^[a-zA-Z]//$` string value = 1 [(buf.validate.field).string.pattern = "^[a-zA-Z]//$"]; } ```optional string pattern = 6 [json_name = "pattern", (.buf.validate.predefined) = { ... }- Returns:
- Whether the pattern field is set.
-
getPattern
String getPattern()`pattern` specifies that the field value must match the specified regular expression (RE2 syntax), with the expression provided without any delimiters. If the field value doesn't match the regular expression, an error message will be generated. ```proto message MyString { // value does not match regex pattern `^[a-zA-Z]//$` string value = 1 [(buf.validate.field).string.pattern = "^[a-zA-Z]//$"]; } ```optional string pattern = 6 [json_name = "pattern", (.buf.validate.predefined) = { ... }- Returns:
- The pattern.
-
getPatternBytes
com.google.protobuf.ByteString getPatternBytes()`pattern` specifies that the field value must match the specified regular expression (RE2 syntax), with the expression provided without any delimiters. If the field value doesn't match the regular expression, an error message will be generated. ```proto message MyString { // value does not match regex pattern `^[a-zA-Z]//$` string value = 1 [(buf.validate.field).string.pattern = "^[a-zA-Z]//$"]; } ```optional string pattern = 6 [json_name = "pattern", (.buf.validate.predefined) = { ... }- Returns:
- The bytes for pattern.
-
hasPrefix
boolean hasPrefix()`prefix` specifies that the field value must have the specified substring at the beginning of the string. If the field value doesn't start with the specified prefix, an error message will be generated. ```proto message MyString { // value does not have prefix `pre` string value = 1 [(buf.validate.field).string.prefix = "pre"]; } ```optional string prefix = 7 [json_name = "prefix", (.buf.validate.predefined) = { ... }- Returns:
- Whether the prefix field is set.
-
getPrefix
String getPrefix()`prefix` specifies that the field value must have the specified substring at the beginning of the string. If the field value doesn't start with the specified prefix, an error message will be generated. ```proto message MyString { // value does not have prefix `pre` string value = 1 [(buf.validate.field).string.prefix = "pre"]; } ```optional string prefix = 7 [json_name = "prefix", (.buf.validate.predefined) = { ... }- Returns:
- The prefix.
-
getPrefixBytes
com.google.protobuf.ByteString getPrefixBytes()`prefix` specifies that the field value must have the specified substring at the beginning of the string. If the field value doesn't start with the specified prefix, an error message will be generated. ```proto message MyString { // value does not have prefix `pre` string value = 1 [(buf.validate.field).string.prefix = "pre"]; } ```optional string prefix = 7 [json_name = "prefix", (.buf.validate.predefined) = { ... }- Returns:
- The bytes for prefix.
-
hasSuffix
boolean hasSuffix()`suffix` specifies that the field value must have the specified substring at the end of the string. If the field value doesn't end with the specified suffix, an error message will be generated. ```proto message MyString { // value does not have suffix `post` string value = 1 [(buf.validate.field).string.suffix = "post"]; } ```optional string suffix = 8 [json_name = "suffix", (.buf.validate.predefined) = { ... }- Returns:
- Whether the suffix field is set.
-
getSuffix
String getSuffix()`suffix` specifies that the field value must have the specified substring at the end of the string. If the field value doesn't end with the specified suffix, an error message will be generated. ```proto message MyString { // value does not have suffix `post` string value = 1 [(buf.validate.field).string.suffix = "post"]; } ```optional string suffix = 8 [json_name = "suffix", (.buf.validate.predefined) = { ... }- Returns:
- The suffix.
-
getSuffixBytes
com.google.protobuf.ByteString getSuffixBytes()`suffix` specifies that the field value must have the specified substring at the end of the string. If the field value doesn't end with the specified suffix, an error message will be generated. ```proto message MyString { // value does not have suffix `post` string value = 1 [(buf.validate.field).string.suffix = "post"]; } ```optional string suffix = 8 [json_name = "suffix", (.buf.validate.predefined) = { ... }- Returns:
- The bytes for suffix.
-
hasContains
boolean hasContains()`contains` specifies that the field value must have the specified substring anywhere in the string. If the field value doesn't contain the specified substring, an error message will be generated. ```proto message MyString { // value does not contain substring `inside`. string value = 1 [(buf.validate.field).string.contains = "inside"]; } ```optional string contains = 9 [json_name = "contains", (.buf.validate.predefined) = { ... }- Returns:
- Whether the contains field is set.
-
getContains
String getContains()`contains` specifies that the field value must have the specified substring anywhere in the string. If the field value doesn't contain the specified substring, an error message will be generated. ```proto message MyString { // value does not contain substring `inside`. string value = 1 [(buf.validate.field).string.contains = "inside"]; } ```optional string contains = 9 [json_name = "contains", (.buf.validate.predefined) = { ... }- Returns:
- The contains.
-
getContainsBytes
com.google.protobuf.ByteString getContainsBytes()`contains` specifies that the field value must have the specified substring anywhere in the string. If the field value doesn't contain the specified substring, an error message will be generated. ```proto message MyString { // value does not contain substring `inside`. string value = 1 [(buf.validate.field).string.contains = "inside"]; } ```optional string contains = 9 [json_name = "contains", (.buf.validate.predefined) = { ... }- Returns:
- The bytes for contains.
-
hasNotContains
boolean hasNotContains()`not_contains` specifies that the field value must not have the specified substring anywhere in the string. If the field value contains the specified substring, an error message will be generated. ```proto message MyString { // value contains substring `inside`. string value = 1 [(buf.validate.field).string.not_contains = "inside"]; } ```optional string not_contains = 23 [json_name = "notContains", (.buf.validate.predefined) = { ... }- Returns:
- Whether the notContains field is set.
-
getNotContains
String getNotContains()`not_contains` specifies that the field value must not have the specified substring anywhere in the string. If the field value contains the specified substring, an error message will be generated. ```proto message MyString { // value contains substring `inside`. string value = 1 [(buf.validate.field).string.not_contains = "inside"]; } ```optional string not_contains = 23 [json_name = "notContains", (.buf.validate.predefined) = { ... }- Returns:
- The notContains.
-
getNotContainsBytes
com.google.protobuf.ByteString getNotContainsBytes()`not_contains` specifies that the field value must not have the specified substring anywhere in the string. If the field value contains the specified substring, an error message will be generated. ```proto message MyString { // value contains substring `inside`. string value = 1 [(buf.validate.field).string.not_contains = "inside"]; } ```optional string not_contains = 23 [json_name = "notContains", (.buf.validate.predefined) = { ... }- Returns:
- The bytes for notContains.
-
getInList
`in` specifies that the field value must be equal to one of the specified values. If the field value isn't one of the specified values, an error message will be generated. ```proto message MyString { // value must be in list ["apple", "banana"] string value = 1 [(buf.validate.field).string.in = "apple", (buf.validate.field).string.in = "banana"]; } ```repeated string in = 10 [json_name = "in", (.buf.validate.predefined) = { ... }- Returns:
- A list containing the in.
-
getInCount
int getInCount()`in` specifies that the field value must be equal to one of the specified values. If the field value isn't one of the specified values, an error message will be generated. ```proto message MyString { // value must be in list ["apple", "banana"] string value = 1 [(buf.validate.field).string.in = "apple", (buf.validate.field).string.in = "banana"]; } ```repeated string in = 10 [json_name = "in", (.buf.validate.predefined) = { ... }- Returns:
- The count of in.
-
getIn
`in` specifies that the field value must be equal to one of the specified values. If the field value isn't one of the specified values, an error message will be generated. ```proto message MyString { // value must be in list ["apple", "banana"] string value = 1 [(buf.validate.field).string.in = "apple", (buf.validate.field).string.in = "banana"]; } ```repeated string in = 10 [json_name = "in", (.buf.validate.predefined) = { ... }- Parameters:
index- The index of the element to return.- Returns:
- The in at the given index.
-
getInBytes
com.google.protobuf.ByteString getInBytes(int index) `in` specifies that the field value must be equal to one of the specified values. If the field value isn't one of the specified values, an error message will be generated. ```proto message MyString { // value must be in list ["apple", "banana"] string value = 1 [(buf.validate.field).string.in = "apple", (buf.validate.field).string.in = "banana"]; } ```repeated string in = 10 [json_name = "in", (.buf.validate.predefined) = { ... }- Parameters:
index- The index of the value to return.- Returns:
- The bytes of the in at the given index.
-
getNotInList
`not_in` specifies that the field value cannot be equal to any of the specified values. If the field value is one of the specified values, an error message will be generated. ```proto message MyString { // value must not be in list ["orange", "grape"] string value = 1 [(buf.validate.field).string.not_in = "orange", (buf.validate.field).string.not_in = "grape"]; } ```repeated string not_in = 11 [json_name = "notIn", (.buf.validate.predefined) = { ... }- Returns:
- A list containing the notIn.
-
getNotInCount
int getNotInCount()`not_in` specifies that the field value cannot be equal to any of the specified values. If the field value is one of the specified values, an error message will be generated. ```proto message MyString { // value must not be in list ["orange", "grape"] string value = 1 [(buf.validate.field).string.not_in = "orange", (buf.validate.field).string.not_in = "grape"]; } ```repeated string not_in = 11 [json_name = "notIn", (.buf.validate.predefined) = { ... }- Returns:
- The count of notIn.
-
getNotIn
`not_in` specifies that the field value cannot be equal to any of the specified values. If the field value is one of the specified values, an error message will be generated. ```proto message MyString { // value must not be in list ["orange", "grape"] string value = 1 [(buf.validate.field).string.not_in = "orange", (buf.validate.field).string.not_in = "grape"]; } ```repeated string not_in = 11 [json_name = "notIn", (.buf.validate.predefined) = { ... }- Parameters:
index- The index of the element to return.- Returns:
- The notIn at the given index.
-
getNotInBytes
com.google.protobuf.ByteString getNotInBytes(int index) `not_in` specifies that the field value cannot be equal to any of the specified values. If the field value is one of the specified values, an error message will be generated. ```proto message MyString { // value must not be in list ["orange", "grape"] string value = 1 [(buf.validate.field).string.not_in = "orange", (buf.validate.field).string.not_in = "grape"]; } ```repeated string not_in = 11 [json_name = "notIn", (.buf.validate.predefined) = { ... }- Parameters:
index- The index of the value to return.- Returns:
- The bytes of the notIn at the given index.
-
hasEmail
boolean hasEmail()`email` specifies that the field value must be a valid email address, for example "foo@example.com". Conforms to the definition for a valid email address from the [HTML standard](https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address). Note that this standard willfully deviates from [RFC 5322](https://datatracker.ietf.org/doc/html/rfc5322), which allows many unexpected forms of email addresses and will easily match a typographical error. If the field value isn't a valid email address, an error message will be generated. ```proto message MyString { // value must be a valid email address string value = 1 [(buf.validate.field).string.email = true]; } ```bool email = 12 [json_name = "email", (.buf.validate.predefined) = { ... }- Returns:
- Whether the email field is set.
-
getEmail
boolean getEmail()`email` specifies that the field value must be a valid email address, for example "foo@example.com". Conforms to the definition for a valid email address from the [HTML standard](https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address). Note that this standard willfully deviates from [RFC 5322](https://datatracker.ietf.org/doc/html/rfc5322), which allows many unexpected forms of email addresses and will easily match a typographical error. If the field value isn't a valid email address, an error message will be generated. ```proto message MyString { // value must be a valid email address string value = 1 [(buf.validate.field).string.email = true]; } ```bool email = 12 [json_name = "email", (.buf.validate.predefined) = { ... }- Returns:
- The email.
-
hasHostname
boolean hasHostname()`hostname` specifies that the field value must be a valid hostname, for example "foo.example.com". A valid hostname follows the rules below: - The name consists of one or more labels, separated by a dot ("."). - Each label can be 1 to 63 alphanumeric characters. - A label can contain hyphens ("-"), but must not start or end with a hyphen. - The right-most label must not be digits only. - The name can have a trailing dot—for example, "foo.example.com.". - The name can be 253 characters at most, excluding the optional trailing dot. If the field value isn't a valid hostname, an error message will be generated. ```proto message MyString { // value must be a valid hostname string value = 1 [(buf.validate.field).string.hostname = true]; } ```bool hostname = 13 [json_name = "hostname", (.buf.validate.predefined) = { ... }- Returns:
- Whether the hostname field is set.
-
getHostname
boolean getHostname()`hostname` specifies that the field value must be a valid hostname, for example "foo.example.com". A valid hostname follows the rules below: - The name consists of one or more labels, separated by a dot ("."). - Each label can be 1 to 63 alphanumeric characters. - A label can contain hyphens ("-"), but must not start or end with a hyphen. - The right-most label must not be digits only. - The name can have a trailing dot—for example, "foo.example.com.". - The name can be 253 characters at most, excluding the optional trailing dot. If the field value isn't a valid hostname, an error message will be generated. ```proto message MyString { // value must be a valid hostname string value = 1 [(buf.validate.field).string.hostname = true]; } ```bool hostname = 13 [json_name = "hostname", (.buf.validate.predefined) = { ... }- Returns:
- The hostname.
-
hasIp
boolean hasIp()`ip` specifies that the field value must be a valid IP (v4 or v6) address. IPv4 addresses are expected in the dotted decimal format—for example, "192.168.5.21". IPv6 addresses are expected in their text representation—for example, "::1", or "2001:0DB8:ABCD:0012::0". Both formats are well-defined in the internet standard [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986). Zone identifiers for IPv6 addresses (for example, "fe80::a%en1") are supported. If the field value isn't a valid IP address, an error message will be generated. ```proto message MyString { // value must be a valid IP address string value = 1 [(buf.validate.field).string.ip = true]; } ```bool ip = 14 [json_name = "ip", (.buf.validate.predefined) = { ... }- Returns:
- Whether the ip field is set.
-
getIp
boolean getIp()`ip` specifies that the field value must be a valid IP (v4 or v6) address. IPv4 addresses are expected in the dotted decimal format—for example, "192.168.5.21". IPv6 addresses are expected in their text representation—for example, "::1", or "2001:0DB8:ABCD:0012::0". Both formats are well-defined in the internet standard [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986). Zone identifiers for IPv6 addresses (for example, "fe80::a%en1") are supported. If the field value isn't a valid IP address, an error message will be generated. ```proto message MyString { // value must be a valid IP address string value = 1 [(buf.validate.field).string.ip = true]; } ```bool ip = 14 [json_name = "ip", (.buf.validate.predefined) = { ... }- Returns:
- The ip.
-
hasIpv4
boolean hasIpv4()`ipv4` specifies that the field value must be a valid IPv4 address—for example "192.168.5.21". If the field value isn't a valid IPv4 address, an error message will be generated. ```proto message MyString { // value must be a valid IPv4 address string value = 1 [(buf.validate.field).string.ipv4 = true]; } ```bool ipv4 = 15 [json_name = "ipv4", (.buf.validate.predefined) = { ... }- Returns:
- Whether the ipv4 field is set.
-
getIpv4
boolean getIpv4()`ipv4` specifies that the field value must be a valid IPv4 address—for example "192.168.5.21". If the field value isn't a valid IPv4 address, an error message will be generated. ```proto message MyString { // value must be a valid IPv4 address string value = 1 [(buf.validate.field).string.ipv4 = true]; } ```bool ipv4 = 15 [json_name = "ipv4", (.buf.validate.predefined) = { ... }- Returns:
- The ipv4.
-
hasIpv6
boolean hasIpv6()`ipv6` specifies that the field value must be a valid IPv6 address—for example "::1", or "d7a:115c:a1e0:ab12:4843:cd96:626b:430b". If the field value is not a valid IPv6 address, an error message will be generated. ```proto message MyString { // value must be a valid IPv6 address string value = 1 [(buf.validate.field).string.ipv6 = true]; } ```bool ipv6 = 16 [json_name = "ipv6", (.buf.validate.predefined) = { ... }- Returns:
- Whether the ipv6 field is set.
-
getIpv6
boolean getIpv6()`ipv6` specifies that the field value must be a valid IPv6 address—for example "::1", or "d7a:115c:a1e0:ab12:4843:cd96:626b:430b". If the field value is not a valid IPv6 address, an error message will be generated. ```proto message MyString { // value must be a valid IPv6 address string value = 1 [(buf.validate.field).string.ipv6 = true]; } ```bool ipv6 = 16 [json_name = "ipv6", (.buf.validate.predefined) = { ... }- Returns:
- The ipv6.
-
hasUri
boolean hasUri()`uri` specifies that the field value must be a valid URI, for example "https://example.com/foo/bar?baz=quux#frag". URI is defined in the internet standard [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986). Zone Identifiers in IPv6 address literals are supported ([RFC 6874](https://datatracker.ietf.org/doc/html/rfc6874)). If the field value isn't a valid URI, an error message will be generated. ```proto message MyString { // value must be a valid URI string value = 1 [(buf.validate.field).string.uri = true]; } ```bool uri = 17 [json_name = "uri", (.buf.validate.predefined) = { ... }- Returns:
- Whether the uri field is set.
-
getUri
boolean getUri()`uri` specifies that the field value must be a valid URI, for example "https://example.com/foo/bar?baz=quux#frag". URI is defined in the internet standard [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986). Zone Identifiers in IPv6 address literals are supported ([RFC 6874](https://datatracker.ietf.org/doc/html/rfc6874)). If the field value isn't a valid URI, an error message will be generated. ```proto message MyString { // value must be a valid URI string value = 1 [(buf.validate.field).string.uri = true]; } ```bool uri = 17 [json_name = "uri", (.buf.validate.predefined) = { ... }- Returns:
- The uri.
-
hasUriRef
boolean hasUriRef()`uri_ref` specifies that the field value must be a valid URI Reference—either a URI such as "https://example.com/foo/bar?baz=quux#frag", or a Relative Reference such as "./foo/bar?query". URI, URI Reference, and Relative Reference are defined in the internet standard [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986). Zone Identifiers in IPv6 address literals are supported ([RFC 6874](https://datatracker.ietf.org/doc/html/rfc6874)). If the field value isn't a valid URI Reference, an error message will be generated. ```proto message MyString { // value must be a valid URI Reference string value = 1 [(buf.validate.field).string.uri_ref = true]; } ```bool uri_ref = 18 [json_name = "uriRef", (.buf.validate.predefined) = { ... }- Returns:
- Whether the uriRef field is set.
-
getUriRef
boolean getUriRef()`uri_ref` specifies that the field value must be a valid URI Reference—either a URI such as "https://example.com/foo/bar?baz=quux#frag", or a Relative Reference such as "./foo/bar?query". URI, URI Reference, and Relative Reference are defined in the internet standard [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986). Zone Identifiers in IPv6 address literals are supported ([RFC 6874](https://datatracker.ietf.org/doc/html/rfc6874)). If the field value isn't a valid URI Reference, an error message will be generated. ```proto message MyString { // value must be a valid URI Reference string value = 1 [(buf.validate.field).string.uri_ref = true]; } ```bool uri_ref = 18 [json_name = "uriRef", (.buf.validate.predefined) = { ... }- Returns:
- The uriRef.
-
hasAddress
boolean hasAddress()`address` specifies that the field value must be either a valid hostname (for example, "example.com"), or a valid IP (v4 or v6) address (for example, "192.168.0.1", or "::1"). If the field value isn't a valid hostname or IP, an error message will be generated. ```proto message MyString { // value must be a valid hostname, or ip address string value = 1 [(buf.validate.field).string.address = true]; } ```bool address = 21 [json_name = "address", (.buf.validate.predefined) = { ... }- Returns:
- Whether the address field is set.
-
getAddress
boolean getAddress()`address` specifies that the field value must be either a valid hostname (for example, "example.com"), or a valid IP (v4 or v6) address (for example, "192.168.0.1", or "::1"). If the field value isn't a valid hostname or IP, an error message will be generated. ```proto message MyString { // value must be a valid hostname, or ip address string value = 1 [(buf.validate.field).string.address = true]; } ```bool address = 21 [json_name = "address", (.buf.validate.predefined) = { ... }- Returns:
- The address.
-
hasUuid
boolean hasUuid()`uuid` specifies that the field value must be a valid UUID as defined by [RFC 4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.2). If the field value isn't a valid UUID, an error message will be generated. ```proto message MyString { // value must be a valid UUID string value = 1 [(buf.validate.field).string.uuid = true]; } ```bool uuid = 22 [json_name = "uuid", (.buf.validate.predefined) = { ... }- Returns:
- Whether the uuid field is set.
-
getUuid
boolean getUuid()`uuid` specifies that the field value must be a valid UUID as defined by [RFC 4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.2). If the field value isn't a valid UUID, an error message will be generated. ```proto message MyString { // value must be a valid UUID string value = 1 [(buf.validate.field).string.uuid = true]; } ```bool uuid = 22 [json_name = "uuid", (.buf.validate.predefined) = { ... }- Returns:
- The uuid.
-
hasTuuid
boolean hasTuuid()`tuuid` (trimmed UUID) specifies that the field value must be a valid UUID as defined by [RFC 4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.2) with all dashes omitted. If the field value isn't a valid UUID without dashes, an error message will be generated. ```proto message MyString { // value must be a valid trimmed UUID string value = 1 [(buf.validate.field).string.tuuid = true]; } ```bool tuuid = 33 [json_name = "tuuid", (.buf.validate.predefined) = { ... }- Returns:
- Whether the tuuid field is set.
-
getTuuid
boolean getTuuid()`tuuid` (trimmed UUID) specifies that the field value must be a valid UUID as defined by [RFC 4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.2) with all dashes omitted. If the field value isn't a valid UUID without dashes, an error message will be generated. ```proto message MyString { // value must be a valid trimmed UUID string value = 1 [(buf.validate.field).string.tuuid = true]; } ```bool tuuid = 33 [json_name = "tuuid", (.buf.validate.predefined) = { ... }- Returns:
- The tuuid.
-
hasIpWithPrefixlen
boolean hasIpWithPrefixlen()`ip_with_prefixlen` specifies that the field value must be a valid IP (v4 or v6) address with prefix length—for example, "192.168.5.21/16" or "2001:0DB8:ABCD:0012::F1/64". If the field value isn't a valid IP with prefix length, an error message will be generated. ```proto message MyString { // value must be a valid IP with prefix length string value = 1 [(buf.validate.field).string.ip_with_prefixlen = true]; } ```bool ip_with_prefixlen = 26 [json_name = "ipWithPrefixlen", (.buf.validate.predefined) = { ... }- Returns:
- Whether the ipWithPrefixlen field is set.
-
getIpWithPrefixlen
boolean getIpWithPrefixlen()`ip_with_prefixlen` specifies that the field value must be a valid IP (v4 or v6) address with prefix length—for example, "192.168.5.21/16" or "2001:0DB8:ABCD:0012::F1/64". If the field value isn't a valid IP with prefix length, an error message will be generated. ```proto message MyString { // value must be a valid IP with prefix length string value = 1 [(buf.validate.field).string.ip_with_prefixlen = true]; } ```bool ip_with_prefixlen = 26 [json_name = "ipWithPrefixlen", (.buf.validate.predefined) = { ... }- Returns:
- The ipWithPrefixlen.
-
hasIpv4WithPrefixlen
boolean hasIpv4WithPrefixlen()`ipv4_with_prefixlen` specifies that the field value must be a valid IPv4 address with prefix length—for example, "192.168.5.21/16". If the field value isn't a valid IPv4 address with prefix length, an error message will be generated. ```proto message MyString { // value must be a valid IPv4 address with prefix length string value = 1 [(buf.validate.field).string.ipv4_with_prefixlen = true]; } ```bool ipv4_with_prefixlen = 27 [json_name = "ipv4WithPrefixlen", (.buf.validate.predefined) = { ... }- Returns:
- Whether the ipv4WithPrefixlen field is set.
-
getIpv4WithPrefixlen
boolean getIpv4WithPrefixlen()`ipv4_with_prefixlen` specifies that the field value must be a valid IPv4 address with prefix length—for example, "192.168.5.21/16". If the field value isn't a valid IPv4 address with prefix length, an error message will be generated. ```proto message MyString { // value must be a valid IPv4 address with prefix length string value = 1 [(buf.validate.field).string.ipv4_with_prefixlen = true]; } ```bool ipv4_with_prefixlen = 27 [json_name = "ipv4WithPrefixlen", (.buf.validate.predefined) = { ... }- Returns:
- The ipv4WithPrefixlen.
-
hasIpv6WithPrefixlen
boolean hasIpv6WithPrefixlen()`ipv6_with_prefixlen` specifies that the field value must be a valid IPv6 address with prefix length—for example, "2001:0DB8:ABCD:0012::F1/64". If the field value is not a valid IPv6 address with prefix length, an error message will be generated. ```proto message MyString { // value must be a valid IPv6 address prefix length string value = 1 [(buf.validate.field).string.ipv6_with_prefixlen = true]; } ```bool ipv6_with_prefixlen = 28 [json_name = "ipv6WithPrefixlen", (.buf.validate.predefined) = { ... }- Returns:
- Whether the ipv6WithPrefixlen field is set.
-
getIpv6WithPrefixlen
boolean getIpv6WithPrefixlen()`ipv6_with_prefixlen` specifies that the field value must be a valid IPv6 address with prefix length—for example, "2001:0DB8:ABCD:0012::F1/64". If the field value is not a valid IPv6 address with prefix length, an error message will be generated. ```proto message MyString { // value must be a valid IPv6 address prefix length string value = 1 [(buf.validate.field).string.ipv6_with_prefixlen = true]; } ```bool ipv6_with_prefixlen = 28 [json_name = "ipv6WithPrefixlen", (.buf.validate.predefined) = { ... }- Returns:
- The ipv6WithPrefixlen.
-
hasIpPrefix
boolean hasIpPrefix()`ip_prefix` specifies that the field value must be a valid IP (v4 or v6) prefix—for example, "192.168.0.0/16" or "2001:0DB8:ABCD:0012::0/64". The prefix must have all zeros for the unmasked bits. For example, "2001:0DB8:ABCD:0012::0/64" designates the left-most 64 bits for the prefix, and the remaining 64 bits must be zero. If the field value isn't a valid IP prefix, an error message will be generated. ```proto message MyString { // value must be a valid IP prefix string value = 1 [(buf.validate.field).string.ip_prefix = true]; } ```bool ip_prefix = 29 [json_name = "ipPrefix", (.buf.validate.predefined) = { ... }- Returns:
- Whether the ipPrefix field is set.
-
getIpPrefix
boolean getIpPrefix()`ip_prefix` specifies that the field value must be a valid IP (v4 or v6) prefix—for example, "192.168.0.0/16" or "2001:0DB8:ABCD:0012::0/64". The prefix must have all zeros for the unmasked bits. For example, "2001:0DB8:ABCD:0012::0/64" designates the left-most 64 bits for the prefix, and the remaining 64 bits must be zero. If the field value isn't a valid IP prefix, an error message will be generated. ```proto message MyString { // value must be a valid IP prefix string value = 1 [(buf.validate.field).string.ip_prefix = true]; } ```bool ip_prefix = 29 [json_name = "ipPrefix", (.buf.validate.predefined) = { ... }- Returns:
- The ipPrefix.
-
hasIpv4Prefix
boolean hasIpv4Prefix()`ipv4_prefix` specifies that the field value must be a valid IPv4 prefix, for example "192.168.0.0/16". The prefix must have all zeros for the unmasked bits. For example, "192.168.0.0/16" designates the left-most 16 bits for the prefix, and the remaining 16 bits must be zero. If the field value isn't a valid IPv4 prefix, an error message will be generated. ```proto message MyString { // value must be a valid IPv4 prefix string value = 1 [(buf.validate.field).string.ipv4_prefix = true]; } ```bool ipv4_prefix = 30 [json_name = "ipv4Prefix", (.buf.validate.predefined) = { ... }- Returns:
- Whether the ipv4Prefix field is set.
-
getIpv4Prefix
boolean getIpv4Prefix()`ipv4_prefix` specifies that the field value must be a valid IPv4 prefix, for example "192.168.0.0/16". The prefix must have all zeros for the unmasked bits. For example, "192.168.0.0/16" designates the left-most 16 bits for the prefix, and the remaining 16 bits must be zero. If the field value isn't a valid IPv4 prefix, an error message will be generated. ```proto message MyString { // value must be a valid IPv4 prefix string value = 1 [(buf.validate.field).string.ipv4_prefix = true]; } ```bool ipv4_prefix = 30 [json_name = "ipv4Prefix", (.buf.validate.predefined) = { ... }- Returns:
- The ipv4Prefix.
-
hasIpv6Prefix
boolean hasIpv6Prefix()`ipv6_prefix` specifies that the field value must be a valid IPv6 prefix—for example, "2001:0DB8:ABCD:0012::0/64". The prefix must have all zeros for the unmasked bits. For example, "2001:0DB8:ABCD:0012::0/64" designates the left-most 64 bits for the prefix, and the remaining 64 bits must be zero. If the field value is not a valid IPv6 prefix, an error message will be generated. ```proto message MyString { // value must be a valid IPv6 prefix string value = 1 [(buf.validate.field).string.ipv6_prefix = true]; } ```bool ipv6_prefix = 31 [json_name = "ipv6Prefix", (.buf.validate.predefined) = { ... }- Returns:
- Whether the ipv6Prefix field is set.
-
getIpv6Prefix
boolean getIpv6Prefix()`ipv6_prefix` specifies that the field value must be a valid IPv6 prefix—for example, "2001:0DB8:ABCD:0012::0/64". The prefix must have all zeros for the unmasked bits. For example, "2001:0DB8:ABCD:0012::0/64" designates the left-most 64 bits for the prefix, and the remaining 64 bits must be zero. If the field value is not a valid IPv6 prefix, an error message will be generated. ```proto message MyString { // value must be a valid IPv6 prefix string value = 1 [(buf.validate.field).string.ipv6_prefix = true]; } ```bool ipv6_prefix = 31 [json_name = "ipv6Prefix", (.buf.validate.predefined) = { ... }- Returns:
- The ipv6Prefix.
-
hasHostAndPort
boolean hasHostAndPort()`host_and_port` specifies that the field value must be valid host/port pair—for example, "example.com:8080". The host can be one of: - An IPv4 address in dotted decimal format—for example, "192.168.5.21". - An IPv6 address enclosed in square brackets—for example, "[2001:0DB8:ABCD:0012::F1]". - A hostname—for example, "example.com". The port is separated by a colon. It must be non-empty, with a decimal number in the range of 0-65535, inclusive.
bool host_and_port = 32 [json_name = "hostAndPort", (.buf.validate.predefined) = { ... }- Returns:
- Whether the hostAndPort field is set.
-
getHostAndPort
boolean getHostAndPort()`host_and_port` specifies that the field value must be valid host/port pair—for example, "example.com:8080". The host can be one of: - An IPv4 address in dotted decimal format—for example, "192.168.5.21". - An IPv6 address enclosed in square brackets—for example, "[2001:0DB8:ABCD:0012::F1]". - A hostname—for example, "example.com". The port is separated by a colon. It must be non-empty, with a decimal number in the range of 0-65535, inclusive.
bool host_and_port = 32 [json_name = "hostAndPort", (.buf.validate.predefined) = { ... }- Returns:
- The hostAndPort.
-
hasWellKnownRegex
boolean hasWellKnownRegex()`well_known_regex` specifies a common well-known pattern defined as a regex. If the field value doesn't match the well-known regex, an error message will be generated. ```proto message MyString { // value must be a valid HTTP header value string value = 1 [(buf.validate.field).string.well_known_regex = KNOWN_REGEX_HTTP_HEADER_VALUE]; } ``` #### KnownRegex `well_known_regex` contains some well-known patterns. | Name | Number | Description | |-------------------------------|--------|-------------------------------------------| | KNOWN_REGEX_UNSPECIFIED | 0 | | | KNOWN_REGEX_HTTP_HEADER_NAME | 1 | HTTP header name as defined by [RFC 7230](https://datatracker.ietf.org/doc/html/rfc7230#section-3.2) | | KNOWN_REGEX_HTTP_HEADER_VALUE | 2 | HTTP header value as defined by [RFC 7230](https://datatracker.ietf.org/doc/html/rfc7230#section-3.2.4) |.buf.validate.KnownRegex well_known_regex = 24 [json_name = "wellKnownRegex", (.buf.validate.predefined) = { ... }- Returns:
- Whether the wellKnownRegex field is set.
-
getWellKnownRegex
KnownRegex getWellKnownRegex()`well_known_regex` specifies a common well-known pattern defined as a regex. If the field value doesn't match the well-known regex, an error message will be generated. ```proto message MyString { // value must be a valid HTTP header value string value = 1 [(buf.validate.field).string.well_known_regex = KNOWN_REGEX_HTTP_HEADER_VALUE]; } ``` #### KnownRegex `well_known_regex` contains some well-known patterns. | Name | Number | Description | |-------------------------------|--------|-------------------------------------------| | KNOWN_REGEX_UNSPECIFIED | 0 | | | KNOWN_REGEX_HTTP_HEADER_NAME | 1 | HTTP header name as defined by [RFC 7230](https://datatracker.ietf.org/doc/html/rfc7230#section-3.2) | | KNOWN_REGEX_HTTP_HEADER_VALUE | 2 | HTTP header value as defined by [RFC 7230](https://datatracker.ietf.org/doc/html/rfc7230#section-3.2.4) |.buf.validate.KnownRegex well_known_regex = 24 [json_name = "wellKnownRegex", (.buf.validate.predefined) = { ... }- Returns:
- The wellKnownRegex.
-
hasStrict
boolean hasStrict()This applies to regexes `HTTP_HEADER_NAME` and `HTTP_HEADER_VALUE` to enable strict header validation. By default, this is true, and HTTP header validations are [RFC-compliant](https://datatracker.ietf.org/doc/html/rfc7230#section-3). Setting to false will enable looser validations that only disallow `\r\n\0` characters, which can be used to bypass header matching rules. ```proto message MyString { // The field `value` must have be a valid HTTP headers, but not enforced with strict rules. string value = 1 [(buf.validate.field).string.strict = false]; } ```optional bool strict = 25 [json_name = "strict"];- Returns:
- Whether the strict field is set.
-
getStrict
boolean getStrict()This applies to regexes `HTTP_HEADER_NAME` and `HTTP_HEADER_VALUE` to enable strict header validation. By default, this is true, and HTTP header validations are [RFC-compliant](https://datatracker.ietf.org/doc/html/rfc7230#section-3). Setting to false will enable looser validations that only disallow `\r\n\0` characters, which can be used to bypass header matching rules. ```proto message MyString { // The field `value` must have be a valid HTTP headers, but not enforced with strict rules. string value = 1 [(buf.validate.field).string.strict = false]; } ```optional bool strict = 25 [json_name = "strict"];- Returns:
- The strict.
-
getExampleList
`example` specifies values that the field may have. These values SHOULD conform to other rules. `example` values will not impact validation but may be used as helpful guidance on how to populate the given field. ```proto message MyString { string value = 1 [ (buf.validate.field).string.example = "hello", (buf.validate.field).string.example = "world" ]; } ```repeated string example = 34 [json_name = "example", (.buf.validate.predefined) = { ... }- Returns:
- A list containing the example.
-
getExampleCount
int getExampleCount()`example` specifies values that the field may have. These values SHOULD conform to other rules. `example` values will not impact validation but may be used as helpful guidance on how to populate the given field. ```proto message MyString { string value = 1 [ (buf.validate.field).string.example = "hello", (buf.validate.field).string.example = "world" ]; } ```repeated string example = 34 [json_name = "example", (.buf.validate.predefined) = { ... }- Returns:
- The count of example.
-
getExample
`example` specifies values that the field may have. These values SHOULD conform to other rules. `example` values will not impact validation but may be used as helpful guidance on how to populate the given field. ```proto message MyString { string value = 1 [ (buf.validate.field).string.example = "hello", (buf.validate.field).string.example = "world" ]; } ```repeated string example = 34 [json_name = "example", (.buf.validate.predefined) = { ... }- Parameters:
index- The index of the element to return.- Returns:
- The example at the given index.
-
getExampleBytes
com.google.protobuf.ByteString getExampleBytes(int index) `example` specifies values that the field may have. These values SHOULD conform to other rules. `example` values will not impact validation but may be used as helpful guidance on how to populate the given field. ```proto message MyString { string value = 1 [ (buf.validate.field).string.example = "hello", (buf.validate.field).string.example = "world" ]; } ```repeated string example = 34 [json_name = "example", (.buf.validate.predefined) = { ... }- Parameters:
index- The index of the value to return.- Returns:
- The bytes of the example at the given index.
-
getWellKnownCase
StringRules.WellKnownCase getWellKnownCase()
-