google-cloud-data_catalog-v1 0.4.5 → 0.7.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE.md +188 -190
  3. data/README.md +66 -2
  4. data/lib/google/cloud/data_catalog/v1.rb +5 -0
  5. data/lib/google/cloud/data_catalog/v1/data_catalog/client.rb +244 -120
  6. data/lib/google/cloud/data_catalog/v1/data_catalog/paths.rb +23 -0
  7. data/lib/google/cloud/data_catalog/v1/policy_tag_manager.rb +54 -0
  8. data/lib/google/cloud/data_catalog/v1/policy_tag_manager/client.rb +1321 -0
  9. data/lib/google/cloud/data_catalog/v1/policy_tag_manager/credentials.rb +51 -0
  10. data/lib/google/cloud/data_catalog/v1/policy_tag_manager/paths.rb +90 -0
  11. data/lib/google/cloud/data_catalog/v1/policy_tag_manager_serialization.rb +51 -0
  12. data/lib/google/cloud/data_catalog/v1/policy_tag_manager_serialization/client.rb +474 -0
  13. data/lib/google/cloud/data_catalog/v1/policy_tag_manager_serialization/credentials.rb +51 -0
  14. data/lib/google/cloud/data_catalog/v1/policy_tag_manager_serialization/paths.rb +69 -0
  15. data/lib/google/cloud/data_catalog/v1/version.rb +1 -1
  16. data/lib/google/cloud/datacatalog/v1/common_pb.rb +1 -0
  17. data/lib/google/cloud/datacatalog/v1/data_source_pb.rb +30 -0
  18. data/lib/google/cloud/datacatalog/v1/datacatalog_pb.rb +25 -0
  19. data/lib/google/cloud/datacatalog/v1/datacatalog_services_pb.rb +33 -30
  20. data/lib/google/cloud/datacatalog/v1/policytagmanager_pb.rb +107 -0
  21. data/lib/google/cloud/datacatalog/v1/policytagmanager_services_pb.rb +86 -0
  22. data/lib/google/cloud/datacatalog/v1/policytagmanagerserialization_pb.rb +70 -0
  23. data/lib/google/cloud/datacatalog/v1/policytagmanagerserialization_services_pb.rb +62 -0
  24. data/lib/google/cloud/datacatalog/v1/search_pb.rb +2 -0
  25. data/lib/google/cloud/datacatalog/v1/table_spec_pb.rb +1 -0
  26. data/lib/google/cloud/datacatalog/v1/tags_pb.rb +1 -0
  27. data/proto_docs/google/api/field_behavior.rb +6 -0
  28. data/proto_docs/google/api/resource.rb +50 -14
  29. data/proto_docs/google/cloud/datacatalog/v1/common.rb +3 -0
  30. data/proto_docs/google/cloud/datacatalog/v1/data_source.rb +51 -0
  31. data/proto_docs/google/cloud/datacatalog/v1/datacatalog.rb +212 -111
  32. data/proto_docs/google/cloud/datacatalog/v1/policytagmanager.rb +303 -0
  33. data/proto_docs/google/cloud/datacatalog/v1/policytagmanagerserialization.rb +141 -0
  34. data/proto_docs/google/cloud/datacatalog/v1/schema.rb +16 -4
  35. data/proto_docs/google/cloud/datacatalog/v1/search.rb +14 -0
  36. data/proto_docs/google/cloud/datacatalog/v1/table_spec.rb +3 -0
  37. data/proto_docs/google/cloud/datacatalog/v1/tags.rb +44 -21
  38. data/proto_docs/google/protobuf/timestamp.rb +10 -1
  39. metadata +28 -9
@@ -0,0 +1,86 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # Source: google/cloud/datacatalog/v1/policytagmanager.proto for package 'Google.Cloud.DataCatalog.V1'
3
+ # Original file comments:
4
+ # Copyright 2021 Google LLC
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License");
7
+ # you may not use this file except in compliance with the License.
8
+ # You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+ #
18
+
19
+ require 'grpc'
20
+ require 'google/cloud/datacatalog/v1/policytagmanager_pb'
21
+
22
+ module Google
23
+ module Cloud
24
+ module DataCatalog
25
+ module V1
26
+ module PolicyTagManager
27
+ # Policy Tag Manager API service allows clients to manage their policy tags and
28
+ # taxonomies.
29
+ #
30
+ # Policy tags are used to tag BigQuery columns and apply additional access
31
+ # control policies. A taxonomy is a hierarchical grouping of policy tags that
32
+ # classify data along a common axis.
33
+ class Service
34
+
35
+ include GRPC::GenericService
36
+
37
+ self.marshal_class_method = :encode
38
+ self.unmarshal_class_method = :decode
39
+ self.service_name = 'google.cloud.datacatalog.v1.PolicyTagManager'
40
+
41
+ # Creates a taxonomy in a specified project. The taxonomy is initially empty,
42
+ # i.e., does not contain policy tags.
43
+ rpc :CreateTaxonomy, ::Google::Cloud::DataCatalog::V1::CreateTaxonomyRequest, ::Google::Cloud::DataCatalog::V1::Taxonomy
44
+ # Deletes a taxonomy. This method will also delete all policy tags in this
45
+ # taxonomy, their associated policies, and the policy tags references from
46
+ # BigQuery columns.
47
+ rpc :DeleteTaxonomy, ::Google::Cloud::DataCatalog::V1::DeleteTaxonomyRequest, ::Google::Protobuf::Empty
48
+ # Updates a taxonomy. This method can update the taxonomy's display name,
49
+ # description, and activated policy types.
50
+ rpc :UpdateTaxonomy, ::Google::Cloud::DataCatalog::V1::UpdateTaxonomyRequest, ::Google::Cloud::DataCatalog::V1::Taxonomy
51
+ # Lists all taxonomies in a project in a particular location that the caller
52
+ # has permission to view.
53
+ rpc :ListTaxonomies, ::Google::Cloud::DataCatalog::V1::ListTaxonomiesRequest, ::Google::Cloud::DataCatalog::V1::ListTaxonomiesResponse
54
+ # Gets a taxonomy.
55
+ rpc :GetTaxonomy, ::Google::Cloud::DataCatalog::V1::GetTaxonomyRequest, ::Google::Cloud::DataCatalog::V1::Taxonomy
56
+ # Creates a policy tag in a taxonomy.
57
+ rpc :CreatePolicyTag, ::Google::Cloud::DataCatalog::V1::CreatePolicyTagRequest, ::Google::Cloud::DataCatalog::V1::PolicyTag
58
+ # Deletes a policy tag. This method also deletes:
59
+ #
60
+ # * all of its descendant policy tags, if any
61
+ # * the policies associated with the policy tag and its descendants
62
+ # * references from BigQuery table schema of the policy tag and its
63
+ # descendants.
64
+ rpc :DeletePolicyTag, ::Google::Cloud::DataCatalog::V1::DeletePolicyTagRequest, ::Google::Protobuf::Empty
65
+ # Updates a policy tag. This method can update the policy tag's display
66
+ # name, description, and parent policy tag.
67
+ rpc :UpdatePolicyTag, ::Google::Cloud::DataCatalog::V1::UpdatePolicyTagRequest, ::Google::Cloud::DataCatalog::V1::PolicyTag
68
+ # Lists all policy tags in a taxonomy.
69
+ rpc :ListPolicyTags, ::Google::Cloud::DataCatalog::V1::ListPolicyTagsRequest, ::Google::Cloud::DataCatalog::V1::ListPolicyTagsResponse
70
+ # Gets a policy tag.
71
+ rpc :GetPolicyTag, ::Google::Cloud::DataCatalog::V1::GetPolicyTagRequest, ::Google::Cloud::DataCatalog::V1::PolicyTag
72
+ # Gets the IAM policy for a policy tag or a taxonomy.
73
+ rpc :GetIamPolicy, ::Google::Iam::V1::GetIamPolicyRequest, ::Google::Iam::V1::Policy
74
+ # Sets the IAM policy for a policy tag or a taxonomy.
75
+ rpc :SetIamPolicy, ::Google::Iam::V1::SetIamPolicyRequest, ::Google::Iam::V1::Policy
76
+ # Returns the permissions that a caller has on a specified policy tag or
77
+ # taxonomy.
78
+ rpc :TestIamPermissions, ::Google::Iam::V1::TestIamPermissionsRequest, ::Google::Iam::V1::TestIamPermissionsResponse
79
+ end
80
+
81
+ Stub = Service.rpc_stub_class
82
+ end
83
+ end
84
+ end
85
+ end
86
+ end
@@ -0,0 +1,70 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/datacatalog/v1/policytagmanagerserialization.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/api/annotations_pb'
7
+ require 'google/api/field_behavior_pb'
8
+ require 'google/api/resource_pb'
9
+ require 'google/cloud/datacatalog/v1/policytagmanager_pb'
10
+ require 'google/iam/v1/policy_pb'
11
+ require 'google/api/client_pb'
12
+ Google::Protobuf::DescriptorPool.generated_pool.build do
13
+ add_file("google/cloud/datacatalog/v1/policytagmanagerserialization.proto", :syntax => :proto3) do
14
+ add_message "google.cloud.datacatalog.v1.SerializedTaxonomy" do
15
+ optional :display_name, :string, 1
16
+ optional :description, :string, 2
17
+ repeated :policy_tags, :message, 3, "google.cloud.datacatalog.v1.SerializedPolicyTag"
18
+ repeated :activated_policy_types, :enum, 4, "google.cloud.datacatalog.v1.Taxonomy.PolicyType"
19
+ end
20
+ add_message "google.cloud.datacatalog.v1.SerializedPolicyTag" do
21
+ optional :policy_tag, :string, 1
22
+ optional :display_name, :string, 2
23
+ optional :description, :string, 3
24
+ repeated :child_policy_tags, :message, 4, "google.cloud.datacatalog.v1.SerializedPolicyTag"
25
+ end
26
+ add_message "google.cloud.datacatalog.v1.ImportTaxonomiesRequest" do
27
+ optional :parent, :string, 1
28
+ oneof :source do
29
+ optional :inline_source, :message, 2, "google.cloud.datacatalog.v1.InlineSource"
30
+ optional :cross_regional_source, :message, 3, "google.cloud.datacatalog.v1.CrossRegionalSource"
31
+ end
32
+ end
33
+ add_message "google.cloud.datacatalog.v1.InlineSource" do
34
+ repeated :taxonomies, :message, 1, "google.cloud.datacatalog.v1.SerializedTaxonomy"
35
+ end
36
+ add_message "google.cloud.datacatalog.v1.CrossRegionalSource" do
37
+ optional :taxonomy, :string, 1
38
+ end
39
+ add_message "google.cloud.datacatalog.v1.ImportTaxonomiesResponse" do
40
+ repeated :taxonomies, :message, 1, "google.cloud.datacatalog.v1.Taxonomy"
41
+ end
42
+ add_message "google.cloud.datacatalog.v1.ExportTaxonomiesRequest" do
43
+ optional :parent, :string, 1
44
+ repeated :taxonomies, :string, 2
45
+ oneof :destination do
46
+ optional :serialized_taxonomies, :bool, 3
47
+ end
48
+ end
49
+ add_message "google.cloud.datacatalog.v1.ExportTaxonomiesResponse" do
50
+ repeated :taxonomies, :message, 1, "google.cloud.datacatalog.v1.SerializedTaxonomy"
51
+ end
52
+ end
53
+ end
54
+
55
+ module Google
56
+ module Cloud
57
+ module DataCatalog
58
+ module V1
59
+ SerializedTaxonomy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.SerializedTaxonomy").msgclass
60
+ SerializedPolicyTag = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.SerializedPolicyTag").msgclass
61
+ ImportTaxonomiesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.ImportTaxonomiesRequest").msgclass
62
+ InlineSource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.InlineSource").msgclass
63
+ CrossRegionalSource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.CrossRegionalSource").msgclass
64
+ ImportTaxonomiesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.ImportTaxonomiesResponse").msgclass
65
+ ExportTaxonomiesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.ExportTaxonomiesRequest").msgclass
66
+ ExportTaxonomiesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.ExportTaxonomiesResponse").msgclass
67
+ end
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,62 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # Source: google/cloud/datacatalog/v1/policytagmanagerserialization.proto for package 'Google.Cloud.DataCatalog.V1'
3
+ # Original file comments:
4
+ # Copyright 2021 Google LLC
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License");
7
+ # you may not use this file except in compliance with the License.
8
+ # You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+ #
18
+
19
+ require 'grpc'
20
+ require 'google/cloud/datacatalog/v1/policytagmanagerserialization_pb'
21
+
22
+ module Google
23
+ module Cloud
24
+ module DataCatalog
25
+ module V1
26
+ module PolicyTagManagerSerialization
27
+ # Policy Tag Manager serialization API service allows clients to manipulate
28
+ # their policy tags and taxonomies in serialized format, where taxonomy is a
29
+ # hierarchical group of policy tags.
30
+ class Service
31
+
32
+ include GRPC::GenericService
33
+
34
+ self.marshal_class_method = :encode
35
+ self.unmarshal_class_method = :decode
36
+ self.service_name = 'google.cloud.datacatalog.v1.PolicyTagManagerSerialization'
37
+
38
+ # Creates new taxonomies (including their policy tags) by importing from
39
+ # inlined source or cross-regional source. New taxonomies will be created in
40
+ # a given parent project.
41
+ #
42
+ # If using the cross-regional source, a new taxonomy is created by copying
43
+ # from a source in another region.
44
+ #
45
+ # If using the inlined source, this method provides a way to bulk create
46
+ # taxonomies and policy tags using nested proto structure.
47
+ rpc :ImportTaxonomies, ::Google::Cloud::DataCatalog::V1::ImportTaxonomiesRequest, ::Google::Cloud::DataCatalog::V1::ImportTaxonomiesResponse
48
+ # Exports taxonomies as the requested type and returns the taxonomies
49
+ # including their policy tags. The requested taxonomies must belong to one
50
+ # project.
51
+ #
52
+ # SerializedTaxonomy protos with nested policy tags that are generated by
53
+ # this method can be used as input for future ImportTaxonomies calls.
54
+ rpc :ExportTaxonomies, ::Google::Cloud::DataCatalog::V1::ExportTaxonomiesRequest, ::Google::Cloud::DataCatalog::V1::ExportTaxonomiesResponse
55
+ end
56
+
57
+ Stub = Service.rpc_stub_class
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end
@@ -13,6 +13,8 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
13
13
  optional :search_result_subtype, :string, 2
14
14
  optional :relative_resource_name, :string, 3
15
15
  optional :linked_resource, :string, 4
16
+ optional :modify_time, :message, 7, "google.protobuf.Timestamp"
17
+ optional :fully_qualified_name, :string, 10
16
18
  oneof :system do
17
19
  optional :integrated_system, :enum, 8, "google.cloud.datacatalog.v1.IntegratedSystem"
18
20
  optional :user_specified_system, :string, 9
@@ -29,6 +29,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
29
29
  value :TABLE_SOURCE_TYPE_UNSPECIFIED, 0
30
30
  value :BIGQUERY_VIEW, 2
31
31
  value :BIGQUERY_TABLE, 5
32
+ value :BIGQUERY_MATERIALIZED_VIEW, 7
32
33
  end
33
34
  end
34
35
  end
@@ -41,6 +41,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
41
41
  optional :display_name, :string, 1
42
42
  optional :type, :message, 2, "google.cloud.datacatalog.v1.FieldType"
43
43
  optional :is_required, :bool, 3
44
+ optional :description, :string, 4
44
45
  optional :order, :int32, 5
45
46
  end
46
47
  add_message "google.cloud.datacatalog.v1.FieldType" do
@@ -54,6 +54,12 @@ module Google
54
54
  # This indicates that the field may be set once in a request to create a
55
55
  # resource, but may not be changed thereafter.
56
56
  IMMUTABLE = 5
57
+
58
+ # Denotes that a (repeated) field is an unordered list.
59
+ # This indicates that the service may provide the elements of the list
60
+ # in any arbitrary order, rather than the order the user originally
61
+ # provided. Additionally, the list's order may or may not be stable.
62
+ UNORDERED_LIST = 6
57
63
  end
58
64
  end
59
65
  end
@@ -43,12 +43,12 @@ module Google
43
43
  #
44
44
  # The ResourceDescriptor Yaml config will look like:
45
45
  #
46
- # resources:
47
- # - type: "pubsub.googleapis.com/Topic"
48
- # name_descriptor:
49
- # - pattern: "projects/\\{project}/topics/\\{topic}"
50
- # parent_type: "cloudresourcemanager.googleapis.com/Project"
51
- # parent_name_extractor: "projects/\\{project}"
46
+ # resources:
47
+ # - type: "pubsub.googleapis.com/Topic"
48
+ # name_descriptor:
49
+ # - pattern: "projects/{project}/topics/{topic}"
50
+ # parent_type: "cloudresourcemanager.googleapis.com/Project"
51
+ # parent_name_extractor: "projects/{project}"
52
52
  #
53
53
  # Sometimes, resources have multiple patterns, typically because they can
54
54
  # live under multiple parents.
@@ -183,15 +183,24 @@ module Google
183
183
  # }
184
184
  # @!attribute [rw] plural
185
185
  # @return [::String]
186
- # The plural name used in the resource name, such as 'projects' for
187
- # the name of 'projects/\\{project}'. It is the same concept of the `plural`
188
- # field in k8s CRD spec
186
+ # The plural name used in the resource name and permission names, such as
187
+ # 'projects' for the resource name of 'projects/\\{project}' and the permission
188
+ # name of 'cloudresourcemanager.googleapis.com/projects.get'. It is the same
189
+ # concept of the `plural` field in k8s CRD spec
189
190
  # https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
191
+ #
192
+ # Note: The plural form is required even for singleton resources. See
193
+ # https://aip.dev/156
190
194
  # @!attribute [rw] singular
191
195
  # @return [::String]
192
196
  # The same concept of the `singular` field in k8s CRD spec
193
197
  # https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
194
198
  # Such as "project" for the `resourcemanager.googleapis.com/Project` type.
199
+ # @!attribute [rw] style
200
+ # @return [::Array<::Google::Api::ResourceDescriptor::Style>]
201
+ # Style flag(s) for this resource.
202
+ # These indicate that a resource is expected to conform to a given
203
+ # style. See the specific style flags for additional information.
195
204
  class ResourceDescriptor
196
205
  include ::Google::Protobuf::MessageExts
197
206
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -211,6 +220,22 @@ module Google
211
220
  # that from being necessary once there are multiple patterns.)
212
221
  FUTURE_MULTI_PATTERN = 2
213
222
  end
223
+
224
+ # A flag representing a specific style that a resource claims to conform to.
225
+ module Style
226
+ # The unspecified value. Do not use.
227
+ STYLE_UNSPECIFIED = 0
228
+
229
+ # This resource is intended to be "declarative-friendly".
230
+ #
231
+ # Declarative-friendly resources must be more strictly consistent, and
232
+ # setting this to true communicates to tools that this resource should
233
+ # adhere to declarative-friendly expectations.
234
+ #
235
+ # Note: This is used by the API linter (linter.aip.dev) to enable
236
+ # additional checks.
237
+ DECLARATIVE_FRIENDLY = 1
238
+ end
214
239
  end
215
240
 
216
241
  # Defines a proto annotation that describes a string field that refers to
@@ -226,6 +251,17 @@ module Google
226
251
  # type: "pubsub.googleapis.com/Topic"
227
252
  # }];
228
253
  # }
254
+ #
255
+ # Occasionally, a field may reference an arbitrary resource. In this case,
256
+ # APIs use the special value * in their resource reference.
257
+ #
258
+ # Example:
259
+ #
260
+ # message GetIamPolicyRequest {
261
+ # string resource = 2 [(google.api.resource_reference) = {
262
+ # type: "*"
263
+ # }];
264
+ # }
229
265
  # @!attribute [rw] child_type
230
266
  # @return [::String]
231
267
  # The resource type of a child collection that the annotated field
@@ -234,11 +270,11 @@ module Google
234
270
  #
235
271
  # Example:
236
272
  #
237
- # message ListLogEntriesRequest {
238
- # string parent = 1 [(google.api.resource_reference) = {
239
- # child_type: "logging.googleapis.com/LogEntry"
240
- # };
241
- # }
273
+ # message ListLogEntriesRequest {
274
+ # string parent = 1 [(google.api.resource_reference) = {
275
+ # child_type: "logging.googleapis.com/LogEntry"
276
+ # };
277
+ # }
242
278
  class ResourceReference
243
279
  include ::Google::Protobuf::MessageExts
244
280
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -32,6 +32,9 @@ module Google
32
32
 
33
33
  # Cloud Pub/Sub.
34
34
  CLOUD_PUBSUB = 2
35
+
36
+ # Dataproc Metastore.
37
+ DATAPROC_METASTORE = 3
35
38
  end
36
39
  end
37
40
  end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module DataCatalog
23
+ module V1
24
+ # Describes the physical location of an entry.
25
+ # @!attribute [rw] service
26
+ # @return [::Google::Cloud::DataCatalog::V1::DataSource::Service]
27
+ # Service in which the data is physically stored.
28
+ # @!attribute [rw] resource
29
+ # @return [::String]
30
+ # Full name of the resource as defined by the service, e.g.
31
+ # //bigquery.googleapis.com/projects/\\{project_id}/locations/\\{location}/datasets/\\{dataset_id}/tables/\\{table_id}
32
+ class DataSource
33
+ include ::Google::Protobuf::MessageExts
34
+ extend ::Google::Protobuf::MessageExts::ClassMethods
35
+
36
+ # Service name where the data is stored.
37
+ module Service
38
+ # Default unknown service.
39
+ SERVICE_UNSPECIFIED = 0
40
+
41
+ # Google Cloud Storage service.
42
+ CLOUD_STORAGE = 1
43
+
44
+ # BigQuery service.
45
+ BIGQUERY = 2
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
@@ -31,8 +31,8 @@ module Google
31
31
  # return an error in such a case.
32
32
  # @!attribute [rw] query
33
33
  # @return [::String]
34
- # Required. The query string in search query syntax. The query must be
35
- # non-empty.
34
+ # Optional. The query string in search query syntax. An empty query string will result
35
+ # in all data assets (in the specified scope) that the user has access to.
36
36
  #
37
37
  # Query strings can be simple as "x" or more qualified as:
38
38
  #
@@ -51,8 +51,8 @@ module Google
51
51
  # @!attribute [rw] page_token
52
52
  # @return [::String]
53
53
  # Optional. Pagination token returned in an earlier
54
- # {::Google::Cloud::DataCatalog::V1::SearchCatalogResponse#next_page_token SearchCatalogResponse.next_page_token},
55
- # which indicates that this is a continuation of a prior
54
+ # {::Google::Cloud::DataCatalog::V1::SearchCatalogResponse#next_page_token SearchCatalogResponse.next_page_token}, which
55
+ # indicates that this is a continuation of a prior
56
56
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#search_catalog SearchCatalogRequest}
57
57
  # call, and that the system should return the next page of data. If empty,
58
58
  # the first page is returned.
@@ -91,39 +91,14 @@ module Google
91
91
  # @return [::Array<::String>]
92
92
  # Optional. The list of locations to search within.
93
93
  # 1. If empty, search will be performed in all locations;
94
- # 2. If any of the locations are NOT in the valid locations list, error
95
- # will be returned;
94
+ # 2. If any of the locations are NOT [supported
95
+ # regions](https://cloud.google.com/data-catalog/docs/concepts/regions#supported_regions),
96
+ # error will be returned;
96
97
  # 3. Otherwise, search only the given locations for matching results.
97
98
  # Typical usage is to leave this field empty. When a location is
98
99
  # unreachable as returned in the `SearchCatalogResponse.unreachable` field,
99
100
  # users can repeat the search request with this parameter set to get
100
101
  # additional information on the error.
101
- #
102
- # Valid locations:
103
- # * asia-east1
104
- # * asia-east2
105
- # * asia-northeast1
106
- # * asia-northeast2
107
- # * asia-northeast3
108
- # * asia-south1
109
- # * asia-southeast1
110
- # * australia-southeast1
111
- # * eu
112
- # * europe-north1
113
- # * europe-west1
114
- # * europe-west2
115
- # * europe-west3
116
- # * europe-west4
117
- # * europe-west6
118
- # * global
119
- # * northamerica-northeast1
120
- # * southamerica-east1
121
- # * us
122
- # * us-central1
123
- # * us-east1
124
- # * us-east4
125
- # * us-west1
126
- # * us-west2
127
102
  class Scope
128
103
  include ::Google::Protobuf::MessageExts
129
104
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -143,7 +118,7 @@ module Google
143
118
  # Unreachable locations. Search result does not include data from those
144
119
  # locations. Users can get additional information on the error by repeating
145
120
  # the search request with a more restrictive parameter -- setting the value
146
- # for `SearchDataCatalogRequest.scope.include_locations`.
121
+ # for `SearchDataCatalogRequest.scope.restricted_locations`.
147
122
  class SearchCatalogResponse
148
123
  include ::Google::Protobuf::MessageExts
149
124
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -153,17 +128,19 @@ module Google
153
128
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#create_entry_group CreateEntryGroup}.
154
129
  # @!attribute [rw] parent
155
130
  # @return [::String]
156
- # Required. The name of the project this entry group is in. Example:
131
+ # Required. The name of the project this entry group belongs to. Example:
157
132
  #
158
- # * projects/\\{project_id}/locations/\\{location}
133
+ # `projects/{project_id}/locations/{location}`
159
134
  #
160
- # Note that this EntryGroup and its child resources may not actually be
161
- # stored in the location in this name.
135
+ # Note: The entry group itself and its child resources might not be
136
+ # stored in the location specified in its name.
162
137
  # @!attribute [rw] entry_group_id
163
138
  # @return [::String]
164
- # Required. The id of the entry group to create.
165
- # The id must begin with a letter or underscore, contain only English
166
- # letters, numbers and underscores, and be at most 64 characters.
139
+ # Required. The ID of the entry group to create.
140
+ #
141
+ # The ID must contain only letters (a-z, A-Z), numbers (0-9),
142
+ # underscores (_), and must start with a letter or underscore.
143
+ # The maximum size is 64 bytes when encoded in UTF-8.
167
144
  # @!attribute [rw] entry_group
168
145
  # @return [::Google::Cloud::DataCatalog::V1::EntryGroup]
169
146
  # The entry group to create. Defaults to an empty entry group.
@@ -179,8 +156,11 @@ module Google
179
156
  # Required. The updated entry group. "name" field must be set.
180
157
  # @!attribute [rw] update_mask
181
158
  # @return [::Google::Protobuf::FieldMask]
182
- # The fields to update on the entry group. If absent or empty, all modifiable
183
- # fields are updated.
159
+ # Names of fields whose values to overwrite on an entry group.
160
+ #
161
+ # If this parameter is absent or empty, all modifiable fields
162
+ # are overwritten. If such fields are non-required and omitted in the
163
+ # request body, their values are emptied.
184
164
  class UpdateEntryGroupRequest
185
165
  include ::Google::Protobuf::MessageExts
186
166
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -218,18 +198,18 @@ module Google
218
198
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#list_entry_groups ListEntryGroups}.
219
199
  # @!attribute [rw] parent
220
200
  # @return [::String]
221
- # Required. The name of the location that contains the entry groups, which
222
- # can be provided in URL format. Example:
201
+ # Required. The name of the location that contains the entry groups, which can be
202
+ # provided in URL format. Example:
223
203
  #
224
204
  # * projects/\\{project_id}/locations/\\{location}
225
205
  # @!attribute [rw] page_size
226
206
  # @return [::Integer]
227
- # Optional. The maximum number of items to return. Default is 10. Max limit
228
- # is 1000. Throws an invalid argument for `page_size > 1000`.
207
+ # Optional. The maximum number of items to return. Default is 10. Max limit is 1000.
208
+ # Throws an invalid argument for `page_size > 1000`.
229
209
  # @!attribute [rw] page_token
230
210
  # @return [::String]
231
- # Optional. Token that specifies which page is requested. If empty, the first
232
- # page is returned.
211
+ # Optional. Token that specifies which page is requested. If empty, the first page is
212
+ # returned.
233
213
  class ListEntryGroupsRequest
234
214
  include ::Google::Protobuf::MessageExts
235
215
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -253,15 +233,19 @@ module Google
253
233
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#create_entry CreateEntry}.
254
234
  # @!attribute [rw] parent
255
235
  # @return [::String]
256
- # Required. The name of the entry group this entry is in. Example:
236
+ # Required. The name of the entry group this entry belongs to. Example:
257
237
  #
258
- # * projects/\\{project_id}/locations/\\{location}/entryGroups/\\{entry_group_id}
238
+ # `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`
259
239
  #
260
- # Note that this Entry and its child resources may not actually be stored in
261
- # the location in this name.
240
+ # Note: The entry itself and its child resources might not be stored in
241
+ # the location specified in its name.
262
242
  # @!attribute [rw] entry_id
263
243
  # @return [::String]
264
- # Required. The id of the entry to create.
244
+ # Required. The ID of the entry to create.
245
+ #
246
+ # The ID must contain only letters (a-z, A-Z), numbers (0-9),
247
+ # and underscores (_).
248
+ # The maximum size is 64 bytes when encoded in UTF-8.
265
249
  # @!attribute [rw] entry
266
250
  # @return [::Google::Cloud::DataCatalog::V1::Entry]
267
251
  # Required. The entry to create.
@@ -277,26 +261,30 @@ module Google
277
261
  # Required. The updated entry. The "name" field must be set.
278
262
  # @!attribute [rw] update_mask
279
263
  # @return [::Google::Protobuf::FieldMask]
280
- # The fields to update on the entry. If absent or empty, all modifiable
281
- # fields are updated.
264
+ # Names of fields whose values to overwrite on an entry.
265
+ #
266
+ # If this parameter is absent or empty, all modifiable fields
267
+ # are overwritten. If such fields are non-required and omitted in the
268
+ # request body, their values are emptied.
282
269
  #
283
270
  # The following fields are modifiable:
271
+ #
284
272
  # * For entries with type `DATA_STREAM`:
285
273
  # * `schema`
286
- # * For entries with type `FILESET`
274
+ # * For entries with type `FILESET`:
287
275
  # * `schema`
288
276
  # * `display_name`
289
277
  # * `description`
290
278
  # * `gcs_fileset_spec`
291
279
  # * `gcs_fileset_spec.file_patterns`
292
- # * For entries with `user_specified_type`
280
+ # * For entries with `user_specified_type`:
293
281
  # * `schema`
294
282
  # * `display_name`
295
283
  # * `description`
296
- # * user_specified_type
297
- # * user_specified_system
298
- # * linked_resource
299
- # * source_system_timestamps
284
+ # * `user_specified_type`
285
+ # * `user_specified_system`
286
+ # * `linked_resource`
287
+ # * `source_system_timestamps`
300
288
  class UpdateEntryRequest
301
289
  include ::Google::Protobuf::MessageExts
302
290
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -351,8 +339,25 @@ module Google
351
339
  # * `bigquery.dataset.project_id.dataset_id`
352
340
  # * `datacatalog.entry.project_id.location_id.entry_group_id.entry_id`
353
341
  #
354
- # `*_id`s shoud satisfy the standard SQL rules for identifiers.
342
+ # `*_id`s should satisfy the standard SQL rules for identifiers.
355
343
  # https://cloud.google.com/bigquery/docs/reference/standard-sql/lexical.
344
+ # @!attribute [rw] fully_qualified_name
345
+ # @return [::String]
346
+ # Fully qualified name (FQN) of the resource.
347
+ #
348
+ # FQNs take two forms:
349
+ #
350
+ # * For non-regionalized resources:
351
+ #
352
+ # `{SYSTEM}:{PROJECT}.{PATH_TO_RESOURCE_SEPARATED_WITH_DOTS}`
353
+ #
354
+ # * For regionalized resources:
355
+ #
356
+ # `{SYSTEM}:{PROJECT}.{LOCATION_ID}.{PATH_TO_RESOURCE_SEPARATED_WITH_DOTS}`
357
+ #
358
+ # Example for a DPMS table:
359
+ #
360
+ # `dataproc_metastore:project_id.location_id.instance_id.database_id.table_id`
356
361
  class LookupEntryRequest
357
362
  include ::Google::Protobuf::MessageExts
358
363
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -368,14 +373,15 @@ module Google
368
373
  # An Entry resource contains resource details, such as its schema. An Entry can
369
374
  # also be used to attach flexible metadata, such as a
370
375
  # {::Google::Cloud::DataCatalog::V1::Tag Tag}.
371
- # @!attribute [rw] name
376
+ # @!attribute [r] name
372
377
  # @return [::String]
373
- # The Data Catalog resource name of the entry in URL format. Example:
378
+ # Output only. The resource name of an entry in URL format.
379
+ # Example:
374
380
  #
375
- # * projects/\\{project_id}/locations/\\{location}/entryGroups/\\{entry_group_id}/entries/\\{entry_id}
381
+ # `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}`
376
382
  #
377
- # Note that this Entry and its child resources may not actually be stored in
378
- # the location in this name.
383
+ # Note: The entry itself and its child resources might not be
384
+ # stored in the location specified in its name.
379
385
  # @!attribute [rw] linked_resource
380
386
  # @return [::String]
381
387
  # The resource this metadata entry refers to.
@@ -385,11 +391,37 @@ module Google
385
391
  # resource](https://cloud.google.com/apis/design/resource_names#full_resource_name).
386
392
  # For example, the `linked_resource` for a table resource from BigQuery is:
387
393
  #
388
- # * //bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableId
394
+ # `//bigquery.googleapis.com/projects/{projectId}/datasets/{datasetId}/tables/{tableId}`
389
395
  #
390
- # Output only when Entry is of type in the EntryType enum. For entries with
391
- # user_specified_type, this field is optional and defaults to an empty
392
- # string.
396
+ # Output only when entry is one of the types in the `EntryType` enum.
397
+ #
398
+ # For entries with a `user_specified_type`, this field is optional and
399
+ # defaults to an empty string.
400
+ #
401
+ # The resource string must contain only letters (a-z, A-Z), numbers (0-9),
402
+ # underscores (_), periods (.), colons (:), slashes (/), dashes (-),
403
+ # and hashes (#).
404
+ # The maximum size is 200 bytes when encoded in UTF-8.
405
+ # @!attribute [rw] fully_qualified_name
406
+ # @return [::String]
407
+ # Fully qualified name (FQN) of the resource. Set automatically for entries
408
+ # representing resources from synced systems. Settable only during creation
409
+ # and read-only afterwards. Can be used for search and lookup of the entries.
410
+ #
411
+ #
412
+ # FQNs take two forms:
413
+ #
414
+ # * For non-regionalized resources:
415
+ #
416
+ # `{SYSTEM}:{PROJECT}.{PATH_TO_RESOURCE_SEPARATED_WITH_DOTS}`
417
+ #
418
+ # * For regionalized resources:
419
+ #
420
+ # `{SYSTEM}:{PROJECT}.{LOCATION_ID}.{PATH_TO_RESOURCE_SEPARATED_WITH_DOTS}`
421
+ #
422
+ # Example for a DPMS table:
423
+ #
424
+ # `dataproc_metastore:project_id.location_id.instance_id.database_id.table_id`
393
425
  # @!attribute [rw] type
394
426
  # @return [::Google::Cloud::DataCatalog::V1::EntryType]
395
427
  # The type of the entry.
@@ -408,8 +440,8 @@ module Google
408
440
  # through Data Catalog must use `user_specified_type`.
409
441
  # @!attribute [r] integrated_system
410
442
  # @return [::Google::Cloud::DataCatalog::V1::IntegratedSystem]
411
- # Output only. This field indicates the entry's source system that Data
412
- # Catalog integrates with, such as BigQuery or Pub/Sub.
443
+ # Output only. This field indicates the entry's source system that Data Catalog
444
+ # integrates with, such as BigQuery or Pub/Sub.
413
445
  # @!attribute [rw] user_specified_system
414
446
  # @return [::String]
415
447
  # This field indicates the entry's source system that Data Catalog does not
@@ -430,15 +462,28 @@ module Google
430
462
  # Specification for a group of BigQuery tables with name pattern
431
463
  # `[prefix]YYYYMMDD`. Context:
432
464
  # https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding.
465
+ # @!attribute [rw] database_table_spec
466
+ # @return [::Google::Cloud::DataCatalog::V1::DatabaseTableSpec]
467
+ # Specification that applies to a table resource. Only valid
468
+ # for entries of `TABLE` type.
433
469
  # @!attribute [rw] display_name
434
470
  # @return [::String]
435
- # Display information such as title and description. A short name to identify
436
- # the entry, for example, "Analytics Data - Jan 2011". Default value is an
437
- # empty string.
471
+ # Display name of an entry.
472
+ #
473
+ # The name must contain only Unicode letters, numbers (0-9), underscores (_),
474
+ # dashes (-), spaces ( ), and can't start or end with spaces.
475
+ # The maximum size is 200 bytes when encoded in UTF-8.
476
+ # Default value is an empty string.
438
477
  # @!attribute [rw] description
439
478
  # @return [::String]
440
- # Entry description, which can consist of several sentences or paragraphs
441
- # that describe entry contents. Default value is an empty string.
479
+ # Entry description that can consist of several sentences or paragraphs
480
+ # that describe entry contents.
481
+ #
482
+ # The description must not contain Unicode non-characters as well as C0
483
+ # and C1 control codes except tabs (HT), new lines (LF), carriage returns
484
+ # (CR), and page breaks (FF).
485
+ # The maximum size is 2000 bytes when encoded in UTF-8.
486
+ # Default value is an empty string.
442
487
  # @!attribute [rw] schema
443
488
  # @return [::Google::Cloud::DataCatalog::V1::Schema]
444
489
  # Schema of the entry. An entry might not have any schema attached to it.
@@ -448,11 +493,36 @@ module Google
448
493
  # entry. Output only when Entry is of type in the EntryType enum. For entries
449
494
  # with user_specified_type, this field is optional and defaults to an empty
450
495
  # timestamp.
496
+ # @!attribute [r] data_source
497
+ # @return [::Google::Cloud::DataCatalog::V1::DataSource]
498
+ # Output only. Physical location of the entry.
451
499
  class Entry
452
500
  include ::Google::Protobuf::MessageExts
453
501
  extend ::Google::Protobuf::MessageExts::ClassMethods
454
502
  end
455
503
 
504
+ # Specification that applies to a table resource. Only valid
505
+ # for entries of `TABLE` type.
506
+ # @!attribute [rw] type
507
+ # @return [::Google::Cloud::DataCatalog::V1::DatabaseTableSpec::TableType]
508
+ # Type of this table.
509
+ class DatabaseTableSpec
510
+ include ::Google::Protobuf::MessageExts
511
+ extend ::Google::Protobuf::MessageExts::ClassMethods
512
+
513
+ # Type of the table.
514
+ module TableType
515
+ # Default unknown table type.
516
+ TABLE_TYPE_UNSPECIFIED = 0
517
+
518
+ # Native table.
519
+ NATIVE = 1
520
+
521
+ # External table.
522
+ EXTERNAL = 2
523
+ end
524
+ end
525
+
456
526
  # EntryGroup Metadata.
457
527
  # An EntryGroup resource represents a logical grouping of zero or more
458
528
  # Data Catalog {::Google::Cloud::DataCatalog::V1::Entry Entry} resources.
@@ -460,10 +530,10 @@ module Google
460
530
  # @return [::String]
461
531
  # The resource name of the entry group in URL format. Example:
462
532
  #
463
- # * projects/\\{project_id}/locations/\\{location}/entryGroups/\\{entry_group_id}
533
+ # `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`
464
534
  #
465
- # Note that this EntryGroup and its child resources may not actually be
466
- # stored in the location in this name.
535
+ # Note: The entry group itself and its child resources might not be
536
+ # stored in the location specified in its name.
467
537
  # @!attribute [rw] display_name
468
538
  # @return [::String]
469
539
  # A short name to identify the entry group, for example,
@@ -475,8 +545,7 @@ module Google
475
545
  # string.
476
546
  # @!attribute [r] data_catalog_timestamps
477
547
  # @return [::Google::Cloud::DataCatalog::V1::SystemTimestamps]
478
- # Output only. Timestamps about this EntryGroup. Default value is empty
479
- # timestamps.
548
+ # Output only. Timestamps about this EntryGroup. Default value is empty timestamps.
480
549
  class EntryGroup
481
550
  include ::Google::Protobuf::MessageExts
482
551
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -494,7 +563,11 @@ module Google
494
563
  # * projects/\\{project_id}/locations/us-central1
495
564
  # @!attribute [rw] tag_template_id
496
565
  # @return [::String]
497
- # Required. The id of the tag template to create.
566
+ # Required. The ID of the tag template to create.
567
+ #
568
+ # The ID must contain only lowercase letters (a-z), numbers (0-9),
569
+ # or underscores (_), and must start with a letter or underscore.
570
+ # The maximum size is 64 bytes when encoded in UTF-8.
498
571
  # @!attribute [rw] tag_template
499
572
  # @return [::Google::Cloud::DataCatalog::V1::TagTemplate]
500
573
  # Required. The tag template to create.
@@ -522,13 +595,12 @@ module Google
522
595
  # Required. The template to update. The "name" field must be set.
523
596
  # @!attribute [rw] update_mask
524
597
  # @return [::Google::Protobuf::FieldMask]
525
- # The field mask specifies the parts of the template to overwrite.
526
- #
527
- # Allowed fields:
528
- #
529
- # * `display_name`
598
+ # Names of fields whose values to overwrite on a tag template. Currently,
599
+ # only `display_name` can be overwritten.
530
600
  #
531
- # If absent or empty, all of the allowed fields above will be updated.
601
+ # In general, if this parameter is absent or empty, all modifiable fields
602
+ # are overwritten. If such fields are non-required and omitted in the
603
+ # request body, their values are emptied.
532
604
  class UpdateTagTemplateRequest
533
605
  include ::Google::Protobuf::MessageExts
534
606
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -555,13 +627,13 @@ module Google
555
627
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#create_tag CreateTag}.
556
628
  # @!attribute [rw] parent
557
629
  # @return [::String]
558
- # Required. The name of the resource to attach this tag to. Tags can be
559
- # attached to Entries. Example:
630
+ # Required. The name of the resource to attach this tag to. Tags can be attached to
631
+ # entries. An entry can have up to 1000 attached tags. Example:
560
632
  #
561
- # * projects/\\{project_id}/locations/\\{location}/entryGroups/\\{entry_group_id}/entries/\\{entry_id}
633
+ # `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}`
562
634
  #
563
- # Note that this Tag and its child resources may not actually be stored in
564
- # the location in this name.
635
+ # Note: The tag and its child resources might not be stored in
636
+ # the location specified in its name.
565
637
  # @!attribute [rw] tag
566
638
  # @return [::Google::Cloud::DataCatalog::V1::Tag]
567
639
  # Required. The tag to create.
@@ -577,8 +649,12 @@ module Google
577
649
  # Required. The updated tag. The "name" field must be set.
578
650
  # @!attribute [rw] update_mask
579
651
  # @return [::Google::Protobuf::FieldMask]
580
- # The fields to update on the Tag. If absent or empty, all modifiable fields
581
- # are updated. Currently the only modifiable field is the field `fields`.
652
+ # Names of fields whose values to overwrite on a tag. Currently, a tag has
653
+ # the only modifiable field with the name `fields`.
654
+ #
655
+ # In general, if this parameter is absent or empty, all modifiable fields
656
+ # are overwritten. If such fields are non-required and omitted in the
657
+ # request body, their values are emptied.
582
658
  class UpdateTagRequest
583
659
  include ::Google::Protobuf::MessageExts
584
660
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -609,7 +685,10 @@ module Google
609
685
  # @!attribute [rw] tag_template_field_id
610
686
  # @return [::String]
611
687
  # Required. The ID of the tag template field to create.
612
- # Field ids can contain letters (both uppercase and lowercase), numbers
688
+ #
689
+ # Note: Adding a required field to an existing template is *not* allowed.
690
+ #
691
+ # Field IDs can contain letters (both uppercase and lowercase), numbers
613
692
  # (0-9), underscores (_) and dashes (-). Field IDs must be at least 1
614
693
  # character long and at most 128 characters long. Field IDs must also be
615
694
  # unique within their template.
@@ -633,20 +712,22 @@ module Google
633
712
  # Required. The template to update.
634
713
  # @!attribute [rw] update_mask
635
714
  # @return [::Google::Protobuf::FieldMask]
636
- # Optional. The field mask specifies the parts of the template to be updated.
637
- # Allowed fields:
715
+ # Optional. Names of fields whose values to overwrite on an individual field of a tag
716
+ # template. The following fields are modifiable:
638
717
  #
639
718
  # * `display_name`
640
719
  # * `type.enum_type`
641
720
  # * `is_required`
642
721
  #
643
- # If `update_mask` is not set or empty, all of the allowed fields above will
644
- # be updated.
722
+ # If this parameter is absent or empty, all modifiable fields
723
+ # are overwritten. If such fields are non-required and omitted in the request
724
+ # body, their values are emptied with one exception: when updating an enum
725
+ # type, the provided values are merged with the existing values. Therefore,
726
+ # enum values can only be added, existing enum values cannot be deleted or
727
+ # renamed.
645
728
  #
646
- # When updating an enum type, the provided values will be merged with the
647
- # existing values. Therefore, enum values can only be added, existing enum
648
- # values cannot be deleted nor renamed. Updating a template field from
649
- # optional to required is NOT allowed.
729
+ # Additionally, updating a template field from optional to required is
730
+ # *not* allowed.
650
731
  class UpdateTagTemplateFieldRequest
651
732
  include ::Google::Protobuf::MessageExts
652
733
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -661,13 +742,27 @@ module Google
661
742
  # * projects/\\{project_id}/locations/\\{location}/tagTemplates/\\{tag_template_id}/fields/\\{tag_template_field_id}
662
743
  # @!attribute [rw] new_tag_template_field_id
663
744
  # @return [::String]
664
- # Required. The new ID of this tag template field. For example,
665
- # `my_new_field`.
745
+ # Required. The new ID of this tag template field. For example, `my_new_field`.
666
746
  class RenameTagTemplateFieldRequest
667
747
  include ::Google::Protobuf::MessageExts
668
748
  extend ::Google::Protobuf::MessageExts::ClassMethods
669
749
  end
670
750
 
751
+ # Request message for
752
+ # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#rename_tag_template_field_enum_value RenameTagTemplateFieldEnumValue}.
753
+ # @!attribute [rw] name
754
+ # @return [::String]
755
+ # Required. The name of the enum field value. Example:
756
+ #
757
+ # * projects/\\{project_id}/locations/\\{location}/tagTemplates/\\{tag_template_id}/fields/\\{tag_template_field_id}/enumValues/\\{enum_value_display_name}
758
+ # @!attribute [rw] new_enum_value_display_name
759
+ # @return [::String]
760
+ # Required. The new display name of the enum value. For example, `my_new_enum_value`.
761
+ class RenameTagTemplateFieldEnumValueRequest
762
+ include ::Google::Protobuf::MessageExts
763
+ extend ::Google::Protobuf::MessageExts::ClassMethods
764
+ end
765
+
671
766
  # Request message for
672
767
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#delete_tag_template_field DeleteTagTemplateField}.
673
768
  # @!attribute [rw] name
@@ -689,8 +784,8 @@ module Google
689
784
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#list_tags ListTags}.
690
785
  # @!attribute [rw] parent
691
786
  # @return [::String]
692
- # Required. The name of the Data Catalog resource to list the tags of. The
693
- # resource could be an {::Google::Cloud::DataCatalog::V1::Entry Entry} or an
787
+ # Required. The name of the Data Catalog resource to list the tags of. The resource
788
+ # could be an {::Google::Cloud::DataCatalog::V1::Entry Entry} or an
694
789
  # {::Google::Cloud::DataCatalog::V1::EntryGroup EntryGroup}.
695
790
  #
696
791
  # Examples:
@@ -779,13 +874,19 @@ module Google
779
874
  # https://cloud.google.com/bigquery-ml/docs/bigqueryml-intro
780
875
  MODEL = 5
781
876
 
782
- # Output only. An entry type which is used for streaming entries. Example:
877
+ # An entry type which is used for streaming entries. Example:
783
878
  # Pub/Sub topic.
784
879
  DATA_STREAM = 3
785
880
 
786
881
  # An entry type which is a set of files or objects. Example:
787
882
  # Cloud Storage fileset.
788
883
  FILESET = 4
884
+
885
+ # A database.
886
+ DATABASE = 7
887
+
888
+ # A service, for example, a Dataproc Metastore service.
889
+ SERVICE = 14
789
890
  end
790
891
  end
791
892
  end