public final class ResourceDescriptor extends GeneratedMessageV3 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"
pattern: "projects/{project}/topics/{topic}"
};
}
The ResourceDescriptor Yaml config will look like:
resources:
- type: "pubsub.googleapis.com/Topic"
pattern: "projects/{project}/topics/{topic}"
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"
pattern: "projects/{project}/logs/{log}"
pattern: "folders/{folder}/logs/{log}"
pattern: "organizations/{organization}/logs/{log}"
pattern: "billingAccounts/{billing_account}/logs/{log}"
};
}
The ResourceDescriptor Yaml config will look like:
resources:
- type: 'logging.googleapis.com/LogEntry'
pattern: "projects/{project}/logs/{log}"
pattern: "folders/{folder}/logs/{log}"
pattern: "organizations/{organization}/logs/{log}"
pattern: "billingAccounts/{billing_account}/logs/{log}"
Protobuf type google.api.ResourceDescriptor
Static Fields
HISTORY_FIELD_NUMBER
public static final int HISTORY_FIELD_NUMBER
Field Value
NAME_FIELD_FIELD_NUMBER
public static final int NAME_FIELD_FIELD_NUMBER
Field Value
PATTERN_FIELD_NUMBER
public static final int PATTERN_FIELD_NUMBER
Field Value
PLURAL_FIELD_NUMBER
public static final int PLURAL_FIELD_NUMBER
Field Value
SINGULAR_FIELD_NUMBER
public static final int SINGULAR_FIELD_NUMBER
Field Value
STYLE_FIELD_NUMBER
public static final int STYLE_FIELD_NUMBER
Field Value
TYPE_FIELD_NUMBER
public static final int TYPE_FIELD_NUMBER
Field Value
Static Methods
getDefaultInstance()
public static ResourceDescriptor getDefaultInstance()
Returns
getDescriptor()
public static final Descriptors.Descriptor getDescriptor()
Returns
newBuilder()
public static ResourceDescriptor.Builder newBuilder()
Returns
newBuilder(ResourceDescriptor prototype)
public static ResourceDescriptor.Builder newBuilder(ResourceDescriptor prototype)
Parameter
Returns
public static ResourceDescriptor parseDelimitedFrom(InputStream input)
Parameter
Returns
Exceptions
public static ResourceDescriptor parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
parseFrom(byte[] data)
public static ResourceDescriptor parseFrom(byte[] data)
Parameter
Name | Description |
data | byte[]
|
Returns
Exceptions
parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
public static ResourceDescriptor parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
parseFrom(ByteString data)
public static ResourceDescriptor parseFrom(ByteString data)
Parameter
Returns
Exceptions
parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
public static ResourceDescriptor parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
public static ResourceDescriptor parseFrom(CodedInputStream input)
Parameter
Returns
Exceptions
public static ResourceDescriptor parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
public static ResourceDescriptor parseFrom(InputStream input)
Parameter
Returns
Exceptions
public static ResourceDescriptor parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
parseFrom(ByteBuffer data)
public static ResourceDescriptor parseFrom(ByteBuffer data)
Parameter
Returns
Exceptions
parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
public static ResourceDescriptor parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
parser()
public static Parser<ResourceDescriptor> parser()
Returns
Methods
equals(Object obj)
public boolean equals(Object obj)
Parameter
Returns
Overrides
getDefaultInstanceForType()
public ResourceDescriptor getDefaultInstanceForType()
Returns
getHistory()
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;
Returns
getHistoryValue()
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;
Returns
Type | Description |
int | The enum numeric value on the wire for history.
|
getNameField()
public 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;
Returns
Type | Description |
String | The nameField.
|
getNameFieldBytes()
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;
Returns
getParserForType()
public Parser<ResourceDescriptor> getParserForType()
Returns
Overrides
getPattern(int index)
public 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;
Parameter
Name | Description |
index | int
The index of the element to return.
|
Returns
Type | Description |
String | The pattern at the given index.
|
getPatternBytes(int index)
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;
Parameter
Name | Description |
index | int
The index of the value to return.
|
Returns
Type | Description |
ByteString | The bytes of the pattern at the given index.
|
getPatternCount()
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;
Returns
Type | Description |
int | The count of pattern.
|
getPatternList()
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;
Returns
getPlural()
public String getPlural()
Returns
Type | Description |
String | The plural.
|
getPluralBytes()
public ByteString getPluralBytes()
Returns
getSerializedSize()
public int getSerializedSize()
Returns
Overrides
getSingular()
public String getSingular()
Returns
Type | Description |
String | The singular.
|
getSingularBytes()
public ByteString getSingularBytes()
Returns
getStyle(int index)
public ResourceDescriptor.Style getStyle(int index)
Style flag(s) for this resource.
These indicate that a resource is expected to conform to a given
style. See the specific style flags for additional information.
repeated .google.api.ResourceDescriptor.Style style = 10;
Parameter
Name | Description |
index | int
The index of the element to return.
|
Returns
getStyleCount()
public int getStyleCount()
Style flag(s) for this resource.
These indicate that a resource is expected to conform to a given
style. See the specific style flags for additional information.
repeated .google.api.ResourceDescriptor.Style style = 10;
Returns
Type | Description |
int | The count of style.
|
getStyleList()
public List<ResourceDescriptor.Style> getStyleList()
Style flag(s) for this resource.
These indicate that a resource is expected to conform to a given
style. See the specific style flags for additional information.
repeated .google.api.ResourceDescriptor.Style style = 10;
Returns
Type | Description |
List<Style> | A list containing the style.
|
getStyleValue(int index)
public int getStyleValue(int index)
Style flag(s) for this resource.
These indicate that a resource is expected to conform to a given
style. See the specific style flags for additional information.
repeated .google.api.ResourceDescriptor.Style style = 10;
Parameter
Name | Description |
index | int
The index of the value to return.
|
Returns
Type | Description |
int | The enum numeric value on the wire of style at the given index.
|
getStyleValueList()
public List<Integer> getStyleValueList()
Style flag(s) for this resource.
These indicate that a resource is expected to conform to a given
style. See the specific style flags for additional information.
repeated .google.api.ResourceDescriptor.Style style = 10;
Returns
Type | Description |
List<Integer> | A list containing the enum numeric values on the wire for style.
|
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+/. 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;
Returns
Type | Description |
String | The type.
|
getTypeBytes()
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+/. 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;
Returns
getUnknownFields()
public final UnknownFieldSet getUnknownFields()
Returns
Overrides
hashCode()
Returns
Overrides
internalGetFieldAccessorTable()
protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
Overrides
isInitialized()
public final boolean isInitialized()
Returns
Overrides
newBuilderForType()
public ResourceDescriptor.Builder newBuilderForType()
Returns
newBuilderForType(GeneratedMessageV3.BuilderParent parent)
protected ResourceDescriptor.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter
Returns
Overrides
newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter
Returns
Overrides
toBuilder()
public ResourceDescriptor.Builder toBuilder()
Returns
writeTo(CodedOutputStream output)
public void writeTo(CodedOutputStream output)
Parameter
Overrides
Exceptions