google-cloud-data_catalog-v1 0.7.3 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/data_catalog/v1/data_catalog.rb +2 -2
  3. data/lib/google/cloud/data_catalog/v1/data_catalog/client.rb +303 -291
  4. data/lib/google/cloud/data_catalog/v1/policy_tag_manager.rb +1 -1
  5. data/lib/google/cloud/data_catalog/v1/policy_tag_manager/client.rb +54 -45
  6. data/lib/google/cloud/data_catalog/v1/policy_tag_manager_serialization.rb +4 -3
  7. data/lib/google/cloud/data_catalog/v1/policy_tag_manager_serialization/client.rb +109 -22
  8. data/lib/google/cloud/data_catalog/v1/version.rb +1 -1
  9. data/lib/google/cloud/datacatalog/v1/bigquery_pb.rb +48 -0
  10. data/lib/google/cloud/datacatalog/v1/datacatalog_pb.rb +44 -0
  11. data/lib/google/cloud/datacatalog/v1/datacatalog_services_pb.rb +179 -142
  12. data/lib/google/cloud/datacatalog/v1/policytagmanager_services_pb.rb +15 -14
  13. data/lib/google/cloud/datacatalog/v1/policytagmanagerserialization_pb.rb +5 -0
  14. data/lib/google/cloud/datacatalog/v1/policytagmanagerserialization_services_pb.rb +28 -14
  15. data/lib/google/cloud/datacatalog/v1/tags_pb.rb +3 -0
  16. data/lib/google/cloud/datacatalog/v1/usage_pb.rb +31 -0
  17. data/proto_docs/google/cloud/datacatalog/v1/bigquery.rb +87 -0
  18. data/proto_docs/google/cloud/datacatalog/v1/common.rb +1 -2
  19. data/proto_docs/google/cloud/datacatalog/v1/data_source.rb +6 -5
  20. data/proto_docs/google/cloud/datacatalog/v1/datacatalog.rb +370 -246
  21. data/proto_docs/google/cloud/datacatalog/v1/gcs_fileset_spec.rb +16 -15
  22. data/proto_docs/google/cloud/datacatalog/v1/policytagmanager.rb +87 -71
  23. data/proto_docs/google/cloud/datacatalog/v1/policytagmanagerserialization.rb +34 -19
  24. data/proto_docs/google/cloud/datacatalog/v1/schema.rb +3 -3
  25. data/proto_docs/google/cloud/datacatalog/v1/search.rb +43 -29
  26. data/proto_docs/google/cloud/datacatalog/v1/table_spec.rb +23 -16
  27. data/proto_docs/google/cloud/datacatalog/v1/tags.rb +96 -51
  28. data/proto_docs/google/cloud/datacatalog/v1/timestamps.rb +12 -5
  29. data/proto_docs/google/cloud/datacatalog/v1/usage.rb +79 -0
  30. metadata +6 -2
@@ -24,7 +24,7 @@ module Google
24
24
  module DataCatalog
25
25
  module V1
26
26
  module PolicyTagManager
27
- # Policy Tag Manager API service allows clients to manage their policy tags and
27
+ # Policy Tag Manager API service allows you to manage your policy tags and
28
28
  # taxonomies.
29
29
  #
30
30
  # Policy tags are used to tag BigQuery columns and apply additional access
@@ -38,31 +38,32 @@ module Google
38
38
  self.unmarshal_class_method = :decode
39
39
  self.service_name = 'google.cloud.datacatalog.v1.PolicyTagManager'
40
40
 
41
- # Creates a taxonomy in a specified project. The taxonomy is initially empty,
42
- # i.e., does not contain policy tags.
41
+ # Creates a taxonomy in a specified project.
42
+ #
43
+ # The taxonomy is initially empty, that is, it doesn't contain policy tags.
43
44
  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
+ # Deletes a taxonomy, including all policy tags in this
45
46
  # taxonomy, their associated policies, and the policy tags references from
46
47
  # BigQuery columns.
47
48
  rpc :DeleteTaxonomy, ::Google::Cloud::DataCatalog::V1::DeleteTaxonomyRequest, ::Google::Protobuf::Empty
48
- # Updates a taxonomy. This method can update the taxonomy's display name,
49
+ # Updates a taxonomy, including its display name,
49
50
  # description, and activated policy types.
50
51
  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.
52
+ # Lists all taxonomies in a project in a particular location that you
53
+ # have a permission to view.
53
54
  rpc :ListTaxonomies, ::Google::Cloud::DataCatalog::V1::ListTaxonomiesRequest, ::Google::Cloud::DataCatalog::V1::ListTaxonomiesResponse
54
55
  # Gets a taxonomy.
55
56
  rpc :GetTaxonomy, ::Google::Cloud::DataCatalog::V1::GetTaxonomyRequest, ::Google::Cloud::DataCatalog::V1::Taxonomy
56
57
  # Creates a policy tag in a taxonomy.
57
58
  rpc :CreatePolicyTag, ::Google::Cloud::DataCatalog::V1::CreatePolicyTagRequest, ::Google::Cloud::DataCatalog::V1::PolicyTag
58
- # Deletes a policy tag. This method also deletes:
59
+ # Deletes a policy tag together with the following:
59
60
  #
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.
61
+ # * All of its descendant policy tags, if any
62
+ # * Policies associated with the policy tag and its descendants
63
+ # * References from BigQuery table schema of the policy tag and its
64
+ # descendants
64
65
  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
+ # Updates a policy tag, including its display
66
67
  # name, description, and parent policy tag.
67
68
  rpc :UpdatePolicyTag, ::Google::Cloud::DataCatalog::V1::UpdatePolicyTagRequest, ::Google::Cloud::DataCatalog::V1::PolicyTag
68
69
  # Lists all policy tags in a taxonomy.
@@ -73,7 +74,7 @@ module Google
73
74
  rpc :GetIamPolicy, ::Google::Iam::V1::GetIamPolicyRequest, ::Google::Iam::V1::Policy
74
75
  # Sets the IAM policy for a policy tag or a taxonomy.
75
76
  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
+ # Returns your permissions on a specified policy tag or
77
78
  # taxonomy.
78
79
  rpc :TestIamPermissions, ::Google::Iam::V1::TestIamPermissionsRequest, ::Google::Iam::V1::TestIamPermissionsResponse
79
80
  end
@@ -23,6 +23,10 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
23
23
  optional :description, :string, 3
24
24
  repeated :child_policy_tags, :message, 4, "google.cloud.datacatalog.v1.SerializedPolicyTag"
25
25
  end
26
+ add_message "google.cloud.datacatalog.v1.ReplaceTaxonomyRequest" do
27
+ optional :name, :string, 1
28
+ optional :serialized_taxonomy, :message, 2, "google.cloud.datacatalog.v1.SerializedTaxonomy"
29
+ end
26
30
  add_message "google.cloud.datacatalog.v1.ImportTaxonomiesRequest" do
27
31
  optional :parent, :string, 1
28
32
  oneof :source do
@@ -58,6 +62,7 @@ module Google
58
62
  module V1
59
63
  SerializedTaxonomy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.SerializedTaxonomy").msgclass
60
64
  SerializedPolicyTag = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.SerializedPolicyTag").msgclass
65
+ ReplaceTaxonomyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.ReplaceTaxonomyRequest").msgclass
61
66
  ImportTaxonomiesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.ImportTaxonomiesRequest").msgclass
62
67
  InlineSource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.InlineSource").msgclass
63
68
  CrossRegionalSource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.CrossRegionalSource").msgclass
@@ -24,9 +24,10 @@ module Google
24
24
  module DataCatalog
25
25
  module V1
26
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.
27
+ # Policy Tag Manager Serialization API service allows you to manipulate
28
+ # your policy tags and taxonomies in a serialized format.
29
+ #
30
+ # Taxonomy is a hierarchical group of policy tags.
30
31
  class Service
31
32
 
32
33
  include GRPC::GenericService
@@ -35,22 +36,35 @@ module Google
35
36
  self.unmarshal_class_method = :decode
36
37
  self.service_name = 'google.cloud.datacatalog.v1.PolicyTagManagerSerialization'
37
38
 
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.
39
+ # Replaces (updates) a taxonomy and all its policy tags.
41
40
  #
42
- # If using the cross-regional source, a new taxonomy is created by copying
41
+ # The taxonomy and its entire hierarchy of policy tags must be
42
+ # represented literally by `SerializedTaxonomy` and the nested
43
+ # `SerializedPolicyTag` messages.
44
+ #
45
+ # This operation automatically does the following:
46
+ #
47
+ # - Deletes the existing policy tags that are missing from the
48
+ # `SerializedPolicyTag`.
49
+ # - Creates policy tags that don't have resource names. They are considered
50
+ # new.
51
+ # - Updates policy tags with valid resources names accordingly.
52
+ rpc :ReplaceTaxonomy, ::Google::Cloud::DataCatalog::V1::ReplaceTaxonomyRequest, ::Google::Cloud::DataCatalog::V1::Taxonomy
53
+ # Creates new taxonomies (including their policy tags) in a given project
54
+ # by importing from inlined or cross-regional sources.
55
+ #
56
+ # For a cross-regional source, new taxonomies are created by copying
43
57
  # from a source in another region.
44
58
  #
45
- # If using the inlined source, this method provides a way to bulk create
46
- # taxonomies and policy tags using nested proto structure.
59
+ # For an inlined source, taxonomies and policy tags are created in bulk using
60
+ # nested protocol buffer structures.
47
61
  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.
62
+ # Exports taxonomies in the requested type and returns them,
63
+ # including their policy tags. The requested taxonomies must belong to the
64
+ # same project.
51
65
  #
52
- # SerializedTaxonomy protos with nested policy tags that are generated by
53
- # this method can be used as input for future ImportTaxonomies calls.
66
+ # This method generates `SerializedTaxonomy` protocol buffers with nested
67
+ # policy tags that can be used as input for `ImportTaxonomies` calls.
54
68
  rpc :ExportTaxonomies, ::Google::Cloud::DataCatalog::V1::ExportTaxonomiesRequest, ::Google::Cloud::DataCatalog::V1::ExportTaxonomiesResponse
55
69
  end
56
70
 
@@ -26,6 +26,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
26
26
  optional :bool_value, :bool, 4
27
27
  optional :timestamp_value, :message, 5, "google.protobuf.Timestamp"
28
28
  optional :enum_value, :message, 6, "google.cloud.datacatalog.v1.TagField.EnumValue"
29
+ optional :richtext_value, :string, 8
29
30
  end
30
31
  end
31
32
  add_message "google.cloud.datacatalog.v1.TagField.EnumValue" do
@@ -34,6 +35,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
34
35
  add_message "google.cloud.datacatalog.v1.TagTemplate" do
35
36
  optional :name, :string, 1
36
37
  optional :display_name, :string, 2
38
+ optional :is_publicly_readable, :bool, 5
37
39
  map :fields, :string, :message, 3, "google.cloud.datacatalog.v1.TagTemplateField"
38
40
  end
39
41
  add_message "google.cloud.datacatalog.v1.TagTemplateField" do
@@ -62,6 +64,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
62
64
  value :STRING, 2
63
65
  value :BOOL, 3
64
66
  value :TIMESTAMP, 4
67
+ value :RICHTEXT, 5
65
68
  end
66
69
  end
67
70
  end
@@ -0,0 +1,31 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/datacatalog/v1/usage.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/protobuf/timestamp_pb'
7
+ Google::Protobuf::DescriptorPool.generated_pool.build do
8
+ add_file("google/cloud/datacatalog/v1/usage.proto", :syntax => :proto3) do
9
+ add_message "google.cloud.datacatalog.v1.UsageStats" do
10
+ optional :total_completions, :float, 1
11
+ optional :total_failures, :float, 2
12
+ optional :total_cancellations, :float, 3
13
+ optional :total_execution_time_for_completions_millis, :float, 4
14
+ end
15
+ add_message "google.cloud.datacatalog.v1.UsageSignal" do
16
+ optional :update_time, :message, 1, "google.protobuf.Timestamp"
17
+ map :usage_within_time_range, :string, :message, 2, "google.cloud.datacatalog.v1.UsageStats"
18
+ end
19
+ end
20
+ end
21
+
22
+ module Google
23
+ module Cloud
24
+ module DataCatalog
25
+ module V1
26
+ UsageStats = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.UsageStats").msgclass
27
+ UsageSignal = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datacatalog.v1.UsageSignal").msgclass
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,87 @@
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
+ # Specification for the BigQuery connection.
25
+ # @!attribute [rw] connection_type
26
+ # @return [::Google::Cloud::DataCatalog::V1::BigQueryConnectionSpec::ConnectionType]
27
+ # The type of the BigQuery connection.
28
+ # @!attribute [rw] cloud_sql
29
+ # @return [::Google::Cloud::DataCatalog::V1::CloudSqlBigQueryConnectionSpec]
30
+ # Specification for the BigQuery connection to a Cloud SQL instance.
31
+ # @!attribute [rw] has_credential
32
+ # @return [::Boolean]
33
+ # True if there are credentials attached to the BigQuery connection; false
34
+ # otherwise.
35
+ class BigQueryConnectionSpec
36
+ include ::Google::Protobuf::MessageExts
37
+ extend ::Google::Protobuf::MessageExts::ClassMethods
38
+
39
+ # The type of the BigQuery connection.
40
+ module ConnectionType
41
+ # Unspecified type.
42
+ CONNECTION_TYPE_UNSPECIFIED = 0
43
+
44
+ # Cloud SQL connection.
45
+ CLOUD_SQL = 1
46
+ end
47
+ end
48
+
49
+ # Specification for the BigQuery connection to a Cloud SQL instance.
50
+ # @!attribute [rw] instance_id
51
+ # @return [::String]
52
+ # Cloud SQL instance ID in the format of `project:location:instance`.
53
+ # @!attribute [rw] database
54
+ # @return [::String]
55
+ # Database name.
56
+ # @!attribute [rw] type
57
+ # @return [::Google::Cloud::DataCatalog::V1::CloudSqlBigQueryConnectionSpec::DatabaseType]
58
+ # Type of the Cloud SQL database.
59
+ class CloudSqlBigQueryConnectionSpec
60
+ include ::Google::Protobuf::MessageExts
61
+ extend ::Google::Protobuf::MessageExts::ClassMethods
62
+
63
+ # Supported Cloud SQL database types.
64
+ module DatabaseType
65
+ # Unspecified database type.
66
+ DATABASE_TYPE_UNSPECIFIED = 0
67
+
68
+ # Cloud SQL for PostgreSQL.
69
+ POSTGRES = 1
70
+
71
+ # Cloud SQL for MySQL.
72
+ MYSQL = 2
73
+ end
74
+ end
75
+
76
+ # Fields specific for BigQuery routines.
77
+ # @!attribute [rw] imported_libraries
78
+ # @return [::Array<::String>]
79
+ # Paths of the imported libraries.
80
+ class BigQueryRoutineSpec
81
+ include ::Google::Protobuf::MessageExts
82
+ extend ::Google::Protobuf::MessageExts::ClassMethods
83
+ end
84
+ end
85
+ end
86
+ end
87
+ end
@@ -21,8 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module DataCatalog
23
23
  module V1
24
- # This enum describes all the possible systems that Data Catalog integrates
25
- # with.
24
+ # This enum lists all the systems that Data Catalog integrates with.
26
25
  module IntegratedSystem
27
26
  # Default unknown system.
28
27
  INTEGRATED_SYSTEM_UNSPECIFIED = 0
@@ -21,19 +21,20 @@ module Google
21
21
  module Cloud
22
22
  module DataCatalog
23
23
  module V1
24
- # Describes the physical location of an entry.
24
+ # Physical location of an entry.
25
25
  # @!attribute [rw] service
26
26
  # @return [::Google::Cloud::DataCatalog::V1::DataSource::Service]
27
- # Service in which the data is physically stored.
27
+ # Service that physically stores the data.
28
28
  # @!attribute [rw] resource
29
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}
30
+ # Full name of a resource as defined by the service. For example:
31
+ #
32
+ # `//bigquery.googleapis.com/projects/{PROJECT_ID}/locations/{LOCATION}/datasets/{DATASET_ID}/tables/{TABLE_ID}`
32
33
  class DataSource
33
34
  include ::Google::Protobuf::MessageExts
34
35
  extend ::Google::Protobuf::MessageExts::ClassMethods
35
36
 
36
- # Service name where the data is stored.
37
+ # Name of a service that stores the data.
37
38
  module Service
38
39
  # Default unknown service.
39
40
  SERVICE_UNSPECIFIED = 0
@@ -25,47 +25,51 @@ module Google
25
25
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#search_catalog SearchCatalog}.
26
26
  # @!attribute [rw] scope
27
27
  # @return [::Google::Cloud::DataCatalog::V1::SearchCatalogRequest::Scope]
28
- # Required. The scope of this search request. A `scope` that has empty
29
- # `include_org_ids`, `include_project_ids` AND false
30
- # `include_gcp_public_datasets` is considered invalid. Data Catalog will
31
- # return an error in such a case.
28
+ # Required. The scope of this search request.
29
+ #
30
+ # The `scope` is invalid if `include_org_ids`, `include_project_ids` are
31
+ # empty AND `include_gcp_public_datasets` is set to `false`. In this case,
32
+ # the request returns an error.
32
33
  # @!attribute [rw] query
33
34
  # @return [::String]
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.
35
+ # Optional. The query string with a minimum of 3 characters and specific syntax.
36
+ # For more information, see
37
+ # [Data Catalog search syntax](/data-catalog/docs/how-to/search-reference).
36
38
  #
37
- # Query strings can be simple as "x" or more qualified as:
39
+ # An empty query string returns all data assets (in the specified scope)
40
+ # that you have access to.
38
41
  #
39
- # * name:x
40
- # * column:x
41
- # * description:y
42
+ # A query string can be a simple `xyz` or qualified by predicates:
42
43
  #
43
- # Note: Query tokens need to have a minimum of 3 characters for substring
44
- # matching to work correctly. See [Data Catalog Search
45
- # Syntax](https://cloud.google.com/data-catalog/docs/how-to/search-reference)
46
- # for more information.
44
+ # * `name:x`
45
+ # * `column:y`
46
+ # * `description:z`
47
47
  # @!attribute [rw] page_size
48
48
  # @return [::Integer]
49
- # Number of results in the search page. If <=0 then defaults to 10. Max limit
50
- # for page_size is 1000. Throws an invalid argument for page_size > 1000.
49
+ # Number of results to return in a single search page.
50
+ #
51
+ # Can't be negative or 0, defaults to 10 in this case.
52
+ # The maximum number is 1000. If exceeded, throws an "invalid argument"
53
+ # exception.
51
54
  # @!attribute [rw] page_token
52
55
  # @return [::String]
53
- # Optional. Pagination token returned in an earlier
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
+ # Optional. Pagination token that, if specified, returns the next page of search
57
+ # results. If empty, returns the first page.
58
+ #
59
+ # This token is returned in the {::Google::Cloud::DataCatalog::V1::SearchCatalogResponse#next_page_token SearchCatalogResponse.next_page_token}
60
+ # field of the response to a previous
56
61
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#search_catalog SearchCatalogRequest}
57
- # call, and that the system should return the next page of data. If empty,
58
- # the first page is returned.
62
+ # call.
59
63
  # @!attribute [rw] order_by
60
64
  # @return [::String]
61
- # Specifies the ordering of results, currently supported case-sensitive
62
- # choices are:
65
+ # Specifies the order of results.
63
66
  #
64
- # * `relevance`, only supports descending
65
- # * `last_modified_timestamp [asc|desc]`, defaults to descending if not
66
- # specified
67
+ # Currently supported case-sensitive values are:
67
68
  #
68
- # If not specified, defaults to `relevance` descending.
69
+ # * `relevance` that can only be descending
70
+ # * `last_modified_timestamp [asc|desc]` with descending (`desc`) as default
71
+ #
72
+ # If this parameter is omitted, it defaults to the descending `relevance`.
69
73
  class SearchCatalogRequest
70
74
  include ::Google::Protobuf::MessageExts
71
75
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -73,32 +77,47 @@ module Google
73
77
  # The criteria that select the subspace used for query matching.
74
78
  # @!attribute [rw] include_org_ids
75
79
  # @return [::Array<::String>]
76
- # The list of organization IDs to search within. To find your organization
77
- # ID, follow instructions in
78
- # https://cloud.google.com/resource-manager/docs/creating-managing-organization.
80
+ # The list of organization IDs to search within.
81
+ #
82
+ # To find your organization ID, follow the steps from
83
+ # [Creating and managing organizations]
84
+ # (/resource-manager/docs/creating-managing-organization).
79
85
  # @!attribute [rw] include_project_ids
80
86
  # @return [::Array<::String>]
81
- # The list of project IDs to search within. To learn more about the
82
- # distinction between project names/IDs/numbers, go to
83
- # https://cloud.google.com/docs/overview/#projects.
87
+ # The list of project IDs to search within.
88
+ #
89
+ # For more information on the distinction between project names, IDs, and
90
+ # numbers, see [Projects](/docs/overview/#projects).
84
91
  # @!attribute [rw] include_gcp_public_datasets
85
92
  # @return [::Boolean]
86
- # If `true`, include Google Cloud Platform (GCP) public datasets in the
87
- # search results. Info on GCP public datasets is available at
88
- # https://cloud.google.com/public-datasets/. By default, GCP public
89
- # datasets are excluded.
93
+ # If `true`, include Google Cloud Platform (GCP) public datasets in
94
+ # search results. By default, they are excluded.
95
+ #
96
+ # See [Google Cloud Public Datasets](/public-datasets) for more
97
+ # information.
90
98
  # @!attribute [rw] restricted_locations
91
99
  # @return [::Array<::String>]
92
- # Optional. The list of locations to search within.
93
- # 1. If empty, search will be performed in all locations;
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;
97
- # 3. Otherwise, search only the given locations for matching results.
98
- # Typical usage is to leave this field empty. When a location is
99
- # unreachable as returned in the `SearchCatalogResponse.unreachable` field,
100
- # users can repeat the search request with this parameter set to get
101
- # additional information on the error.
100
+ # Optional. The list of locations to search within. If empty, all locations are
101
+ # searched.
102
+ #
103
+ # Returns an error if any location in the list isn't one of the [Supported
104
+ # regions](https://cloud.google.com/data-catalog/docs/concepts/regions#supported_regions).
105
+ #
106
+ # If a location is unreachable, its name is returned in the
107
+ # `SearchCatalogResponse.unreachable` field. To get additional information
108
+ # on the error, repeat the search request and set the location name as the
109
+ # value of this parameter.
110
+ # @!attribute [rw] include_public_tag_templates
111
+ # @return [::Boolean]
112
+ # Optional. If `true`, include [public tag
113
+ # templates][google.cloud.datacatalog.v1.TagTemplate.is_publicly_readable]
114
+ # in the search results. By default, they are included only if you have
115
+ # explicit permissions on them to view them. For example, if you are the
116
+ # owner.
117
+ #
118
+ # Other scope fields, for example, ``include_org_ids``,
119
+ # still restrict the returned public tag templates and at least one of
120
+ # them is required.
102
121
  class Scope
103
122
  include ::Google::Protobuf::MessageExts
104
123
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -112,13 +131,16 @@ module Google
112
131
  # Search results.
113
132
  # @!attribute [rw] next_page_token
114
133
  # @return [::String]
115
- # The token that can be used to retrieve the next page of results.
134
+ # Pagination token that can be used in subsequent calls to retrieve the next
135
+ # page of results.
116
136
  # @!attribute [rw] unreachable
117
137
  # @return [::Array<::String>]
118
- # Unreachable locations. Search result does not include data from those
119
- # locations. Users can get additional information on the error by repeating
120
- # the search request with a more restrictive parameter -- setting the value
121
- # for `SearchDataCatalogRequest.scope.restricted_locations`.
138
+ # Unreachable locations. Search results don't include data from those
139
+ # locations.
140
+ #
141
+ # To get additional information on an error, repeat the search request and
142
+ # restrict it to specific locations by setting the
143
+ # `SearchCatalogRequest.scope.restricted_locations` parameter.
122
144
  class SearchCatalogResponse
123
145
  include ::Google::Protobuf::MessageExts
124
146
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -128,9 +150,7 @@ module Google
128
150
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#create_entry_group CreateEntryGroup}.
129
151
  # @!attribute [rw] parent
130
152
  # @return [::String]
131
- # Required. The name of the project this entry group belongs to. Example:
132
- #
133
- # `projects/{project_id}/locations/{location}`
153
+ # Required. The names of the project and location that the new entry group belongs to.
134
154
  #
135
155
  # Note: The entry group itself and its child resources might not be
136
156
  # stored in the location specified in its name.
@@ -143,7 +163,7 @@ module Google
143
163
  # The maximum size is 64 bytes when encoded in UTF-8.
144
164
  # @!attribute [rw] entry_group
145
165
  # @return [::Google::Cloud::DataCatalog::V1::EntryGroup]
146
- # The entry group to create. Defaults to an empty entry group.
166
+ # The entry group to create. Defaults to empty.
147
167
  class CreateEntryGroupRequest
148
168
  include ::Google::Protobuf::MessageExts
149
169
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -153,7 +173,7 @@ module Google
153
173
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#update_entry_group UpdateEntryGroup}.
154
174
  # @!attribute [rw] entry_group
155
175
  # @return [::Google::Cloud::DataCatalog::V1::EntryGroup]
156
- # Required. The updated entry group. "name" field must be set.
176
+ # Required. Updates for the entry group. The `name` field must be set.
157
177
  # @!attribute [rw] update_mask
158
178
  # @return [::Google::Protobuf::FieldMask]
159
179
  # Names of fields whose values to overwrite on an entry group.
@@ -170,11 +190,10 @@ module Google
170
190
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#get_entry_group GetEntryGroup}.
171
191
  # @!attribute [rw] name
172
192
  # @return [::String]
173
- # Required. The name of the entry group. For example,
174
- # `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`.
193
+ # Required. The name of the entry group to get.
175
194
  # @!attribute [rw] read_mask
176
195
  # @return [::Google::Protobuf::FieldMask]
177
- # The fields to return. If not set or empty, all fields are returned.
196
+ # The fields to return. If empty or omitted, all fields are returned.
178
197
  class GetEntryGroupRequest
179
198
  include ::Google::Protobuf::MessageExts
180
199
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -184,8 +203,7 @@ module Google
184
203
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#delete_entry_group DeleteEntryGroup}.
185
204
  # @!attribute [rw] name
186
205
  # @return [::String]
187
- # Required. The name of the entry group. For example,
188
- # `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`.
206
+ # Required. The name of the entry group to delete.
189
207
  # @!attribute [rw] force
190
208
  # @return [::Boolean]
191
209
  # Optional. If true, deletes all entries in the entry group.
@@ -198,18 +216,19 @@ module Google
198
216
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#list_entry_groups ListEntryGroups}.
199
217
  # @!attribute [rw] parent
200
218
  # @return [::String]
201
- # Required. The name of the location that contains the entry groups, which can be
202
- # provided in URL format. Example:
219
+ # Required. The name of the location that contains the entry groups to list.
203
220
  #
204
- # * projects/\\{project_id}/locations/\\{location}
221
+ # Can be provided as a URL.
205
222
  # @!attribute [rw] page_size
206
223
  # @return [::Integer]
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`.
224
+ # Optional. The maximum number of items to return.
225
+ #
226
+ # Default is 10. Maximum limit is 1000.
227
+ # Throws an invalid argument if `page_size` is greater than 1000.
209
228
  # @!attribute [rw] page_token
210
229
  # @return [::String]
211
- # Optional. Token that specifies which page is requested. If empty, the first page is
212
- # returned.
230
+ # Optional. Pagination token that specifies the next page to return.
231
+ # If empty, returns the first page.
213
232
  class ListEntryGroupsRequest
214
233
  include ::Google::Protobuf::MessageExts
215
234
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -219,11 +238,11 @@ module Google
219
238
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#list_entry_groups ListEntryGroups}.
220
239
  # @!attribute [rw] entry_groups
221
240
  # @return [::Array<::Google::Cloud::DataCatalog::V1::EntryGroup>]
222
- # EntryGroup details.
241
+ # Entry group details.
223
242
  # @!attribute [rw] next_page_token
224
243
  # @return [::String]
225
- # Token to retrieve the next page of results. It is set to empty if no items
226
- # remain in results.
244
+ # Pagination token to specify in the next call to retrieve the next page of
245
+ # results. Empty if there are no more items.
227
246
  class ListEntryGroupsResponse
228
247
  include ::Google::Protobuf::MessageExts
229
248
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -233,9 +252,7 @@ module Google
233
252
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#create_entry CreateEntry}.
234
253
  # @!attribute [rw] parent
235
254
  # @return [::String]
236
- # Required. The name of the entry group this entry belongs to. Example:
237
- #
238
- # `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`
255
+ # Required. The name of the entry group this entry belongs to.
239
256
  #
240
257
  # Note: The entry itself and its child resources might not be stored in
241
258
  # the location specified in its name.
@@ -258,7 +275,7 @@ module Google
258
275
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#update_entry UpdateEntry}.
259
276
  # @!attribute [rw] entry
260
277
  # @return [::Google::Cloud::DataCatalog::V1::Entry]
261
- # Required. The updated entry. The "name" field must be set.
278
+ # Required. Updates for the entry. The `name` field must be set.
262
279
  # @!attribute [rw] update_mask
263
280
  # @return [::Google::Protobuf::FieldMask]
264
281
  # Names of fields whose values to overwrite on an entry.
@@ -267,24 +284,29 @@ module Google
267
284
  # are overwritten. If such fields are non-required and omitted in the
268
285
  # request body, their values are emptied.
269
286
  #
270
- # The following fields are modifiable:
271
- #
272
- # * For entries with type `DATA_STREAM`:
273
- # * `schema`
274
- # * For entries with type `FILESET`:
275
- # * `schema`
276
- # * `display_name`
277
- # * `description`
278
- # * `gcs_fileset_spec`
279
- # * `gcs_fileset_spec.file_patterns`
280
- # * For entries with `user_specified_type`:
281
- # * `schema`
282
- # * `display_name`
283
- # * `description`
284
- # * `user_specified_type`
285
- # * `user_specified_system`
286
- # * `linked_resource`
287
- # * `source_system_timestamps`
287
+ # You can modify only the fields listed below.
288
+ #
289
+ # For entries with type `DATA_STREAM`:
290
+ #
291
+ # * `schema`
292
+ #
293
+ # For entries with type `FILESET`:
294
+ #
295
+ # * `schema`
296
+ # * `display_name`
297
+ # * `description`
298
+ # * `gcs_fileset_spec`
299
+ # * `gcs_fileset_spec.file_patterns`
300
+ #
301
+ # For entries with `user_specified_type`:
302
+ #
303
+ # * `schema`
304
+ # * `display_name`
305
+ # * `description`
306
+ # * `user_specified_type`
307
+ # * `user_specified_system`
308
+ # * `linked_resource`
309
+ # * `source_system_timestamps`
288
310
  class UpdateEntryRequest
289
311
  include ::Google::Protobuf::MessageExts
290
312
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -294,9 +316,7 @@ module Google
294
316
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#delete_entry DeleteEntry}.
295
317
  # @!attribute [rw] name
296
318
  # @return [::String]
297
- # Required. The name of the entry. Example:
298
- #
299
- # * projects/\\{project_id}/locations/\\{location}/entryGroups/\\{entry_group_id}/entries/\\{entry_id}
319
+ # Required. The name of the entry to delete.
300
320
  class DeleteEntryRequest
301
321
  include ::Google::Protobuf::MessageExts
302
322
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -306,9 +326,7 @@ module Google
306
326
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#get_entry GetEntry}.
307
327
  # @!attribute [rw] name
308
328
  # @return [::String]
309
- # Required. The name of the entry. Example:
310
- #
311
- # * projects/\\{project_id}/locations/\\{location}/entryGroups/\\{entry_group_id}/entries/\\{entry_id}
329
+ # Required. The name of the entry to get.
312
330
  class GetEntryRequest
313
331
  include ::Google::Protobuf::MessageExts
314
332
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -319,28 +337,28 @@ module Google
319
337
  # @!attribute [rw] linked_resource
320
338
  # @return [::String]
321
339
  # The full name of the Google Cloud Platform resource the Data Catalog
322
- # entry represents. See:
323
- # https://cloud.google.com/apis/design/resource_names#full_resource_name.
324
- # Full names are case-sensitive.
340
+ # entry represents. For more information, see [Full Resource Name]
341
+ # (https://cloud.google.com/apis/design/resource_names#full_resource_name).
325
342
  #
326
- # Examples:
343
+ # Full names are case-sensitive. For example:
327
344
  #
328
- # * //bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableId
329
- # * //pubsub.googleapis.com/projects/projectId/topics/topicId
345
+ # * `//bigquery.googleapis.com/projects/{PROJECT_ID}/datasets/{DATASET_ID}/tables/{TABLE_ID}`
346
+ # * `//pubsub.googleapis.com/projects/{PROJECT_ID}/topics/{TOPIC_ID}`
330
347
  # @!attribute [rw] sql_resource
331
348
  # @return [::String]
332
349
  # The SQL name of the entry. SQL names are case-sensitive.
333
350
  #
334
351
  # Examples:
335
352
  #
336
- # * `pubsub.project_id.topic_id`
337
- # * ``pubsub.project_id.`topic.id.with.dots` ``
338
- # * `bigquery.table.project_id.dataset_id.table_id`
339
- # * `bigquery.dataset.project_id.dataset_id`
340
- # * `datacatalog.entry.project_id.location_id.entry_group_id.entry_id`
353
+ # * `pubsub.topic.{PROJECT_ID}.{TOPIC_ID}`
354
+ # * `pubsub.topic.{PROJECT_ID}.`\``{TOPIC.ID.SEPARATED.WITH.DOTS}`\`
355
+ # * `bigquery.table.{PROJECT_ID}.{DATASET_ID}.{TABLE_ID}`
356
+ # * `bigquery.dataset.{PROJECT_ID}.{DATASET_ID}`
357
+ # * `datacatalog.entry.{PROJECT_ID}.{LOCATION_ID}.{ENTRY_GROUP_ID}.{ENTRY_ID}`
341
358
  #
342
- # `*_id`s should satisfy the standard SQL rules for identifiers.
343
- # https://cloud.google.com/bigquery/docs/reference/standard-sql/lexical.
359
+ # Identifiers (`*_ID`) should comply with the
360
+ # [Lexical structure in Standard SQL]
361
+ # (https://cloud.google.com/bigquery/docs/reference/standard-sql/lexical).
344
362
  # @!attribute [rw] fully_qualified_name
345
363
  # @return [::String]
346
364
  # Fully qualified name (FQN) of the resource.
@@ -357,28 +375,25 @@ module Google
357
375
  #
358
376
  # Example for a DPMS table:
359
377
  #
360
- # `dataproc_metastore:project_id.location_id.instance_id.database_id.table_id`
378
+ # `dataproc_metastore:{PROJECT_ID}.{LOCATION_ID}.{INSTANCE_ID}.{DATABASE_ID}.{TABLE_ID}`
361
379
  class LookupEntryRequest
362
380
  include ::Google::Protobuf::MessageExts
363
381
  extend ::Google::Protobuf::MessageExts::ClassMethods
364
382
  end
365
383
 
366
- # Entry Metadata.
367
- # A Data Catalog Entry resource represents another resource in Google
384
+ # Entry metadata.
385
+ # A Data Catalog entry represents another resource in Google
368
386
  # Cloud Platform (such as a BigQuery dataset or a Pub/Sub topic) or
369
- # outside of Google Cloud Platform. Clients can use the `linked_resource` field
370
- # in the Entry resource to refer to the original resource ID of the source
387
+ # outside of it. You can use the `linked_resource` field
388
+ # in the entry resource to refer to the original resource ID of the source
371
389
  # system.
372
390
  #
373
- # An Entry resource contains resource details, such as its schema. An Entry can
374
- # also be used to attach flexible metadata, such as a
391
+ # An entry resource contains resource details, for example, its schema.
392
+ # Additionally, you can attach flexible metadata to an entry in the form of a
375
393
  # {::Google::Cloud::DataCatalog::V1::Tag Tag}.
376
394
  # @!attribute [r] name
377
395
  # @return [::String]
378
396
  # Output only. The resource name of an entry in URL format.
379
- # Example:
380
- #
381
- # `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}`
382
397
  #
383
398
  # Note: The entry itself and its child resources might not be
384
399
  # stored in the location specified in its name.
@@ -386,14 +401,14 @@ module Google
386
401
  # @return [::String]
387
402
  # The resource this metadata entry refers to.
388
403
  #
389
- # For Google Cloud Platform resources, `linked_resource` is the [full name of
390
- # the
391
- # resource](https://cloud.google.com/apis/design/resource_names#full_resource_name).
404
+ # For Google Cloud Platform resources, `linked_resource` is the
405
+ # [Full Resource Name]
406
+ # (https://cloud.google.com/apis/design/resource_names#full_resource_name).
392
407
  # For example, the `linked_resource` for a table resource from BigQuery is:
393
408
  #
394
- # `//bigquery.googleapis.com/projects/{projectId}/datasets/{datasetId}/tables/{tableId}`
409
+ # `//bigquery.googleapis.com/projects/{PROJECT_ID}/datasets/{DATASET_ID}/tables/{TABLE_ID}`
395
410
  #
396
- # Output only when entry is one of the types in the `EntryType` enum.
411
+ # Output only when the entry is one of the types in the `EntryType` enum.
397
412
  #
398
413
  # For entries with a `user_specified_type`, this field is optional and
399
414
  # defaults to an empty string.
@@ -421,51 +436,71 @@ module Google
421
436
  #
422
437
  # Example for a DPMS table:
423
438
  #
424
- # `dataproc_metastore:project_id.location_id.instance_id.database_id.table_id`
439
+ # `dataproc_metastore:{PROJECT_ID}.{LOCATION_ID}.{INSTANCE_ID}.{DATABASE_ID}.{TABLE_ID}`
425
440
  # @!attribute [rw] type
426
441
  # @return [::Google::Cloud::DataCatalog::V1::EntryType]
427
442
  # The type of the entry.
428
- # Only used for Entries with types in the EntryType enum.
443
+ # Only used for entries with types listed in the `EntryType` enum.
444
+ #
445
+ # Currently, only `FILESET` enum value is allowed. All other entries
446
+ # created in Data Catalog must use the `user_specified_type`.
429
447
  # @!attribute [rw] user_specified_type
430
448
  # @return [::String]
431
- # Entry type if it does not fit any of the input-allowed values listed in
432
- # `EntryType` enum above. When creating an entry, users should check the
433
- # enum values first, if nothing matches the entry to be created, then
434
- # provide a custom value, for example "my_special_type".
435
- # `user_specified_type` strings must begin with a letter or underscore and
436
- # can only contain letters, numbers, and underscores; are case insensitive;
437
- # must be at least 1 character and at most 64 characters long.
449
+ # Custom entry type that doesn't match any of the values allowed for input
450
+ # and listed in the `EntryType` enum.
438
451
  #
439
- # Currently, only FILESET enum value is allowed. All other entries created
440
- # through Data Catalog must use `user_specified_type`.
452
+ # When creating an entry, first check the type values in the enum.
453
+ # If there are no appropriate types for the new entry,
454
+ # provide a custom value, for example, `my_special_type`.
455
+ #
456
+ # The `user_specified_type` string has the following limitations:
457
+ #
458
+ # * Is case insensitive.
459
+ # * Must begin with a letter or underscore.
460
+ # * Can only contain letters, numbers, and underscores.
461
+ # * Must be at least 1 character and at most 64 characters long.
441
462
  # @!attribute [r] integrated_system
442
463
  # @return [::Google::Cloud::DataCatalog::V1::IntegratedSystem]
443
- # Output only. This field indicates the entry's source system that Data Catalog
444
- # integrates with, such as BigQuery or Pub/Sub.
464
+ # Output only. Indicates the entry's source system that Data Catalog
465
+ # integrates with, such as BigQuery, Pub/Sub, or Dataproc Metastore.
445
466
  # @!attribute [rw] user_specified_system
446
467
  # @return [::String]
447
- # This field indicates the entry's source system that Data Catalog does not
448
- # integrate with. `user_specified_system` strings must begin with a letter
449
- # or underscore and can only contain letters, numbers, and underscores; are
450
- # case insensitive; must be at least 1 character and at most 64 characters
451
- # long.
468
+ # Indicates the entry's source system that Data Catalog doesn't
469
+ # automatically integrate with.
470
+ #
471
+ # The `user_specified_system` string has the following limitations:
472
+ #
473
+ # * Is case insensitive.
474
+ # * Must begin with a letter or underscore.
475
+ # * Can only contain letters, numbers, and underscores.
476
+ # * Must be at least 1 character and at most 64 characters long.
452
477
  # @!attribute [rw] gcs_fileset_spec
453
478
  # @return [::Google::Cloud::DataCatalog::V1::GcsFilesetSpec]
454
- # Specification that applies to a Cloud Storage fileset. This is only valid
455
- # on entries of type FILESET.
479
+ # Specification that applies to a Cloud Storage fileset. Valid only
480
+ # for entries with the `FILESET` type.
456
481
  # @!attribute [rw] bigquery_table_spec
457
482
  # @return [::Google::Cloud::DataCatalog::V1::BigQueryTableSpec]
458
- # Specification that applies to a BigQuery table. This is only valid on
459
- # entries of type `TABLE`.
483
+ # Specification that applies to a BigQuery table. Valid only for
484
+ # entries with the `TABLE` type.
460
485
  # @!attribute [rw] bigquery_date_sharded_spec
461
486
  # @return [::Google::Cloud::DataCatalog::V1::BigQueryDateShardedSpec]
462
- # Specification for a group of BigQuery tables with name pattern
463
- # `[prefix]YYYYMMDD`. Context:
464
- # https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding.
487
+ # Specification for a group of BigQuery tables with the `[prefix]YYYYMMDD`
488
+ # name pattern.
489
+ #
490
+ # For more information, see [Introduction to partitioned tables]
491
+ # (https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding).
465
492
  # @!attribute [rw] database_table_spec
466
493
  # @return [::Google::Cloud::DataCatalog::V1::DatabaseTableSpec]
467
- # Specification that applies to a table resource. Only valid
468
- # for entries of `TABLE` type.
494
+ # Specification that applies to a table resource. Valid only
495
+ # for entries with the `TABLE` type.
496
+ # @!attribute [rw] data_source_connection_spec
497
+ # @return [::Google::Cloud::DataCatalog::V1::DataSourceConnectionSpec]
498
+ # Specification that applies to a data source connection. Valid only
499
+ # for entries with the `DATA_SOURCE_CONNECTION` type.
500
+ # @!attribute [rw] routine_spec
501
+ # @return [::Google::Cloud::DataCatalog::V1::RoutineSpec]
502
+ # Specification that applies to a user-defined function or procedure. Valid
503
+ # only for entries with the `ROUTINE` type.
469
504
  # @!attribute [rw] display_name
470
505
  # @return [::String]
471
506
  # Display name of an entry.
@@ -489,20 +524,41 @@ module Google
489
524
  # Schema of the entry. An entry might not have any schema attached to it.
490
525
  # @!attribute [rw] source_system_timestamps
491
526
  # @return [::Google::Cloud::DataCatalog::V1::SystemTimestamps]
492
- # Timestamps about the underlying resource, not about this Data Catalog
493
- # entry. Output only when Entry is of type in the EntryType enum. For entries
494
- # with user_specified_type, this field is optional and defaults to an empty
495
- # timestamp.
527
+ # Timestamps from the underlying resource, not from the Data Catalog
528
+ # entry.
529
+ #
530
+ # Output only when the entry has a type listed in the `EntryType` enum.
531
+ # For entries with `user_specified_type`, this field is optional and defaults
532
+ # to an empty timestamp.
533
+ # @!attribute [r] usage_signal
534
+ # @return [::Google::Cloud::DataCatalog::V1::UsageSignal]
535
+ # Output only. Resource usage statistics.
536
+ # @!attribute [rw] labels
537
+ # @return [::Google::Protobuf::Map{::String => ::String}]
538
+ # Cloud labels attached to the entry.
539
+ #
540
+ # In Data Catalog, you can create and modify labels attached only to custom
541
+ # entries. Synced entries have unmodifiable labels that come from the source
542
+ # system.
496
543
  # @!attribute [r] data_source
497
544
  # @return [::Google::Cloud::DataCatalog::V1::DataSource]
498
545
  # Output only. Physical location of the entry.
499
546
  class Entry
500
547
  include ::Google::Protobuf::MessageExts
501
548
  extend ::Google::Protobuf::MessageExts::ClassMethods
549
+
550
+ # @!attribute [rw] key
551
+ # @return [::String]
552
+ # @!attribute [rw] value
553
+ # @return [::String]
554
+ class LabelsEntry
555
+ include ::Google::Protobuf::MessageExts
556
+ extend ::Google::Protobuf::MessageExts::ClassMethods
557
+ end
502
558
  end
503
559
 
504
- # Specification that applies to a table resource. Only valid
505
- # for entries of `TABLE` type.
560
+ # Specification that applies to a table resource. Valid only
561
+ # for entries with the `TABLE` type.
506
562
  # @!attribute [rw] type
507
563
  # @return [::Google::Cloud::DataCatalog::V1::DatabaseTableSpec::TableType]
508
564
  # Type of this table.
@@ -523,14 +579,97 @@ module Google
523
579
  end
524
580
  end
525
581
 
526
- # EntryGroup Metadata.
527
- # An EntryGroup resource represents a logical grouping of zero or more
582
+ # Specification that applies to a data source connection. Valid only for
583
+ # entries with the `DATA_SOURCE_CONNECTION` type.
584
+ # @!attribute [rw] bigquery_connection_spec
585
+ # @return [::Google::Cloud::DataCatalog::V1::BigQueryConnectionSpec]
586
+ # Fields specific to BigQuery connections.
587
+ class DataSourceConnectionSpec
588
+ include ::Google::Protobuf::MessageExts
589
+ extend ::Google::Protobuf::MessageExts::ClassMethods
590
+ end
591
+
592
+ # Specification that applies to a routine. Valid only for
593
+ # entries with the `ROUTINE` type.
594
+ # @!attribute [rw] routine_type
595
+ # @return [::Google::Cloud::DataCatalog::V1::RoutineSpec::RoutineType]
596
+ # The type of the routine.
597
+ # @!attribute [rw] language
598
+ # @return [::String]
599
+ # The language the routine is written in. The exact value depends on the
600
+ # source system. For BigQuery routines, possible values are:
601
+ #
602
+ # * `SQL`
603
+ # * `JAVASCRIPT`
604
+ # @!attribute [rw] routine_arguments
605
+ # @return [::Array<::Google::Cloud::DataCatalog::V1::RoutineSpec::Argument>]
606
+ # Arguments of the routine.
607
+ # @!attribute [rw] return_type
608
+ # @return [::String]
609
+ # Return type of the argument. The exact value depends on the source system
610
+ # and the language.
611
+ # @!attribute [rw] definition_body
612
+ # @return [::String]
613
+ # The body of the routine.
614
+ # @!attribute [rw] bigquery_routine_spec
615
+ # @return [::Google::Cloud::DataCatalog::V1::BigQueryRoutineSpec]
616
+ # Fields specific for BigQuery routines.
617
+ class RoutineSpec
618
+ include ::Google::Protobuf::MessageExts
619
+ extend ::Google::Protobuf::MessageExts::ClassMethods
620
+
621
+ # Input or output argument of a function or stored procedure.
622
+ # @!attribute [rw] name
623
+ # @return [::String]
624
+ # The name of the argument. A return argument of a function might not have
625
+ # a name.
626
+ # @!attribute [rw] mode
627
+ # @return [::Google::Cloud::DataCatalog::V1::RoutineSpec::Argument::Mode]
628
+ # Specifies whether the argument is input or output.
629
+ # @!attribute [rw] type
630
+ # @return [::String]
631
+ # Type of the argument. The exact value depends on the source system and
632
+ # the language.
633
+ class Argument
634
+ include ::Google::Protobuf::MessageExts
635
+ extend ::Google::Protobuf::MessageExts::ClassMethods
636
+
637
+ # The input or output mode of the argument.
638
+ module Mode
639
+ # Unspecified mode.
640
+ MODE_UNSPECIFIED = 0
641
+
642
+ # The argument is input-only.
643
+ IN = 1
644
+
645
+ # The argument is output-only.
646
+ OUT = 2
647
+
648
+ # The argument is both an input and an output.
649
+ INOUT = 3
650
+ end
651
+ end
652
+
653
+ # The fine-grained type of the routine.
654
+ module RoutineType
655
+ # Unspecified type.
656
+ ROUTINE_TYPE_UNSPECIFIED = 0
657
+
658
+ # Non-builtin permanent scalar function.
659
+ SCALAR_FUNCTION = 1
660
+
661
+ # Stored procedure.
662
+ PROCEDURE = 2
663
+ end
664
+ end
665
+
666
+ # Entry group metadata.
667
+ #
668
+ # An `EntryGroup` resource represents a logical grouping of zero or more
528
669
  # Data Catalog {::Google::Cloud::DataCatalog::V1::Entry Entry} resources.
529
670
  # @!attribute [rw] name
530
671
  # @return [::String]
531
- # The resource name of the entry group in URL format. Example:
532
- #
533
- # `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`
672
+ # The resource name of the entry group in URL format.
534
673
  #
535
674
  # Note: The entry group itself and its child resources might not be
536
675
  # stored in the location specified in its name.
@@ -540,12 +679,12 @@ module Google
540
679
  # "analytics data - jan 2011". Default value is an empty string.
541
680
  # @!attribute [rw] description
542
681
  # @return [::String]
543
- # Entry group description, which can consist of several sentences or
544
- # paragraphs that describe entry group contents. Default value is an empty
545
- # string.
682
+ # Entry group description. Can consist of several sentences or
683
+ # paragraphs that describe the entry group contents.
684
+ # Default value is an empty string.
546
685
  # @!attribute [r] data_catalog_timestamps
547
686
  # @return [::Google::Cloud::DataCatalog::V1::SystemTimestamps]
548
- # Output only. Timestamps about this EntryGroup. Default value is empty timestamps.
687
+ # Output only. Timestamps of the entry group. Default value is empty.
549
688
  class EntryGroup
550
689
  include ::Google::Protobuf::MessageExts
551
690
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -557,10 +696,6 @@ module Google
557
696
  # @return [::String]
558
697
  # Required. The name of the project and the template location
559
698
  # [region](https://cloud.google.com/data-catalog/docs/concepts/regions).
560
- #
561
- # Example:
562
- #
563
- # * projects/\\{project_id}/locations/us-central1
564
699
  # @!attribute [rw] tag_template_id
565
700
  # @return [::String]
566
701
  # Required. The ID of the tag template to create.
@@ -580,9 +715,7 @@ module Google
580
715
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#get_tag_template GetTagTemplate}.
581
716
  # @!attribute [rw] name
582
717
  # @return [::String]
583
- # Required. The name of the tag template. Example:
584
- #
585
- # * projects/\\{project_id}/locations/\\{location}/tagTemplates/\\{tag_template_id}
718
+ # Required. The name of the tag template to get.
586
719
  class GetTagTemplateRequest
587
720
  include ::Google::Protobuf::MessageExts
588
721
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -592,13 +725,13 @@ module Google
592
725
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#update_tag_template UpdateTagTemplate}.
593
726
  # @!attribute [rw] tag_template
594
727
  # @return [::Google::Cloud::DataCatalog::V1::TagTemplate]
595
- # Required. The template to update. The "name" field must be set.
728
+ # Required. The template to update. The `name` field must be set.
596
729
  # @!attribute [rw] update_mask
597
730
  # @return [::Google::Protobuf::FieldMask]
598
731
  # Names of fields whose values to overwrite on a tag template. Currently,
599
732
  # only `display_name` can be overwritten.
600
733
  #
601
- # In general, if this parameter is absent or empty, all modifiable fields
734
+ # If this parameter is absent or empty, all modifiable fields
602
735
  # are overwritten. If such fields are non-required and omitted in the
603
736
  # request body, their values are emptied.
604
737
  class UpdateTagTemplateRequest
@@ -610,14 +743,12 @@ module Google
610
743
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#delete_tag_template DeleteTagTemplate}.
611
744
  # @!attribute [rw] name
612
745
  # @return [::String]
613
- # Required. The name of the tag template to delete. Example:
614
- #
615
- # * projects/\\{project_id}/locations/\\{location}/tagTemplates/\\{tag_template_id}
746
+ # Required. The name of the tag template to delete.
616
747
  # @!attribute [rw] force
617
748
  # @return [::Boolean]
618
- # Required. Currently, this field must always be set to `true`.
619
- # This confirms the deletion of any possible tags using this template.
620
- # `force = false` will be supported in the future.
749
+ # Required. If true, deletes all tags that use this template.
750
+ #
751
+ # Currently, `true` is the only supported value.
621
752
  class DeleteTagTemplateRequest
622
753
  include ::Google::Protobuf::MessageExts
623
754
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -627,10 +758,10 @@ module Google
627
758
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#create_tag CreateTag}.
628
759
  # @!attribute [rw] parent
629
760
  # @return [::String]
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:
761
+ # Required. The name of the resource to attach this tag to.
632
762
  #
633
- # `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}`
763
+ # Tags can be attached to entries or entry groups. An entry can have up to
764
+ # 1000 attached tags.
634
765
  #
635
766
  # Note: The tag and its child resources might not be stored in
636
767
  # the location specified in its name.
@@ -664,9 +795,7 @@ module Google
664
795
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#delete_tag DeleteTag}.
665
796
  # @!attribute [rw] name
666
797
  # @return [::String]
667
- # Required. The name of the tag to delete. Example:
668
- #
669
- # * projects/\\{project_id}/locations/\\{location}/entryGroups/\\{entry_group_id}/entries/\\{entry_id}/tags/\\{tag_id}
798
+ # Required. The name of the tag to delete.
670
799
  class DeleteTagRequest
671
800
  include ::Google::Protobuf::MessageExts
672
801
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -678,10 +807,6 @@ module Google
678
807
  # @return [::String]
679
808
  # Required. The name of the project and the template location
680
809
  # [region](https://cloud.google.com/data-catalog/docs/concepts/regions).
681
- #
682
- # Example:
683
- #
684
- # * projects/\\{project_id}/locations/us-central1/tagTemplates/\\{tag_template_id}
685
810
  # @!attribute [rw] tag_template_field_id
686
811
  # @return [::String]
687
812
  # Required. The ID of the tag template field to create.
@@ -704,9 +829,7 @@ module Google
704
829
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#update_tag_template_field UpdateTagTemplateField}.
705
830
  # @!attribute [rw] name
706
831
  # @return [::String]
707
- # Required. The name of the tag template field. Example:
708
- #
709
- # * projects/\\{project_id}/locations/\\{location}/tagTemplates/\\{tag_template_id}/fields/\\{tag_template_field_id}
832
+ # Required. The name of the tag template field.
710
833
  # @!attribute [rw] tag_template_field
711
834
  # @return [::Google::Cloud::DataCatalog::V1::TagTemplateField]
712
835
  # Required. The template to update.
@@ -715,9 +838,9 @@ module Google
715
838
  # Optional. Names of fields whose values to overwrite on an individual field of a tag
716
839
  # template. The following fields are modifiable:
717
840
  #
718
- # * `display_name`
719
- # * `type.enum_type`
720
- # * `is_required`
841
+ # * `display_name`
842
+ # * `type.enum_type`
843
+ # * `is_required`
721
844
  #
722
845
  # If this parameter is absent or empty, all modifiable fields
723
846
  # are overwritten. If such fields are non-required and omitted in the request
@@ -737,9 +860,7 @@ module Google
737
860
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#rename_tag_template_field RenameTagTemplateField}.
738
861
  # @!attribute [rw] name
739
862
  # @return [::String]
740
- # Required. The name of the tag template. Example:
741
- #
742
- # * projects/\\{project_id}/locations/\\{location}/tagTemplates/\\{tag_template_id}/fields/\\{tag_template_field_id}
863
+ # Required. The name of the tag template.
743
864
  # @!attribute [rw] new_tag_template_field_id
744
865
  # @return [::String]
745
866
  # Required. The new ID of this tag template field. For example, `my_new_field`.
@@ -752,9 +873,7 @@ module Google
752
873
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#rename_tag_template_field_enum_value RenameTagTemplateFieldEnumValue}.
753
874
  # @!attribute [rw] name
754
875
  # @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}
876
+ # Required. The name of the enum field value.
758
877
  # @!attribute [rw] new_enum_value_display_name
759
878
  # @return [::String]
760
879
  # Required. The new display name of the enum value. For example, `my_new_enum_value`.
@@ -767,14 +886,12 @@ module Google
767
886
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#delete_tag_template_field DeleteTagTemplateField}.
768
887
  # @!attribute [rw] name
769
888
  # @return [::String]
770
- # Required. The name of the tag template field to delete. Example:
771
- #
772
- # * projects/\\{project_id}/locations/\\{location}/tagTemplates/\\{tag_template_id}/fields/\\{tag_template_field_id}
889
+ # Required. The name of the tag template field to delete.
773
890
  # @!attribute [rw] force
774
891
  # @return [::Boolean]
775
- # Required. Currently, this field must always be set to `true`.
776
- # This confirms the deletion of this field from any tags using this field.
777
- # `force = false` will be supported in the future.
892
+ # Required. If true, deletes this field from any tags that use it.
893
+ #
894
+ # Currently, `true` is the only supported value.
778
895
  class DeleteTagTemplateFieldRequest
779
896
  include ::Google::Protobuf::MessageExts
780
897
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -784,21 +901,18 @@ module Google
784
901
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#list_tags ListTags}.
785
902
  # @!attribute [rw] parent
786
903
  # @return [::String]
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
789
- # {::Google::Cloud::DataCatalog::V1::EntryGroup EntryGroup}.
790
- #
791
- # Examples:
904
+ # Required. The name of the Data Catalog resource to list the tags of.
792
905
  #
793
- # * projects/\\{project_id}/locations/\\{location}/entryGroups/\\{entry_group_id}
794
- # * projects/\\{project_id}/locations/\\{location}/entryGroups/\\{entry_group_id}/entries/\\{entry_id}
906
+ # The resource can be an {::Google::Cloud::DataCatalog::V1::Entry Entry}
907
+ # or an {::Google::Cloud::DataCatalog::V1::EntryGroup EntryGroup}
908
+ # (without `/entries/{entries}` at the end).
795
909
  # @!attribute [rw] page_size
796
910
  # @return [::Integer]
797
- # The maximum number of tags to return. Default is 10. Max limit is 1000.
911
+ # The maximum number of tags to return. Default is 10. Maximum limit is 1000.
798
912
  # @!attribute [rw] page_token
799
913
  # @return [::String]
800
- # Token that specifies which page is requested. If empty, the first page is
801
- # returned.
914
+ # Pagination token that specifies the next page to return. If empty, the
915
+ # first page is returned.
802
916
  class ListTagsRequest
803
917
  include ::Google::Protobuf::MessageExts
804
918
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -811,8 +925,8 @@ module Google
811
925
  # {::Google::Cloud::DataCatalog::V1::Tag Tag} details.
812
926
  # @!attribute [rw] next_page_token
813
927
  # @return [::String]
814
- # Token to retrieve the next page of results. It is set to empty if no items
815
- # remain in results.
928
+ # Pagination token of the next results page. Empty if there are
929
+ # no more items in results.
816
930
  class ListTagsResponse
817
931
  include ::Google::Protobuf::MessageExts
818
932
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -822,24 +936,24 @@ module Google
822
936
  # {::Google::Cloud::DataCatalog::V1::DataCatalog::Client#list_entries ListEntries}.
823
937
  # @!attribute [rw] parent
824
938
  # @return [::String]
825
- # Required. The name of the entry group that contains the entries, which can
826
- # be provided in URL format. Example:
939
+ # Required. The name of the entry group that contains the entries to list.
827
940
  #
828
- # * projects/\\{project_id}/locations/\\{location}/entryGroups/\\{entry_group_id}
941
+ # Can be provided in URL format.
829
942
  # @!attribute [rw] page_size
830
943
  # @return [::Integer]
831
- # The maximum number of items to return. Default is 10. Max limit is 1000.
832
- # Throws an invalid argument for `page_size > 1000`.
944
+ # The maximum number of items to return. Default is 10. Maximum limit is
945
+ # 1000. Throws an invalid argument if `page_size` is more than 1000.
833
946
  # @!attribute [rw] page_token
834
947
  # @return [::String]
835
- # Token that specifies which page is requested. If empty, the first page is
836
- # returned.
948
+ # Pagination token that specifies the next page to return. If empty, the
949
+ # first page is returned.
837
950
  # @!attribute [rw] read_mask
838
951
  # @return [::Google::Protobuf::FieldMask]
839
- # The fields to return for each Entry. If not set or empty, all
952
+ # The fields to return for each entry. If empty or omitted, all
840
953
  # fields are returned.
841
- # For example, setting read_mask to contain only one path "name" will cause
842
- # ListEntries to return a list of Entries with only "name" field.
954
+ #
955
+ # For example, to return a list of entries with only the `name` field,
956
+ # set `read_mask` to only one path with the `name` value.
843
957
  class ListEntriesRequest
844
958
  include ::Google::Protobuf::MessageExts
845
959
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -852,39 +966,49 @@ module Google
852
966
  # Entry details.
853
967
  # @!attribute [rw] next_page_token
854
968
  # @return [::String]
855
- # Token to retrieve the next page of results. It is set to empty if no items
856
- # remain in results.
969
+ # Pagination token of the next results page. Empty if there are no more items
970
+ # in results.
857
971
  class ListEntriesResponse
858
972
  include ::Google::Protobuf::MessageExts
859
973
  extend ::Google::Protobuf::MessageExts::ClassMethods
860
974
  end
861
975
 
862
- # Entry resources in Data Catalog can be of different types e.g. a BigQuery
863
- # Table entry is of type `TABLE`. This enum describes all the possible types
864
- # Data Catalog contains.
976
+ # The enum field that lists all the types of entry resources in Data
977
+ # Catalog. For example, a BigQuery table entry has the `TABLE` type.
865
978
  module EntryType
866
979
  # Default unknown type.
867
980
  ENTRY_TYPE_UNSPECIFIED = 0
868
981
 
869
- # Output only. The type of entry that has a GoogleSQL schema, including
982
+ # Output only. The entry type that has a GoogleSQL schema, including
870
983
  # logical views.
871
984
  TABLE = 2
872
985
 
873
- # Output only. The type of models, examples include
874
- # https://cloud.google.com/bigquery-ml/docs/bigqueryml-intro
986
+ # Output only. The type of models.
987
+ #
988
+ # For more information, see [Supported models in BigQuery ML]
989
+ # (https://cloud.google.com/bigquery-ml/docs/introduction#supported_models_in).
875
990
  MODEL = 5
876
991
 
877
- # An entry type which is used for streaming entries. Example:
878
- # Pub/Sub topic.
992
+ # An entry type for streaming entries. For example, a Pub/Sub topic.
879
993
  DATA_STREAM = 3
880
994
 
881
- # An entry type which is a set of files or objects. Example:
995
+ # An entry type for a set of files or objects. For example, a
882
996
  # Cloud Storage fileset.
883
997
  FILESET = 4
884
998
 
999
+ # A group of servers that work together. For example, a Kafka cluster.
1000
+ CLUSTER = 6
1001
+
885
1002
  # A database.
886
1003
  DATABASE = 7
887
1004
 
1005
+ # Output only. Connection to a data source. For example, a BigQuery
1006
+ # connection.
1007
+ DATA_SOURCE_CONNECTION = 8
1008
+
1009
+ # Output only. Routine, for example, a BigQuery routine.
1010
+ ROUTINE = 9
1011
+
888
1012
  # A service, for example, a Dataproc Metastore service.
889
1013
  SERVICE = 14
890
1014
  end