public static final class ResourceDescriptor.Builder extends GeneratedMessageV3.Builder<ResourceDescriptor.Builder> implements ResourceDescriptorOrBuilder
A simple descriptor of a resource type. ResourceDescriptor annotates a resource message (either by means of a protobuf annotation or use in the service config), and associates the resource's schema, the resource type, and the pattern of the resource name. Example: message Topic { // Indicates this message defines a resource schema. // Declares the resource type in the format of {service}/{kind}. // For Kubernetes resources, the format is {api group}/{kind}. option (google.api.resource) = { type: "pubsub.googleapis.com/Topic" name_descriptor: { pattern: "projects/{project}/topics/{topic}" parent_type: "cloudresourcemanager.googleapis.com/Project" parent_name_extractor: "projects/{project}" } }; } The ResourceDescriptor Yaml config will look like: resources: - type: "pubsub.googleapis.com/Topic" name_descriptor: - pattern: "projects/{project}/topics/{topic}" parent_type: "cloudresourcemanager.googleapis.com/Project" parent_name_extractor: "projects/{project}" Sometimes, resources have multiple patterns, typically because they can live under multiple parents. Example: message LogEntry { option (google.api.resource) = { type: "logging.googleapis.com/LogEntry" name_descriptor: { pattern: "projects/{project}/logs/{log}" parent_type: "cloudresourcemanager.googleapis.com/Project" parent_name_extractor: "projects/{project}" } name_descriptor: { pattern: "folders/{folder}/logs/{log}" parent_type: "cloudresourcemanager.googleapis.com/Folder" parent_name_extractor: "folders/{folder}" } name_descriptor: { pattern: "organizations/{organization}/logs/{log}" parent_type: "cloudresourcemanager.googleapis.com/Organization" parent_name_extractor: "organizations/{organization}" } name_descriptor: { pattern: "billingAccounts/{billing_account}/logs/{log}" parent_type: "billing.googleapis.com/BillingAccount" parent_name_extractor: "billingAccounts/{billing_account}" } }; } The ResourceDescriptor Yaml config will look like: resources: - type: 'logging.googleapis.com/LogEntry' name_descriptor: - pattern: "projects/{project}/logs/{log}" parent_type: "cloudresourcemanager.googleapis.com/Project" parent_name_extractor: "projects/{project}" - pattern: "folders/{folder}/logs/{log}" parent_type: "cloudresourcemanager.googleapis.com/Folder" parent_name_extractor: "folders/{folder}" - pattern: "organizations/{organization}/logs/{log}" parent_type: "cloudresourcemanager.googleapis.com/Organization" parent_name_extractor: "organizations/{organization}" - pattern: "billingAccounts/{billing_account}/logs/{log}" parent_type: "billing.googleapis.com/BillingAccount" parent_name_extractor: "billingAccounts/{billing_account}" For flexible resources, the resource name doesn't contain parent names, but the resource itself has parents for policy evaluation. Example: message Shelf { option (google.api.resource) = { type: "library.googleapis.com/Shelf" name_descriptor: { pattern: "shelves/{shelf}" parent_type: "cloudresourcemanager.googleapis.com/Project" } name_descriptor: { pattern: "shelves/{shelf}" parent_type: "cloudresourcemanager.googleapis.com/Folder" } }; } The ResourceDescriptor Yaml config will look like: resources: - type: 'library.googleapis.com/Shelf' name_descriptor: - pattern: "shelves/{shelf}" parent_type: "cloudresourcemanager.googleapis.com/Project" - pattern: "shelves/{shelf}" parent_type: "cloudresourcemanager.googleapis.com/Folder"Protobuf type
google.api.ResourceDescriptor
Modifier and Type | Method and Description |
---|---|
ResourceDescriptor.Builder |
addAllPattern(java.lang.Iterable<java.lang.String> values)
Optional.
|
ResourceDescriptor.Builder |
addPattern(java.lang.String value)
Optional.
|
ResourceDescriptor.Builder |
addPatternBytes(ByteString value)
Optional.
|
ResourceDescriptor.Builder |
addRepeatedField(Descriptors.FieldDescriptor field,
java.lang.Object value) |
ResourceDescriptor |
build() |
ResourceDescriptor |
buildPartial() |
ResourceDescriptor.Builder |
clear() |
ResourceDescriptor.Builder |
clearField(Descriptors.FieldDescriptor field) |
ResourceDescriptor.Builder |
clearHistory()
Optional.
|
ResourceDescriptor.Builder |
clearNameField()
Optional.
|
ResourceDescriptor.Builder |
clearOneof(Descriptors.OneofDescriptor oneof) |
ResourceDescriptor.Builder |
clearPattern()
Optional.
|
ResourceDescriptor.Builder |
clearPlural()
The plural name used in the resource name, such as 'projects' for
the name of 'projects/{project}'.
|
ResourceDescriptor.Builder |
clearSingular()
The same concept of the `singular` field in k8s CRD spec
https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
Such as "project" for the `resourcemanager.googleapis.com/Project` type.
|
ResourceDescriptor.Builder |
clearType()
The resource type.
|
ResourceDescriptor.Builder |
clone() |
ResourceDescriptor |
getDefaultInstanceForType() |
static Descriptors.Descriptor |
getDescriptor() |
Descriptors.Descriptor |
getDescriptorForType() |
ResourceDescriptor.History |
getHistory()
Optional.
|
int |
getHistoryValue()
Optional.
|
java.lang.String |
getNameField()
Optional.
|
ByteString |
getNameFieldBytes()
Optional.
|
java.lang.String |
getPattern(int index)
Optional.
|
ByteString |
getPatternBytes(int index)
Optional.
|
int |
getPatternCount()
Optional.
|
ProtocolStringList |
getPatternList()
Optional.
|
java.lang.String |
getPlural()
The plural name used in the resource name, such as 'projects' for
the name of 'projects/{project}'.
|
ByteString |
getPluralBytes()
The plural name used in the resource name, such as 'projects' for
the name of 'projects/{project}'.
|
java.lang.String |
getSingular()
The same concept of the `singular` field in k8s CRD spec
https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
Such as "project" for the `resourcemanager.googleapis.com/Project` type.
|
ByteString |
getSingularBytes()
The same concept of the `singular` field in k8s CRD spec
https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
Such as "project" for the `resourcemanager.googleapis.com/Project` type.
|
java.lang.String |
getType()
The resource type.
|
ByteString |
getTypeBytes()
The resource type.
|
protected GeneratedMessageV3.FieldAccessorTable |
internalGetFieldAccessorTable() |
boolean |
isInitialized() |
ResourceDescriptor.Builder |
mergeFrom(CodedInputStream input,
ExtensionRegistryLite extensionRegistry) |
ResourceDescriptor.Builder |
mergeFrom(Message other) |
ResourceDescriptor.Builder |
mergeFrom(ResourceDescriptor other) |
ResourceDescriptor.Builder |
mergeUnknownFields(UnknownFieldSet unknownFields) |
ResourceDescriptor.Builder |
setField(Descriptors.FieldDescriptor field,
java.lang.Object value) |
ResourceDescriptor.Builder |
setHistory(ResourceDescriptor.History value)
Optional.
|
ResourceDescriptor.Builder |
setHistoryValue(int value)
Optional.
|
ResourceDescriptor.Builder |
setNameField(java.lang.String value)
Optional.
|
ResourceDescriptor.Builder |
setNameFieldBytes(ByteString value)
Optional.
|
ResourceDescriptor.Builder |
setPattern(int index,
java.lang.String value)
Optional.
|
ResourceDescriptor.Builder |
setPlural(java.lang.String value)
The plural name used in the resource name, such as 'projects' for
the name of 'projects/{project}'.
|
ResourceDescriptor.Builder |
setPluralBytes(ByteString value)
The plural name used in the resource name, such as 'projects' for
the name of 'projects/{project}'.
|
ResourceDescriptor.Builder |
setRepeatedField(Descriptors.FieldDescriptor field,
int index,
java.lang.Object value) |
ResourceDescriptor.Builder |
setSingular(java.lang.String value)
The same concept of the `singular` field in k8s CRD spec
https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
Such as "project" for the `resourcemanager.googleapis.com/Project` type.
|
ResourceDescriptor.Builder |
setSingularBytes(ByteString value)
The same concept of the `singular` field in k8s CRD spec
https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
Such as "project" for the `resourcemanager.googleapis.com/Project` type.
|
ResourceDescriptor.Builder |
setType(java.lang.String value)
The resource type.
|
ResourceDescriptor.Builder |
setTypeBytes(ByteString value)
The resource type.
|
ResourceDescriptor.Builder |
setUnknownFields(UnknownFieldSet unknownFields) |
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMutableMapField, isClean, markClean, newBuilderForField, onBuilt, onChanged, setUnknownFieldsProto3
findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toString
addAll, addAll, mergeFrom, newUninitializedMessageException
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
findInitializationErrors, getAllFields, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
mergeFrom
public static final Descriptors.Descriptor getDescriptor()
protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
internalGetFieldAccessorTable
in class GeneratedMessageV3.Builder<ResourceDescriptor.Builder>
public ResourceDescriptor.Builder clear()
clear
in interface Message.Builder
clear
in interface MessageLite.Builder
clear
in class GeneratedMessageV3.Builder<ResourceDescriptor.Builder>
public Descriptors.Descriptor getDescriptorForType()
getDescriptorForType
in interface Message.Builder
getDescriptorForType
in interface MessageOrBuilder
getDescriptorForType
in class GeneratedMessageV3.Builder<ResourceDescriptor.Builder>
public ResourceDescriptor getDefaultInstanceForType()
getDefaultInstanceForType
in interface MessageLiteOrBuilder
getDefaultInstanceForType
in interface MessageOrBuilder
public ResourceDescriptor build()
build
in interface Message.Builder
build
in interface MessageLite.Builder
public ResourceDescriptor buildPartial()
buildPartial
in interface Message.Builder
buildPartial
in interface MessageLite.Builder
public ResourceDescriptor.Builder clone()
clone
in interface Message.Builder
clone
in interface MessageLite.Builder
clone
in class GeneratedMessageV3.Builder<ResourceDescriptor.Builder>
public ResourceDescriptor.Builder setField(Descriptors.FieldDescriptor field, java.lang.Object value)
setField
in interface Message.Builder
setField
in class GeneratedMessageV3.Builder<ResourceDescriptor.Builder>
public ResourceDescriptor.Builder clearField(Descriptors.FieldDescriptor field)
clearField
in interface Message.Builder
clearField
in class GeneratedMessageV3.Builder<ResourceDescriptor.Builder>
public ResourceDescriptor.Builder clearOneof(Descriptors.OneofDescriptor oneof)
clearOneof
in interface Message.Builder
clearOneof
in class GeneratedMessageV3.Builder<ResourceDescriptor.Builder>
public ResourceDescriptor.Builder setRepeatedField(Descriptors.FieldDescriptor field, int index, java.lang.Object value)
setRepeatedField
in interface Message.Builder
setRepeatedField
in class GeneratedMessageV3.Builder<ResourceDescriptor.Builder>
public ResourceDescriptor.Builder addRepeatedField(Descriptors.FieldDescriptor field, java.lang.Object value)
addRepeatedField
in interface Message.Builder
addRepeatedField
in class GeneratedMessageV3.Builder<ResourceDescriptor.Builder>
public ResourceDescriptor.Builder mergeFrom(Message other)
mergeFrom
in interface Message.Builder
mergeFrom
in class AbstractMessage.Builder<ResourceDescriptor.Builder>
public ResourceDescriptor.Builder mergeFrom(ResourceDescriptor other)
public final boolean isInitialized()
isInitialized
in interface MessageLiteOrBuilder
isInitialized
in class GeneratedMessageV3.Builder<ResourceDescriptor.Builder>
public ResourceDescriptor.Builder mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry) throws java.io.IOException
mergeFrom
in interface Message.Builder
mergeFrom
in interface MessageLite.Builder
mergeFrom
in class AbstractMessage.Builder<ResourceDescriptor.Builder>
java.io.IOException
public java.lang.String getType()
The resource type. It must be in the format of {service_name}/{resource_type_kind}. The `resource_type_kind` must be singular and must not include version numbers. Example: `storage.googleapis.com/Bucket` The value of the resource_type_kind must follow the regular expression /[A-Za-z][a-zA-Z0-9]+/. It should start with an upper case character and should use PascalCase (UpperCamelCase). The maximum number of characters allowed for the `resource_type_kind` is 100.
string type = 1;
getType
in interface ResourceDescriptorOrBuilder
public ByteString getTypeBytes()
The resource type. It must be in the format of {service_name}/{resource_type_kind}. The `resource_type_kind` must be singular and must not include version numbers. Example: `storage.googleapis.com/Bucket` The value of the resource_type_kind must follow the regular expression /[A-Za-z][a-zA-Z0-9]+/. It should start with an upper case character and should use PascalCase (UpperCamelCase). The maximum number of characters allowed for the `resource_type_kind` is 100.
string type = 1;
getTypeBytes
in interface ResourceDescriptorOrBuilder
public ResourceDescriptor.Builder setType(java.lang.String value)
The resource type. It must be in the format of {service_name}/{resource_type_kind}. The `resource_type_kind` must be singular and must not include version numbers. Example: `storage.googleapis.com/Bucket` The value of the resource_type_kind must follow the regular expression /[A-Za-z][a-zA-Z0-9]+/. It should start with an upper case character and should use PascalCase (UpperCamelCase). The maximum number of characters allowed for the `resource_type_kind` is 100.
string type = 1;
public ResourceDescriptor.Builder clearType()
The resource type. It must be in the format of {service_name}/{resource_type_kind}. The `resource_type_kind` must be singular and must not include version numbers. Example: `storage.googleapis.com/Bucket` The value of the resource_type_kind must follow the regular expression /[A-Za-z][a-zA-Z0-9]+/. It should start with an upper case character and should use PascalCase (UpperCamelCase). The maximum number of characters allowed for the `resource_type_kind` is 100.
string type = 1;
public ResourceDescriptor.Builder setTypeBytes(ByteString value)
The resource type. It must be in the format of {service_name}/{resource_type_kind}. The `resource_type_kind` must be singular and must not include version numbers. Example: `storage.googleapis.com/Bucket` The value of the resource_type_kind must follow the regular expression /[A-Za-z][a-zA-Z0-9]+/. It should start with an upper case character and should use PascalCase (UpperCamelCase). The maximum number of characters allowed for the `resource_type_kind` is 100.
string type = 1;
public ProtocolStringList getPatternList()
Optional. The relative resource name pattern associated with this resource type. The DNS prefix of the full resource name shouldn't be specified here. The path pattern must follow the syntax, which aligns with HTTP binding syntax: Template = Segment { "/" Segment } ; Segment = LITERAL | Variable ; Variable = "{" LITERAL "}" ; Examples: - "projects/{project}/topics/{topic}" - "projects/{project}/knowledgeBases/{knowledge_base}" The components in braces correspond to the IDs for each resource in the hierarchy. It is expected that, if multiple patterns are provided, the same component name (e.g. "project") refers to IDs of the same type of resource.
repeated string pattern = 2;
getPatternList
in interface ResourceDescriptorOrBuilder
public int getPatternCount()
Optional. The relative resource name pattern associated with this resource type. The DNS prefix of the full resource name shouldn't be specified here. The path pattern must follow the syntax, which aligns with HTTP binding syntax: Template = Segment { "/" Segment } ; Segment = LITERAL | Variable ; Variable = "{" LITERAL "}" ; Examples: - "projects/{project}/topics/{topic}" - "projects/{project}/knowledgeBases/{knowledge_base}" The components in braces correspond to the IDs for each resource in the hierarchy. It is expected that, if multiple patterns are provided, the same component name (e.g. "project") refers to IDs of the same type of resource.
repeated string pattern = 2;
getPatternCount
in interface ResourceDescriptorOrBuilder
public java.lang.String getPattern(int index)
Optional. The relative resource name pattern associated with this resource type. The DNS prefix of the full resource name shouldn't be specified here. The path pattern must follow the syntax, which aligns with HTTP binding syntax: Template = Segment { "/" Segment } ; Segment = LITERAL | Variable ; Variable = "{" LITERAL "}" ; Examples: - "projects/{project}/topics/{topic}" - "projects/{project}/knowledgeBases/{knowledge_base}" The components in braces correspond to the IDs for each resource in the hierarchy. It is expected that, if multiple patterns are provided, the same component name (e.g. "project") refers to IDs of the same type of resource.
repeated string pattern = 2;
getPattern
in interface ResourceDescriptorOrBuilder
public ByteString getPatternBytes(int index)
Optional. The relative resource name pattern associated with this resource type. The DNS prefix of the full resource name shouldn't be specified here. The path pattern must follow the syntax, which aligns with HTTP binding syntax: Template = Segment { "/" Segment } ; Segment = LITERAL | Variable ; Variable = "{" LITERAL "}" ; Examples: - "projects/{project}/topics/{topic}" - "projects/{project}/knowledgeBases/{knowledge_base}" The components in braces correspond to the IDs for each resource in the hierarchy. It is expected that, if multiple patterns are provided, the same component name (e.g. "project") refers to IDs of the same type of resource.
repeated string pattern = 2;
getPatternBytes
in interface ResourceDescriptorOrBuilder
public ResourceDescriptor.Builder setPattern(int index, java.lang.String value)
Optional. The relative resource name pattern associated with this resource type. The DNS prefix of the full resource name shouldn't be specified here. The path pattern must follow the syntax, which aligns with HTTP binding syntax: Template = Segment { "/" Segment } ; Segment = LITERAL | Variable ; Variable = "{" LITERAL "}" ; Examples: - "projects/{project}/topics/{topic}" - "projects/{project}/knowledgeBases/{knowledge_base}" The components in braces correspond to the IDs for each resource in the hierarchy. It is expected that, if multiple patterns are provided, the same component name (e.g. "project") refers to IDs of the same type of resource.
repeated string pattern = 2;
public ResourceDescriptor.Builder addPattern(java.lang.String value)
Optional. The relative resource name pattern associated with this resource type. The DNS prefix of the full resource name shouldn't be specified here. The path pattern must follow the syntax, which aligns with HTTP binding syntax: Template = Segment { "/" Segment } ; Segment = LITERAL | Variable ; Variable = "{" LITERAL "}" ; Examples: - "projects/{project}/topics/{topic}" - "projects/{project}/knowledgeBases/{knowledge_base}" The components in braces correspond to the IDs for each resource in the hierarchy. It is expected that, if multiple patterns are provided, the same component name (e.g. "project") refers to IDs of the same type of resource.
repeated string pattern = 2;
public ResourceDescriptor.Builder addAllPattern(java.lang.Iterable<java.lang.String> values)
Optional. The relative resource name pattern associated with this resource type. The DNS prefix of the full resource name shouldn't be specified here. The path pattern must follow the syntax, which aligns with HTTP binding syntax: Template = Segment { "/" Segment } ; Segment = LITERAL | Variable ; Variable = "{" LITERAL "}" ; Examples: - "projects/{project}/topics/{topic}" - "projects/{project}/knowledgeBases/{knowledge_base}" The components in braces correspond to the IDs for each resource in the hierarchy. It is expected that, if multiple patterns are provided, the same component name (e.g. "project") refers to IDs of the same type of resource.
repeated string pattern = 2;
public ResourceDescriptor.Builder clearPattern()
Optional. The relative resource name pattern associated with this resource type. The DNS prefix of the full resource name shouldn't be specified here. The path pattern must follow the syntax, which aligns with HTTP binding syntax: Template = Segment { "/" Segment } ; Segment = LITERAL | Variable ; Variable = "{" LITERAL "}" ; Examples: - "projects/{project}/topics/{topic}" - "projects/{project}/knowledgeBases/{knowledge_base}" The components in braces correspond to the IDs for each resource in the hierarchy. It is expected that, if multiple patterns are provided, the same component name (e.g. "project") refers to IDs of the same type of resource.
repeated string pattern = 2;
public ResourceDescriptor.Builder addPatternBytes(ByteString value)
Optional. The relative resource name pattern associated with this resource type. The DNS prefix of the full resource name shouldn't be specified here. The path pattern must follow the syntax, which aligns with HTTP binding syntax: Template = Segment { "/" Segment } ; Segment = LITERAL | Variable ; Variable = "{" LITERAL "}" ; Examples: - "projects/{project}/topics/{topic}" - "projects/{project}/knowledgeBases/{knowledge_base}" The components in braces correspond to the IDs for each resource in the hierarchy. It is expected that, if multiple patterns are provided, the same component name (e.g. "project") refers to IDs of the same type of resource.
repeated string pattern = 2;
public java.lang.String getNameField()
Optional. The field on the resource that designates the resource name field. If omitted, this is assumed to be "name".
string name_field = 3;
getNameField
in interface ResourceDescriptorOrBuilder
public ByteString getNameFieldBytes()
Optional. The field on the resource that designates the resource name field. If omitted, this is assumed to be "name".
string name_field = 3;
getNameFieldBytes
in interface ResourceDescriptorOrBuilder
public ResourceDescriptor.Builder setNameField(java.lang.String value)
Optional. The field on the resource that designates the resource name field. If omitted, this is assumed to be "name".
string name_field = 3;
public ResourceDescriptor.Builder clearNameField()
Optional. The field on the resource that designates the resource name field. If omitted, this is assumed to be "name".
string name_field = 3;
public ResourceDescriptor.Builder setNameFieldBytes(ByteString value)
Optional. The field on the resource that designates the resource name field. If omitted, this is assumed to be "name".
string name_field = 3;
public int getHistoryValue()
Optional. The historical or future-looking state of the resource pattern. Example: // The InspectTemplate message originally only supported resource // names with organization, and project was added later. message InspectTemplate { option (google.api.resource) = { type: "dlp.googleapis.com/InspectTemplate" pattern: "organizations/{organization}/inspectTemplates/{inspect_template}" pattern: "projects/{project}/inspectTemplates/{inspect_template}" history: ORIGINALLY_SINGLE_PATTERN }; }
.google.api.ResourceDescriptor.History history = 4;
getHistoryValue
in interface ResourceDescriptorOrBuilder
public ResourceDescriptor.Builder setHistoryValue(int value)
Optional. The historical or future-looking state of the resource pattern. Example: // The InspectTemplate message originally only supported resource // names with organization, and project was added later. message InspectTemplate { option (google.api.resource) = { type: "dlp.googleapis.com/InspectTemplate" pattern: "organizations/{organization}/inspectTemplates/{inspect_template}" pattern: "projects/{project}/inspectTemplates/{inspect_template}" history: ORIGINALLY_SINGLE_PATTERN }; }
.google.api.ResourceDescriptor.History history = 4;
public ResourceDescriptor.History getHistory()
Optional. The historical or future-looking state of the resource pattern. Example: // The InspectTemplate message originally only supported resource // names with organization, and project was added later. message InspectTemplate { option (google.api.resource) = { type: "dlp.googleapis.com/InspectTemplate" pattern: "organizations/{organization}/inspectTemplates/{inspect_template}" pattern: "projects/{project}/inspectTemplates/{inspect_template}" history: ORIGINALLY_SINGLE_PATTERN }; }
.google.api.ResourceDescriptor.History history = 4;
getHistory
in interface ResourceDescriptorOrBuilder
public ResourceDescriptor.Builder setHistory(ResourceDescriptor.History value)
Optional. The historical or future-looking state of the resource pattern. Example: // The InspectTemplate message originally only supported resource // names with organization, and project was added later. message InspectTemplate { option (google.api.resource) = { type: "dlp.googleapis.com/InspectTemplate" pattern: "organizations/{organization}/inspectTemplates/{inspect_template}" pattern: "projects/{project}/inspectTemplates/{inspect_template}" history: ORIGINALLY_SINGLE_PATTERN }; }
.google.api.ResourceDescriptor.History history = 4;
public ResourceDescriptor.Builder clearHistory()
Optional. The historical or future-looking state of the resource pattern. Example: // The InspectTemplate message originally only supported resource // names with organization, and project was added later. message InspectTemplate { option (google.api.resource) = { type: "dlp.googleapis.com/InspectTemplate" pattern: "organizations/{organization}/inspectTemplates/{inspect_template}" pattern: "projects/{project}/inspectTemplates/{inspect_template}" history: ORIGINALLY_SINGLE_PATTERN }; }
.google.api.ResourceDescriptor.History history = 4;
public java.lang.String getPlural()
The plural name used in the resource name, such as 'projects' for the name of 'projects/{project}'. It is the same concept of the `plural` field in k8s CRD spec https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
string plural = 5;
getPlural
in interface ResourceDescriptorOrBuilder
public ByteString getPluralBytes()
The plural name used in the resource name, such as 'projects' for the name of 'projects/{project}'. It is the same concept of the `plural` field in k8s CRD spec https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
string plural = 5;
getPluralBytes
in interface ResourceDescriptorOrBuilder
public ResourceDescriptor.Builder setPlural(java.lang.String value)
The plural name used in the resource name, such as 'projects' for the name of 'projects/{project}'. It is the same concept of the `plural` field in k8s CRD spec https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
string plural = 5;
public ResourceDescriptor.Builder clearPlural()
The plural name used in the resource name, such as 'projects' for the name of 'projects/{project}'. It is the same concept of the `plural` field in k8s CRD spec https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
string plural = 5;
public ResourceDescriptor.Builder setPluralBytes(ByteString value)
The plural name used in the resource name, such as 'projects' for the name of 'projects/{project}'. It is the same concept of the `plural` field in k8s CRD spec https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
string plural = 5;
public java.lang.String getSingular()
The same concept of the `singular` field in k8s CRD spec https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ Such as "project" for the `resourcemanager.googleapis.com/Project` type.
string singular = 6;
getSingular
in interface ResourceDescriptorOrBuilder
public ByteString getSingularBytes()
The same concept of the `singular` field in k8s CRD spec https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ Such as "project" for the `resourcemanager.googleapis.com/Project` type.
string singular = 6;
getSingularBytes
in interface ResourceDescriptorOrBuilder
public ResourceDescriptor.Builder setSingular(java.lang.String value)
The same concept of the `singular` field in k8s CRD spec https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ Such as "project" for the `resourcemanager.googleapis.com/Project` type.
string singular = 6;
public ResourceDescriptor.Builder clearSingular()
The same concept of the `singular` field in k8s CRD spec https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ Such as "project" for the `resourcemanager.googleapis.com/Project` type.
string singular = 6;
public ResourceDescriptor.Builder setSingularBytes(ByteString value)
The same concept of the `singular` field in k8s CRD spec https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ Such as "project" for the `resourcemanager.googleapis.com/Project` type.
string singular = 6;
public final ResourceDescriptor.Builder setUnknownFields(UnknownFieldSet unknownFields)
setUnknownFields
in interface Message.Builder
setUnknownFields
in class GeneratedMessageV3.Builder<ResourceDescriptor.Builder>
public final ResourceDescriptor.Builder mergeUnknownFields(UnknownFieldSet unknownFields)
mergeUnknownFields
in interface Message.Builder
mergeUnknownFields
in class GeneratedMessageV3.Builder<ResourceDescriptor.Builder>