google-cloud-bigquery-data_policies-v1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,50 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 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
+ require "googleauth"
20
+
21
+ module Google
22
+ module Cloud
23
+ module Bigquery
24
+ module DataPolicies
25
+ module V1
26
+ module DataPolicyService
27
+ # Credentials for the DataPolicyService API.
28
+ class Credentials < ::Google::Auth::Credentials
29
+ self.scope = [
30
+ "https://www.googleapis.com/auth/bigquery",
31
+ "https://www.googleapis.com/auth/cloud-platform"
32
+ ]
33
+ self.env_vars = [
34
+ "GOOGLE_CLOUD_CREDENTIALS",
35
+ "GOOGLE_CLOUD_KEYFILE",
36
+ "GCLOUD_KEYFILE",
37
+ "GOOGLE_CLOUD_CREDENTIALS_JSON",
38
+ "GOOGLE_CLOUD_KEYFILE_JSON",
39
+ "GCLOUD_KEYFILE_JSON"
40
+ ]
41
+ self.paths = [
42
+ "~/.config/google_cloud/application_default_credentials.json"
43
+ ]
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 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 Bigquery
23
+ module DataPolicies
24
+ module V1
25
+ module DataPolicyService
26
+ # Path helper methods for the DataPolicyService API.
27
+ module Paths
28
+ ##
29
+ # Create a fully-qualified DataPolicy resource string.
30
+ #
31
+ # The resource will be in the following format:
32
+ #
33
+ # `projects/{project}/locations/{location}/dataPolicies/{data_policy}`
34
+ #
35
+ # @param project [String]
36
+ # @param location [String]
37
+ # @param data_policy [String]
38
+ #
39
+ # @return [::String]
40
+ def data_policy_path project:, location:, data_policy:
41
+ raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
42
+ raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
43
+
44
+ "projects/#{project}/locations/#{location}/dataPolicies/#{data_policy}"
45
+ end
46
+
47
+ ##
48
+ # Create a fully-qualified Location resource string.
49
+ #
50
+ # The resource will be in the following format:
51
+ #
52
+ # `projects/{project}/locations/{location}`
53
+ #
54
+ # @param project [String]
55
+ # @param location [String]
56
+ #
57
+ # @return [::String]
58
+ def location_path project:, location:
59
+ raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
60
+
61
+ "projects/#{project}/locations/#{location}"
62
+ end
63
+
64
+ extend self
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 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
+ require "gapic/common"
20
+ require "gapic/config"
21
+ require "gapic/config/method"
22
+
23
+ require "google/cloud/bigquery/data_policies/v1/version"
24
+
25
+ require "google/cloud/bigquery/data_policies/v1/data_policy_service/credentials"
26
+ require "google/cloud/bigquery/data_policies/v1/data_policy_service/paths"
27
+ require "google/cloud/bigquery/data_policies/v1/data_policy_service/client"
28
+
29
+ module Google
30
+ module Cloud
31
+ module Bigquery
32
+ module DataPolicies
33
+ module V1
34
+ ##
35
+ # Data Policy Service provides APIs for managing the label-policy bindings.
36
+ #
37
+ # @example Load this service and instantiate a gRPC client
38
+ #
39
+ # require "google/cloud/bigquery/data_policies/v1/data_policy_service"
40
+ # client = ::Google::Cloud::Bigquery::DataPolicies::V1::DataPolicyService::Client.new
41
+ #
42
+ module DataPolicyService
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
49
+
50
+ helper_path = ::File.join __dir__, "data_policy_service", "helpers.rb"
51
+ require "google/cloud/bigquery/data_policies/v1/data_policy_service/helpers" if ::File.file? helper_path
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 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 Bigquery
23
+ module DataPolicies
24
+ module V1
25
+ VERSION = "0.1.0"
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 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
+ require "google/cloud/bigquery/data_policies/v1/data_policy_service"
20
+ require "google/cloud/bigquery/data_policies/v1/version"
21
+
22
+ module Google
23
+ module Cloud
24
+ module Bigquery
25
+ module DataPolicies
26
+ ##
27
+ # API client module.
28
+ #
29
+ # @example Load this package, including all its services, and instantiate a gRPC client
30
+ #
31
+ # require "google/cloud/bigquery/data_policies/v1"
32
+ # client = ::Google::Cloud::Bigquery::DataPolicies::V1::DataPolicyService::Client.new
33
+ #
34
+ module V1
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
40
+
41
+ helper_path = ::File.join __dir__, "v1", "_helpers.rb"
42
+ require "google/cloud/bigquery/data_policies/v1/_helpers" if ::File.file? helper_path
@@ -0,0 +1,95 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/bigquery/datapolicies/v1/datapolicy.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/api/annotations_pb'
7
+ require 'google/api/client_pb'
8
+ require 'google/api/field_behavior_pb'
9
+ require 'google/api/resource_pb'
10
+ require 'google/iam/v1/iam_policy_pb'
11
+ require 'google/iam/v1/policy_pb'
12
+ require 'google/protobuf/empty_pb'
13
+ require 'google/protobuf/field_mask_pb'
14
+
15
+ Google::Protobuf::DescriptorPool.generated_pool.build do
16
+ add_file("google/cloud/bigquery/datapolicies/v1/datapolicy.proto", :syntax => :proto3) do
17
+ add_message "google.cloud.bigquery.datapolicies.v1.CreateDataPolicyRequest" do
18
+ optional :parent, :string, 1
19
+ optional :data_policy, :message, 2, "google.cloud.bigquery.datapolicies.v1.DataPolicy"
20
+ end
21
+ add_message "google.cloud.bigquery.datapolicies.v1.UpdateDataPolicyRequest" do
22
+ optional :data_policy, :message, 1, "google.cloud.bigquery.datapolicies.v1.DataPolicy"
23
+ optional :update_mask, :message, 2, "google.protobuf.FieldMask"
24
+ end
25
+ add_message "google.cloud.bigquery.datapolicies.v1.RenameDataPolicyRequest" do
26
+ optional :name, :string, 1
27
+ optional :new_data_policy_id, :string, 2
28
+ end
29
+ add_message "google.cloud.bigquery.datapolicies.v1.DeleteDataPolicyRequest" do
30
+ optional :name, :string, 1
31
+ end
32
+ add_message "google.cloud.bigquery.datapolicies.v1.GetDataPolicyRequest" do
33
+ optional :name, :string, 1
34
+ end
35
+ add_message "google.cloud.bigquery.datapolicies.v1.ListDataPoliciesRequest" do
36
+ optional :parent, :string, 1
37
+ optional :page_size, :int32, 2
38
+ optional :page_token, :string, 3
39
+ optional :filter, :string, 4
40
+ end
41
+ add_message "google.cloud.bigquery.datapolicies.v1.ListDataPoliciesResponse" do
42
+ repeated :data_policies, :message, 1, "google.cloud.bigquery.datapolicies.v1.DataPolicy"
43
+ optional :next_page_token, :string, 2
44
+ end
45
+ add_message "google.cloud.bigquery.datapolicies.v1.DataPolicy" do
46
+ optional :name, :string, 1
47
+ optional :data_policy_type, :enum, 2, "google.cloud.bigquery.datapolicies.v1.DataPolicy.DataPolicyType"
48
+ optional :data_policy_id, :string, 3
49
+ oneof :matching_label do
50
+ optional :policy_tag, :string, 4
51
+ end
52
+ oneof :policy do
53
+ optional :data_masking_policy, :message, 5, "google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy"
54
+ end
55
+ end
56
+ add_enum "google.cloud.bigquery.datapolicies.v1.DataPolicy.DataPolicyType" do
57
+ value :DATA_POLICY_TYPE_UNSPECIFIED, 0
58
+ value :COLUMN_LEVEL_SECURITY_POLICY, 3
59
+ value :DATA_MASKING_POLICY, 2
60
+ end
61
+ add_message "google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy" do
62
+ oneof :masking_expression do
63
+ optional :predefined_expression, :enum, 1, "google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy.PredefinedExpression"
64
+ end
65
+ end
66
+ add_enum "google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy.PredefinedExpression" do
67
+ value :PREDEFINED_EXPRESSION_UNSPECIFIED, 0
68
+ value :SHA256, 3
69
+ value :ALWAYS_NULL, 5
70
+ value :DEFAULT_MASKING_VALUE, 7
71
+ end
72
+ end
73
+ end
74
+
75
+ module Google
76
+ module Cloud
77
+ module Bigquery
78
+ module DataPolicies
79
+ module V1
80
+ CreateDataPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.CreateDataPolicyRequest").msgclass
81
+ UpdateDataPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.UpdateDataPolicyRequest").msgclass
82
+ RenameDataPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.RenameDataPolicyRequest").msgclass
83
+ DeleteDataPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.DeleteDataPolicyRequest").msgclass
84
+ GetDataPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.GetDataPolicyRequest").msgclass
85
+ ListDataPoliciesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.ListDataPoliciesRequest").msgclass
86
+ ListDataPoliciesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.ListDataPoliciesResponse").msgclass
87
+ DataPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.DataPolicy").msgclass
88
+ DataPolicy::DataPolicyType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.DataPolicy.DataPolicyType").enummodule
89
+ DataMaskingPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy").msgclass
90
+ DataMaskingPolicy::PredefinedExpression = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy.PredefinedExpression").enummodule
91
+ end
92
+ end
93
+ end
94
+ end
95
+ end
@@ -0,0 +1,65 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # Source: google/cloud/bigquery/datapolicies/v1/datapolicy.proto for package 'Google.Cloud.Bigquery.DataPolicies.V1'
3
+ # Original file comments:
4
+ # Copyright 2022 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/bigquery/datapolicies/v1/datapolicy_pb'
21
+
22
+ module Google
23
+ module Cloud
24
+ module Bigquery
25
+ module DataPolicies
26
+ module V1
27
+ module DataPolicyService
28
+ # Data Policy Service provides APIs for managing the label-policy bindings.
29
+ class Service
30
+
31
+ include ::GRPC::GenericService
32
+
33
+ self.marshal_class_method = :encode
34
+ self.unmarshal_class_method = :decode
35
+ self.service_name = 'google.cloud.bigquery.datapolicies.v1.DataPolicyService'
36
+
37
+ # Creates a new data policy under a project with the given `dataPolicyId`
38
+ # (used as the display name), policy tag, and data policy type.
39
+ rpc :CreateDataPolicy, ::Google::Cloud::Bigquery::DataPolicies::V1::CreateDataPolicyRequest, ::Google::Cloud::Bigquery::DataPolicies::V1::DataPolicy
40
+ # Updates the metadata for an existing data policy. The target data policy
41
+ # can be specified by the resource name.
42
+ rpc :UpdateDataPolicy, ::Google::Cloud::Bigquery::DataPolicies::V1::UpdateDataPolicyRequest, ::Google::Cloud::Bigquery::DataPolicies::V1::DataPolicy
43
+ # Renames the id (display name) of the specified data policy.
44
+ rpc :RenameDataPolicy, ::Google::Cloud::Bigquery::DataPolicies::V1::RenameDataPolicyRequest, ::Google::Cloud::Bigquery::DataPolicies::V1::DataPolicy
45
+ # Deletes the data policy specified by its resource name.
46
+ rpc :DeleteDataPolicy, ::Google::Cloud::Bigquery::DataPolicies::V1::DeleteDataPolicyRequest, ::Google::Protobuf::Empty
47
+ # Gets the data policy specified by its resource name.
48
+ rpc :GetDataPolicy, ::Google::Cloud::Bigquery::DataPolicies::V1::GetDataPolicyRequest, ::Google::Cloud::Bigquery::DataPolicies::V1::DataPolicy
49
+ # List all of the data policies in the specified parent project.
50
+ rpc :ListDataPolicies, ::Google::Cloud::Bigquery::DataPolicies::V1::ListDataPoliciesRequest, ::Google::Cloud::Bigquery::DataPolicies::V1::ListDataPoliciesResponse
51
+ # Gets the IAM policy for the specified data policy.
52
+ rpc :GetIamPolicy, ::Google::Iam::V1::GetIamPolicyRequest, ::Google::Iam::V1::Policy
53
+ # Sets the IAM policy for the specified data policy.
54
+ rpc :SetIamPolicy, ::Google::Iam::V1::SetIamPolicyRequest, ::Google::Iam::V1::Policy
55
+ # Returns the caller's permission on the specified data policy resource.
56
+ rpc :TestIamPermissions, ::Google::Iam::V1::TestIamPermissionsRequest, ::Google::Iam::V1::TestIamPermissionsResponse
57
+ end
58
+
59
+ Stub = Service.rpc_stub_class
60
+ end
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 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
+ # This gem does not autoload during Bundler.require. To load this gem,
20
+ # issue explicit require statements for the packages desired, e.g.:
21
+ # require "google/cloud/bigquery/data_policies/v1"
@@ -0,0 +1,4 @@
1
+ # BigQuery Data Policy Service V1 Protocol Buffer Documentation
2
+
3
+ These files are for the YARD documentation of the generated protobuf files.
4
+ They are not intended to be required or loaded at runtime.