proto_docs/google/api/resource.rb in google-cloud-billing-budgets-v1beta1-0.2.0 vs proto_docs/google/api/resource.rb in google-cloud-billing-budgets-v1beta1-0.3.0

- old
+ new

@@ -41,16 +41,16 @@ # }; # } # # 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}" + # 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: @@ -181,19 +181,28 @@ # history: ORIGINALLY_SINGLE_PATTERN # }; # } # @!attribute [rw] plural # @return [::String] - # 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 + # The plural name used in the resource name and permission names, such as + # 'projects' for the resource name of 'projects/\\{project}' and the permission + # name of 'cloudresourcemanager.googleapis.com/projects.get'. 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/ + # + # Note: The plural form is required even for singleton resources. See + # https://aip.dev/156 # @!attribute [rw] singular # @return [::String] # 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. + # @!attribute [rw] style + # @return [::Array<::Google::Api::ResourceDescriptor::Style>] + # 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. class ResourceDescriptor include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # A description of the historical or future-looking state of the @@ -209,10 +218,26 @@ # The resource has one pattern, but the API owner expects to add more # later. (This is the inverse of ORIGINALLY_SINGLE_PATTERN, and prevents # that from being necessary once there are multiple patterns.) FUTURE_MULTI_PATTERN = 2 end + + # A flag representing a specific style that a resource claims to conform to. + module Style + # The unspecified value. Do not use. + STYLE_UNSPECIFIED = 0 + + # This resource is intended to be "declarative-friendly". + # + # Declarative-friendly resources must be more strictly consistent, and + # setting this to true communicates to tools that this resource should + # adhere to declarative-friendly expectations. + # + # Note: This is used by the API linter (linter.aip.dev) to enable + # additional checks. + DECLARATIVE_FRIENDLY = 1 + end end # Defines a proto annotation that describes a string field that refers to # an API resource. # @!attribute [rw] type @@ -224,22 +249,33 @@ # message Subscription { # string topic = 2 [(google.api.resource_reference) = { # type: "pubsub.googleapis.com/Topic" # }]; # } + # + # Occasionally, a field may reference an arbitrary resource. In this case, + # APIs use the special value * in their resource reference. + # + # Example: + # + # message GetIamPolicyRequest { + # string resource = 2 [(google.api.resource_reference) = { + # type: "*" + # }]; + # } # @!attribute [rw] child_type # @return [::String] # The resource type of a child collection that the annotated field # references. This is useful for annotating the `parent` field that # doesn't have a fixed resource type. # # Example: # - # message ListLogEntriesRequest { - # string parent = 1 [(google.api.resource_reference) = { - # child_type: "logging.googleapis.com/LogEntry" - # }; - # } + # message ListLogEntriesRequest { + # string parent = 1 [(google.api.resource_reference) = { + # child_type: "logging.googleapis.com/LogEntry" + # }; + # } class ResourceReference include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end