google-cloud-resource_manager-v3 0.2.0 → 0.4.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 (58) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +1 -1
  3. data/README.md +12 -7
  4. data/lib/google/cloud/resource_manager/v3/folders/client.rb +28 -32
  5. data/lib/google/cloud/resource_manager/v3/folders/operations.rb +15 -14
  6. data/lib/google/cloud/resource_manager/v3/folders/rest/client.rb +1269 -0
  7. data/lib/google/cloud/resource_manager/v3/folders/rest/operations.rb +793 -0
  8. data/lib/google/cloud/resource_manager/v3/folders/rest/service_stub.rb +698 -0
  9. data/lib/google/cloud/resource_manager/v3/folders/rest.rb +55 -0
  10. data/lib/google/cloud/resource_manager/v3/folders.rb +7 -1
  11. data/lib/google/cloud/resource_manager/v3/organizations/client.rb +4 -6
  12. data/lib/google/cloud/resource_manager/v3/organizations/rest/client.rb +702 -0
  13. data/lib/google/cloud/resource_manager/v3/organizations/rest/service_stub.rb +344 -0
  14. data/lib/google/cloud/resource_manager/v3/organizations/rest.rb +52 -0
  15. data/lib/google/cloud/resource_manager/v3/organizations.rb +7 -1
  16. data/lib/google/cloud/resource_manager/v3/projects/client.rb +28 -32
  17. data/lib/google/cloud/resource_manager/v3/projects/operations.rb +15 -14
  18. data/lib/google/cloud/resource_manager/v3/projects/rest/client.rb +1299 -0
  19. data/lib/google/cloud/resource_manager/v3/projects/rest/operations.rb +793 -0
  20. data/lib/google/cloud/resource_manager/v3/projects/rest/service_stub.rb +698 -0
  21. data/lib/google/cloud/resource_manager/v3/projects/rest.rb +53 -0
  22. data/lib/google/cloud/resource_manager/v3/projects.rb +7 -1
  23. data/lib/google/cloud/resource_manager/v3/rest.rb +42 -0
  24. data/lib/google/cloud/resource_manager/v3/tag_bindings/client.rb +12 -14
  25. data/lib/google/cloud/resource_manager/v3/tag_bindings/operations.rb +15 -14
  26. data/lib/google/cloud/resource_manager/v3/tag_bindings/rest/client.rb +527 -0
  27. data/lib/google/cloud/resource_manager/v3/tag_bindings/rest/operations.rb +793 -0
  28. data/lib/google/cloud/resource_manager/v3/tag_bindings/rest/service_stub.rb +222 -0
  29. data/lib/google/cloud/resource_manager/v3/tag_bindings/rest.rb +54 -0
  30. data/lib/google/cloud/resource_manager/v3/tag_bindings.rb +7 -1
  31. data/lib/google/cloud/resource_manager/v3/tag_keys/client.rb +16 -18
  32. data/lib/google/cloud/resource_manager/v3/tag_keys/operations.rb +15 -14
  33. data/lib/google/cloud/resource_manager/v3/tag_keys/rest/client.rb +938 -0
  34. data/lib/google/cloud/resource_manager/v3/tag_keys/rest/operations.rb +793 -0
  35. data/lib/google/cloud/resource_manager/v3/tag_keys/rest/service_stub.rb +521 -0
  36. data/lib/google/cloud/resource_manager/v3/tag_keys/rest.rb +53 -0
  37. data/lib/google/cloud/resource_manager/v3/tag_keys.rb +7 -1
  38. data/lib/google/cloud/resource_manager/v3/tag_values/client.rb +16 -18
  39. data/lib/google/cloud/resource_manager/v3/tag_values/operations.rb +15 -14
  40. data/lib/google/cloud/resource_manager/v3/tag_values/rest/client.rb +934 -0
  41. data/lib/google/cloud/resource_manager/v3/tag_values/rest/operations.rb +793 -0
  42. data/lib/google/cloud/resource_manager/v3/tag_values/rest/service_stub.rb +521 -0
  43. data/lib/google/cloud/resource_manager/v3/tag_values/rest.rb +53 -0
  44. data/lib/google/cloud/resource_manager/v3/tag_values.rb +7 -1
  45. data/lib/google/cloud/resource_manager/v3/version.rb +1 -1
  46. data/lib/google/cloud/resource_manager/v3.rb +7 -2
  47. data/lib/google/cloud/resourcemanager/v3/folders_pb.rb +2 -1
  48. data/lib/google/cloud/resourcemanager/v3/organizations_pb.rb +2 -2
  49. data/lib/google/cloud/resourcemanager/v3/projects_pb.rb +2 -1
  50. data/lib/google/cloud/resourcemanager/v3/tag_bindings_pb.rb +2 -1
  51. data/lib/google/cloud/resourcemanager/v3/tag_keys_pb.rb +2 -1
  52. data/lib/google/cloud/resourcemanager/v3/tag_values_pb.rb +2 -1
  53. data/proto_docs/google/api/client.rb +318 -0
  54. data/proto_docs/google/api/launch_stage.rb +71 -0
  55. data/proto_docs/google/protobuf/any.rb +3 -3
  56. data/proto_docs/google/protobuf/empty.rb +0 -2
  57. data/proto_docs/google/rpc/status.rb +4 -2
  58. metadata +39 -13
@@ -0,0 +1,938 @@
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/errors"
20
+ require "google/cloud/resourcemanager/v3/tag_keys_pb"
21
+ require "google/cloud/resource_manager/v3/tag_keys/rest/service_stub"
22
+
23
+ module Google
24
+ module Cloud
25
+ module ResourceManager
26
+ module V3
27
+ module TagKeys
28
+ module Rest
29
+ ##
30
+ # REST client for the TagKeys service.
31
+ #
32
+ # Allow users to create and manage tag keys.
33
+ #
34
+ class Client
35
+ include Paths
36
+
37
+ # @private
38
+ attr_reader :tag_keys_stub
39
+
40
+ ##
41
+ # Configure the TagKeys Client class.
42
+ #
43
+ # See {::Google::Cloud::ResourceManager::V3::TagKeys::Rest::Client::Configuration}
44
+ # for a description of the configuration fields.
45
+ #
46
+ # @example
47
+ #
48
+ # # Modify the configuration for all TagKeys clients
49
+ # ::Google::Cloud::ResourceManager::V3::TagKeys::Rest::Client.configure do |config|
50
+ # config.timeout = 10.0
51
+ # end
52
+ #
53
+ # @yield [config] Configure the Client client.
54
+ # @yieldparam config [Client::Configuration]
55
+ #
56
+ # @return [Client::Configuration]
57
+ #
58
+ def self.configure
59
+ @configure ||= begin
60
+ namespace = ["Google", "Cloud", "ResourceManager", "V3"]
61
+ parent_config = while namespace.any?
62
+ parent_name = namespace.join "::"
63
+ parent_const = const_get parent_name
64
+ break parent_const.configure if parent_const.respond_to? :configure
65
+ namespace.pop
66
+ end
67
+ default_config = Client::Configuration.new parent_config
68
+
69
+ default_config.rpcs.list_tag_keys.timeout = 60.0
70
+ default_config.rpcs.list_tag_keys.retry_policy = {
71
+ initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [14]
72
+ }
73
+
74
+ default_config.rpcs.get_tag_key.timeout = 60.0
75
+ default_config.rpcs.get_tag_key.retry_policy = {
76
+ initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [14]
77
+ }
78
+
79
+ default_config.rpcs.create_tag_key.timeout = 60.0
80
+
81
+ default_config.rpcs.update_tag_key.timeout = 60.0
82
+
83
+ default_config.rpcs.delete_tag_key.timeout = 60.0
84
+
85
+ default_config.rpcs.get_iam_policy.timeout = 60.0
86
+ default_config.rpcs.get_iam_policy.retry_policy = {
87
+ initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [14]
88
+ }
89
+
90
+ default_config.rpcs.set_iam_policy.timeout = 60.0
91
+
92
+ default_config
93
+ end
94
+ yield @configure if block_given?
95
+ @configure
96
+ end
97
+
98
+ ##
99
+ # Configure the TagKeys Client instance.
100
+ #
101
+ # The configuration is set to the derived mode, meaning that values can be changed,
102
+ # but structural changes (adding new fields, etc.) are not allowed. Structural changes
103
+ # should be made on {Client.configure}.
104
+ #
105
+ # See {::Google::Cloud::ResourceManager::V3::TagKeys::Rest::Client::Configuration}
106
+ # for a description of the configuration fields.
107
+ #
108
+ # @yield [config] Configure the Client client.
109
+ # @yieldparam config [Client::Configuration]
110
+ #
111
+ # @return [Client::Configuration]
112
+ #
113
+ def configure
114
+ yield @config if block_given?
115
+ @config
116
+ end
117
+
118
+ ##
119
+ # Create a new TagKeys REST client object.
120
+ #
121
+ # @example
122
+ #
123
+ # # Create a client using the default configuration
124
+ # client = ::Google::Cloud::ResourceManager::V3::TagKeys::Rest::Client.new
125
+ #
126
+ # # Create a client using a custom configuration
127
+ # client = ::Google::Cloud::ResourceManager::V3::TagKeys::Rest::Client.new do |config|
128
+ # config.timeout = 10.0
129
+ # end
130
+ #
131
+ # @yield [config] Configure the TagKeys client.
132
+ # @yieldparam config [Client::Configuration]
133
+ #
134
+ def initialize
135
+ # Create the configuration object
136
+ @config = Configuration.new Client.configure
137
+
138
+ # Yield the configuration if needed
139
+ yield @config if block_given?
140
+
141
+ # Create credentials
142
+ credentials = @config.credentials
143
+ # Use self-signed JWT if the endpoint is unchanged from default,
144
+ # but only if the default endpoint does not have a region prefix.
145
+ enable_self_signed_jwt = @config.endpoint == Client.configure.endpoint &&
146
+ !@config.endpoint.split(".").first.include?("-")
147
+ credentials ||= Credentials.default scope: @config.scope,
148
+ enable_self_signed_jwt: enable_self_signed_jwt
149
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
150
+ credentials = Credentials.new credentials, scope: @config.scope
151
+ end
152
+
153
+ @quota_project_id = @config.quota_project
154
+ @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
155
+
156
+ @operations_client = ::Google::Cloud::ResourceManager::V3::TagKeys::Rest::Operations.new do |config|
157
+ config.credentials = credentials
158
+ config.quota_project = @quota_project_id
159
+ config.endpoint = @config.endpoint
160
+ end
161
+
162
+ @tag_keys_stub = ::Google::Cloud::ResourceManager::V3::TagKeys::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
163
+ end
164
+
165
+ ##
166
+ # Get the associated client for long-running operations.
167
+ #
168
+ # @return [::Google::Cloud::ResourceManager::V3::TagKeys::Rest::Operations]
169
+ #
170
+ attr_reader :operations_client
171
+
172
+ # Service calls
173
+
174
+ ##
175
+ # Lists all TagKeys for a parent resource.
176
+ #
177
+ # @overload list_tag_keys(request, options = nil)
178
+ # Pass arguments to `list_tag_keys` via a request object, either of type
179
+ # {::Google::Cloud::ResourceManager::V3::ListTagKeysRequest} or an equivalent Hash.
180
+ #
181
+ # @param request [::Google::Cloud::ResourceManager::V3::ListTagKeysRequest, ::Hash]
182
+ # A request object representing the call parameters. Required. To specify no
183
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
184
+ # @param options [::Gapic::CallOptions, ::Hash]
185
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
186
+ #
187
+ # @overload list_tag_keys(parent: nil, page_size: nil, page_token: nil)
188
+ # Pass arguments to `list_tag_keys` via keyword arguments. Note that at
189
+ # least one keyword argument is required. To specify no parameters, or to keep all
190
+ # the default parameter values, pass an empty Hash as a request object (see above).
191
+ #
192
+ # @param parent [::String]
193
+ # Required. The resource name of the new TagKey's parent.
194
+ # Must be of the form `folders/{folder_id}` or `organizations/{org_id}`.
195
+ # @param page_size [::Integer]
196
+ # Optional. The maximum number of TagKeys to return in the response. The server allows
197
+ # a maximum of 300 TagKeys to return. If unspecified, the server will use 100
198
+ # as the default.
199
+ # @param page_token [::String]
200
+ # Optional. A pagination token returned from a previous call to `ListTagKey`
201
+ # that indicates where this listing should continue from.
202
+ # @yield [result, operation] Access the result along with the TransportOperation object
203
+ # @yieldparam result [::Gapic::Rest::PagedEnumerable<::Google::Cloud::ResourceManager::V3::TagKey>]
204
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
205
+ #
206
+ # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::ResourceManager::V3::TagKey>]
207
+ #
208
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
209
+ def list_tag_keys request, options = nil
210
+ raise ::ArgumentError, "request must be provided" if request.nil?
211
+
212
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ResourceManager::V3::ListTagKeysRequest
213
+
214
+ # Converts hash and nil to an options object
215
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
216
+
217
+ # Customize the options with defaults
218
+ call_metadata = @config.rpcs.list_tag_keys.metadata.to_h
219
+
220
+ # Set x-goog-api-client and x-goog-user-project headers
221
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
222
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
223
+ gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION,
224
+ transports_version_send: [:rest]
225
+
226
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
227
+
228
+ options.apply_defaults timeout: @config.rpcs.list_tag_keys.timeout,
229
+ metadata: call_metadata,
230
+ retry_policy: @config.rpcs.list_tag_keys.retry_policy
231
+
232
+ options.apply_defaults timeout: @config.timeout,
233
+ metadata: @config.metadata,
234
+ retry_policy: @config.retry_policy
235
+
236
+ @tag_keys_stub.list_tag_keys request, options do |result, operation|
237
+ result = ::Gapic::Rest::PagedEnumerable.new @tag_keys_stub, :list_tag_keys, "tag_keys", request, result, options
238
+ yield result, operation if block_given?
239
+ return result
240
+ end
241
+ rescue ::Gapic::Rest::Error => e
242
+ raise ::Google::Cloud::Error.from_error(e)
243
+ end
244
+
245
+ ##
246
+ # Retrieves a TagKey. This method will return `PERMISSION_DENIED` if the
247
+ # key does not exist or the user does not have permission to view it.
248
+ #
249
+ # @overload get_tag_key(request, options = nil)
250
+ # Pass arguments to `get_tag_key` via a request object, either of type
251
+ # {::Google::Cloud::ResourceManager::V3::GetTagKeyRequest} or an equivalent Hash.
252
+ #
253
+ # @param request [::Google::Cloud::ResourceManager::V3::GetTagKeyRequest, ::Hash]
254
+ # A request object representing the call parameters. Required. To specify no
255
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
256
+ # @param options [::Gapic::CallOptions, ::Hash]
257
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
258
+ #
259
+ # @overload get_tag_key(name: nil)
260
+ # Pass arguments to `get_tag_key` via keyword arguments. Note that at
261
+ # least one keyword argument is required. To specify no parameters, or to keep all
262
+ # the default parameter values, pass an empty Hash as a request object (see above).
263
+ #
264
+ # @param name [::String]
265
+ # Required. A resource name in the format `tagKeys/{id}`, such as
266
+ # `tagKeys/123`.
267
+ # @yield [result, operation] Access the result along with the TransportOperation object
268
+ # @yieldparam result [::Google::Cloud::ResourceManager::V3::TagKey]
269
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
270
+ #
271
+ # @return [::Google::Cloud::ResourceManager::V3::TagKey]
272
+ #
273
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
274
+ def get_tag_key request, options = nil
275
+ raise ::ArgumentError, "request must be provided" if request.nil?
276
+
277
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ResourceManager::V3::GetTagKeyRequest
278
+
279
+ # Converts hash and nil to an options object
280
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
281
+
282
+ # Customize the options with defaults
283
+ call_metadata = @config.rpcs.get_tag_key.metadata.to_h
284
+
285
+ # Set x-goog-api-client and x-goog-user-project headers
286
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
287
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
288
+ gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION,
289
+ transports_version_send: [:rest]
290
+
291
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
292
+
293
+ options.apply_defaults timeout: @config.rpcs.get_tag_key.timeout,
294
+ metadata: call_metadata,
295
+ retry_policy: @config.rpcs.get_tag_key.retry_policy
296
+
297
+ options.apply_defaults timeout: @config.timeout,
298
+ metadata: @config.metadata,
299
+ retry_policy: @config.retry_policy
300
+
301
+ @tag_keys_stub.get_tag_key request, options do |result, operation|
302
+ yield result, operation if block_given?
303
+ return result
304
+ end
305
+ rescue ::Gapic::Rest::Error => e
306
+ raise ::Google::Cloud::Error.from_error(e)
307
+ end
308
+
309
+ ##
310
+ # Creates a new TagKey. If another request with the same parameters is
311
+ # sent while the original request is in process, the second request
312
+ # will receive an error. A maximum of 300 TagKeys can exist under a parent at
313
+ # any given time.
314
+ #
315
+ # @overload create_tag_key(request, options = nil)
316
+ # Pass arguments to `create_tag_key` via a request object, either of type
317
+ # {::Google::Cloud::ResourceManager::V3::CreateTagKeyRequest} or an equivalent Hash.
318
+ #
319
+ # @param request [::Google::Cloud::ResourceManager::V3::CreateTagKeyRequest, ::Hash]
320
+ # A request object representing the call parameters. Required. To specify no
321
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
322
+ # @param options [::Gapic::CallOptions, ::Hash]
323
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
324
+ #
325
+ # @overload create_tag_key(tag_key: nil, validate_only: nil)
326
+ # Pass arguments to `create_tag_key` via keyword arguments. Note that at
327
+ # least one keyword argument is required. To specify no parameters, or to keep all
328
+ # the default parameter values, pass an empty Hash as a request object (see above).
329
+ #
330
+ # @param tag_key [::Google::Cloud::ResourceManager::V3::TagKey, ::Hash]
331
+ # Required. The TagKey to be created. Only fields `short_name`, `description`,
332
+ # and `parent` are considered during the creation request.
333
+ # @param validate_only [::Boolean]
334
+ # Optional. Set to true to perform validations necessary for creating the resource, but
335
+ # not actually perform the action.
336
+ # @yield [result, operation] Access the result along with the TransportOperation object
337
+ # @yieldparam result [::Gapic::Operation]
338
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
339
+ #
340
+ # @return [::Gapic::Operation]
341
+ #
342
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
343
+ def create_tag_key request, options = nil
344
+ raise ::ArgumentError, "request must be provided" if request.nil?
345
+
346
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ResourceManager::V3::CreateTagKeyRequest
347
+
348
+ # Converts hash and nil to an options object
349
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
350
+
351
+ # Customize the options with defaults
352
+ call_metadata = @config.rpcs.create_tag_key.metadata.to_h
353
+
354
+ # Set x-goog-api-client and x-goog-user-project headers
355
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
356
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
357
+ gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION,
358
+ transports_version_send: [:rest]
359
+
360
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
361
+
362
+ options.apply_defaults timeout: @config.rpcs.create_tag_key.timeout,
363
+ metadata: call_metadata,
364
+ retry_policy: @config.rpcs.create_tag_key.retry_policy
365
+
366
+ options.apply_defaults timeout: @config.timeout,
367
+ metadata: @config.metadata,
368
+ retry_policy: @config.retry_policy
369
+
370
+ @tag_keys_stub.create_tag_key request, options do |result, operation|
371
+ result = ::Gapic::Operation.new result, @operations_client, options: options
372
+ yield result, operation if block_given?
373
+ return result
374
+ end
375
+ rescue ::Gapic::Rest::Error => e
376
+ raise ::Google::Cloud::Error.from_error(e)
377
+ end
378
+
379
+ ##
380
+ # Updates the attributes of the TagKey resource.
381
+ #
382
+ # @overload update_tag_key(request, options = nil)
383
+ # Pass arguments to `update_tag_key` via a request object, either of type
384
+ # {::Google::Cloud::ResourceManager::V3::UpdateTagKeyRequest} or an equivalent Hash.
385
+ #
386
+ # @param request [::Google::Cloud::ResourceManager::V3::UpdateTagKeyRequest, ::Hash]
387
+ # A request object representing the call parameters. Required. To specify no
388
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
389
+ # @param options [::Gapic::CallOptions, ::Hash]
390
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
391
+ #
392
+ # @overload update_tag_key(tag_key: nil, update_mask: nil, validate_only: nil)
393
+ # Pass arguments to `update_tag_key` via keyword arguments. Note that at
394
+ # least one keyword argument is required. To specify no parameters, or to keep all
395
+ # the default parameter values, pass an empty Hash as a request object (see above).
396
+ #
397
+ # @param tag_key [::Google::Cloud::ResourceManager::V3::TagKey, ::Hash]
398
+ # Required. The new definition of the TagKey. Only the `description` and `etag` fields
399
+ # can be updated by this request. If the `etag` field is not empty, it
400
+ # must match the `etag` field of the existing tag key. Otherwise,
401
+ # `FAILED_PRECONDITION` will be returned.
402
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
403
+ # Fields to be updated. The mask may only contain `description` or
404
+ # `etag`. If omitted entirely, both `description` and `etag` are assumed to
405
+ # be significant.
406
+ # @param validate_only [::Boolean]
407
+ # Set as true to perform validations necessary for updating the resource, but
408
+ # not actually perform the action.
409
+ # @yield [result, operation] Access the result along with the TransportOperation object
410
+ # @yieldparam result [::Gapic::Operation]
411
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
412
+ #
413
+ # @return [::Gapic::Operation]
414
+ #
415
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
416
+ def update_tag_key request, options = nil
417
+ raise ::ArgumentError, "request must be provided" if request.nil?
418
+
419
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ResourceManager::V3::UpdateTagKeyRequest
420
+
421
+ # Converts hash and nil to an options object
422
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
423
+
424
+ # Customize the options with defaults
425
+ call_metadata = @config.rpcs.update_tag_key.metadata.to_h
426
+
427
+ # Set x-goog-api-client and x-goog-user-project headers
428
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
429
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
430
+ gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION,
431
+ transports_version_send: [:rest]
432
+
433
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
434
+
435
+ options.apply_defaults timeout: @config.rpcs.update_tag_key.timeout,
436
+ metadata: call_metadata,
437
+ retry_policy: @config.rpcs.update_tag_key.retry_policy
438
+
439
+ options.apply_defaults timeout: @config.timeout,
440
+ metadata: @config.metadata,
441
+ retry_policy: @config.retry_policy
442
+
443
+ @tag_keys_stub.update_tag_key request, options do |result, operation|
444
+ result = ::Gapic::Operation.new result, @operations_client, options: options
445
+ yield result, operation if block_given?
446
+ return result
447
+ end
448
+ rescue ::Gapic::Rest::Error => e
449
+ raise ::Google::Cloud::Error.from_error(e)
450
+ end
451
+
452
+ ##
453
+ # Deletes a TagKey. The TagKey cannot be deleted if it has any child
454
+ # TagValues.
455
+ #
456
+ # @overload delete_tag_key(request, options = nil)
457
+ # Pass arguments to `delete_tag_key` via a request object, either of type
458
+ # {::Google::Cloud::ResourceManager::V3::DeleteTagKeyRequest} or an equivalent Hash.
459
+ #
460
+ # @param request [::Google::Cloud::ResourceManager::V3::DeleteTagKeyRequest, ::Hash]
461
+ # A request object representing the call parameters. Required. To specify no
462
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
463
+ # @param options [::Gapic::CallOptions, ::Hash]
464
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
465
+ #
466
+ # @overload delete_tag_key(name: nil, validate_only: nil, etag: nil)
467
+ # Pass arguments to `delete_tag_key` via keyword arguments. Note that at
468
+ # least one keyword argument is required. To specify no parameters, or to keep all
469
+ # the default parameter values, pass an empty Hash as a request object (see above).
470
+ #
471
+ # @param name [::String]
472
+ # Required. The resource name of a TagKey to be deleted in the format `tagKeys/123`.
473
+ # The TagKey cannot be a parent of any existing TagValues or it will not be
474
+ # deleted successfully.
475
+ # @param validate_only [::Boolean]
476
+ # Optional. Set as true to perform validations necessary for deletion, but not actually
477
+ # perform the action.
478
+ # @param etag [::String]
479
+ # Optional. The etag known to the client for the expected state of the TagKey. This is
480
+ # to be used for optimistic concurrency.
481
+ # @yield [result, operation] Access the result along with the TransportOperation object
482
+ # @yieldparam result [::Gapic::Operation]
483
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
484
+ #
485
+ # @return [::Gapic::Operation]
486
+ #
487
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
488
+ def delete_tag_key request, options = nil
489
+ raise ::ArgumentError, "request must be provided" if request.nil?
490
+
491
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ResourceManager::V3::DeleteTagKeyRequest
492
+
493
+ # Converts hash and nil to an options object
494
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
495
+
496
+ # Customize the options with defaults
497
+ call_metadata = @config.rpcs.delete_tag_key.metadata.to_h
498
+
499
+ # Set x-goog-api-client and x-goog-user-project headers
500
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
501
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
502
+ gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION,
503
+ transports_version_send: [:rest]
504
+
505
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
506
+
507
+ options.apply_defaults timeout: @config.rpcs.delete_tag_key.timeout,
508
+ metadata: call_metadata,
509
+ retry_policy: @config.rpcs.delete_tag_key.retry_policy
510
+
511
+ options.apply_defaults timeout: @config.timeout,
512
+ metadata: @config.metadata,
513
+ retry_policy: @config.retry_policy
514
+
515
+ @tag_keys_stub.delete_tag_key request, options do |result, operation|
516
+ result = ::Gapic::Operation.new result, @operations_client, options: options
517
+ yield result, operation if block_given?
518
+ return result
519
+ end
520
+ rescue ::Gapic::Rest::Error => e
521
+ raise ::Google::Cloud::Error.from_error(e)
522
+ end
523
+
524
+ ##
525
+ # Gets the access control policy for a TagKey. The returned policy may be
526
+ # empty if no such policy or resource exists. The `resource` field should
527
+ # be the TagKey's resource name. For example, "tagKeys/1234".
528
+ # The caller must have
529
+ # `cloudresourcemanager.googleapis.com/tagKeys.getIamPolicy` permission on
530
+ # the specified TagKey.
531
+ #
532
+ # @overload get_iam_policy(request, options = nil)
533
+ # Pass arguments to `get_iam_policy` via a request object, either of type
534
+ # {::Google::Iam::V1::GetIamPolicyRequest} or an equivalent Hash.
535
+ #
536
+ # @param request [::Google::Iam::V1::GetIamPolicyRequest, ::Hash]
537
+ # A request object representing the call parameters. Required. To specify no
538
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
539
+ # @param options [::Gapic::CallOptions, ::Hash]
540
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
541
+ #
542
+ # @overload get_iam_policy(resource: nil, options: nil)
543
+ # Pass arguments to `get_iam_policy` via keyword arguments. Note that at
544
+ # least one keyword argument is required. To specify no parameters, or to keep all
545
+ # the default parameter values, pass an empty Hash as a request object (see above).
546
+ #
547
+ # @param resource [::String]
548
+ # REQUIRED: The resource for which the policy is being requested.
549
+ # See the operation documentation for the appropriate value for this field.
550
+ # @param options [::Google::Iam::V1::GetPolicyOptions, ::Hash]
551
+ # OPTIONAL: A `GetPolicyOptions` object for specifying options to
552
+ # `GetIamPolicy`.
553
+ # @yield [result, operation] Access the result along with the TransportOperation object
554
+ # @yieldparam result [::Google::Iam::V1::Policy]
555
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
556
+ #
557
+ # @return [::Google::Iam::V1::Policy]
558
+ #
559
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
560
+ def get_iam_policy request, options = nil
561
+ raise ::ArgumentError, "request must be provided" if request.nil?
562
+
563
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Iam::V1::GetIamPolicyRequest
564
+
565
+ # Converts hash and nil to an options object
566
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
567
+
568
+ # Customize the options with defaults
569
+ call_metadata = @config.rpcs.get_iam_policy.metadata.to_h
570
+
571
+ # Set x-goog-api-client and x-goog-user-project headers
572
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
573
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
574
+ gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION,
575
+ transports_version_send: [:rest]
576
+
577
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
578
+
579
+ options.apply_defaults timeout: @config.rpcs.get_iam_policy.timeout,
580
+ metadata: call_metadata,
581
+ retry_policy: @config.rpcs.get_iam_policy.retry_policy
582
+
583
+ options.apply_defaults timeout: @config.timeout,
584
+ metadata: @config.metadata,
585
+ retry_policy: @config.retry_policy
586
+
587
+ @tag_keys_stub.get_iam_policy request, options do |result, operation|
588
+ yield result, operation if block_given?
589
+ return result
590
+ end
591
+ rescue ::Gapic::Rest::Error => e
592
+ raise ::Google::Cloud::Error.from_error(e)
593
+ end
594
+
595
+ ##
596
+ # Sets the access control policy on a TagKey, replacing any existing
597
+ # policy. The `resource` field should be the TagKey's resource name.
598
+ # For example, "tagKeys/1234".
599
+ # The caller must have `resourcemanager.tagKeys.setIamPolicy` permission
600
+ # on the identified tagValue.
601
+ #
602
+ # @overload set_iam_policy(request, options = nil)
603
+ # Pass arguments to `set_iam_policy` via a request object, either of type
604
+ # {::Google::Iam::V1::SetIamPolicyRequest} or an equivalent Hash.
605
+ #
606
+ # @param request [::Google::Iam::V1::SetIamPolicyRequest, ::Hash]
607
+ # A request object representing the call parameters. Required. To specify no
608
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
609
+ # @param options [::Gapic::CallOptions, ::Hash]
610
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
611
+ #
612
+ # @overload set_iam_policy(resource: nil, policy: nil, update_mask: nil)
613
+ # Pass arguments to `set_iam_policy` via keyword arguments. Note that at
614
+ # least one keyword argument is required. To specify no parameters, or to keep all
615
+ # the default parameter values, pass an empty Hash as a request object (see above).
616
+ #
617
+ # @param resource [::String]
618
+ # REQUIRED: The resource for which the policy is being specified.
619
+ # See the operation documentation for the appropriate value for this field.
620
+ # @param policy [::Google::Iam::V1::Policy, ::Hash]
621
+ # REQUIRED: The complete policy to be applied to the `resource`. The size of
622
+ # the policy is limited to a few 10s of KB. An empty policy is a
623
+ # valid policy but certain Cloud Platform services (such as Projects)
624
+ # might reject them.
625
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
626
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
627
+ # the fields in the mask will be modified. If no mask is provided, the
628
+ # following default mask is used:
629
+ #
630
+ # `paths: "bindings, etag"`
631
+ # @yield [result, operation] Access the result along with the TransportOperation object
632
+ # @yieldparam result [::Google::Iam::V1::Policy]
633
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
634
+ #
635
+ # @return [::Google::Iam::V1::Policy]
636
+ #
637
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
638
+ def set_iam_policy request, options = nil
639
+ raise ::ArgumentError, "request must be provided" if request.nil?
640
+
641
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Iam::V1::SetIamPolicyRequest
642
+
643
+ # Converts hash and nil to an options object
644
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
645
+
646
+ # Customize the options with defaults
647
+ call_metadata = @config.rpcs.set_iam_policy.metadata.to_h
648
+
649
+ # Set x-goog-api-client and x-goog-user-project headers
650
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
651
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
652
+ gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION,
653
+ transports_version_send: [:rest]
654
+
655
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
656
+
657
+ options.apply_defaults timeout: @config.rpcs.set_iam_policy.timeout,
658
+ metadata: call_metadata,
659
+ retry_policy: @config.rpcs.set_iam_policy.retry_policy
660
+
661
+ options.apply_defaults timeout: @config.timeout,
662
+ metadata: @config.metadata,
663
+ retry_policy: @config.retry_policy
664
+
665
+ @tag_keys_stub.set_iam_policy request, options do |result, operation|
666
+ yield result, operation if block_given?
667
+ return result
668
+ end
669
+ rescue ::Gapic::Rest::Error => e
670
+ raise ::Google::Cloud::Error.from_error(e)
671
+ end
672
+
673
+ ##
674
+ # Returns permissions that a caller has on the specified TagKey.
675
+ # The `resource` field should be the TagKey's resource name.
676
+ # For example, "tagKeys/1234".
677
+ #
678
+ # There are no permissions required for making this API call.
679
+ #
680
+ # @overload test_iam_permissions(request, options = nil)
681
+ # Pass arguments to `test_iam_permissions` via a request object, either of type
682
+ # {::Google::Iam::V1::TestIamPermissionsRequest} or an equivalent Hash.
683
+ #
684
+ # @param request [::Google::Iam::V1::TestIamPermissionsRequest, ::Hash]
685
+ # A request object representing the call parameters. Required. To specify no
686
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
687
+ # @param options [::Gapic::CallOptions, ::Hash]
688
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
689
+ #
690
+ # @overload test_iam_permissions(resource: nil, permissions: nil)
691
+ # Pass arguments to `test_iam_permissions` via keyword arguments. Note that at
692
+ # least one keyword argument is required. To specify no parameters, or to keep all
693
+ # the default parameter values, pass an empty Hash as a request object (see above).
694
+ #
695
+ # @param resource [::String]
696
+ # REQUIRED: The resource for which the policy detail is being requested.
697
+ # See the operation documentation for the appropriate value for this field.
698
+ # @param permissions [::Array<::String>]
699
+ # The set of permissions to check for the `resource`. Permissions with
700
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
701
+ # information see
702
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
703
+ # @yield [result, operation] Access the result along with the TransportOperation object
704
+ # @yieldparam result [::Google::Iam::V1::TestIamPermissionsResponse]
705
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
706
+ #
707
+ # @return [::Google::Iam::V1::TestIamPermissionsResponse]
708
+ #
709
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
710
+ def test_iam_permissions request, options = nil
711
+ raise ::ArgumentError, "request must be provided" if request.nil?
712
+
713
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Iam::V1::TestIamPermissionsRequest
714
+
715
+ # Converts hash and nil to an options object
716
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
717
+
718
+ # Customize the options with defaults
719
+ call_metadata = @config.rpcs.test_iam_permissions.metadata.to_h
720
+
721
+ # Set x-goog-api-client and x-goog-user-project headers
722
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
723
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
724
+ gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION,
725
+ transports_version_send: [:rest]
726
+
727
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
728
+
729
+ options.apply_defaults timeout: @config.rpcs.test_iam_permissions.timeout,
730
+ metadata: call_metadata,
731
+ retry_policy: @config.rpcs.test_iam_permissions.retry_policy
732
+
733
+ options.apply_defaults timeout: @config.timeout,
734
+ metadata: @config.metadata,
735
+ retry_policy: @config.retry_policy
736
+
737
+ @tag_keys_stub.test_iam_permissions request, options do |result, operation|
738
+ yield result, operation if block_given?
739
+ return result
740
+ end
741
+ rescue ::Gapic::Rest::Error => e
742
+ raise ::Google::Cloud::Error.from_error(e)
743
+ end
744
+
745
+ ##
746
+ # Configuration class for the TagKeys REST API.
747
+ #
748
+ # This class represents the configuration for TagKeys REST,
749
+ # providing control over timeouts, retry behavior, logging, transport
750
+ # parameters, and other low-level controls. Certain parameters can also be
751
+ # applied individually to specific RPCs. See
752
+ # {::Google::Cloud::ResourceManager::V3::TagKeys::Rest::Client::Configuration::Rpcs}
753
+ # for a list of RPCs that can be configured independently.
754
+ #
755
+ # Configuration can be applied globally to all clients, or to a single client
756
+ # on construction.
757
+ #
758
+ # @example
759
+ #
760
+ # # Modify the global config, setting the timeout for
761
+ # # list_tag_keys to 20 seconds,
762
+ # # and all remaining timeouts to 10 seconds.
763
+ # ::Google::Cloud::ResourceManager::V3::TagKeys::Rest::Client.configure do |config|
764
+ # config.timeout = 10.0
765
+ # config.rpcs.list_tag_keys.timeout = 20.0
766
+ # end
767
+ #
768
+ # # Apply the above configuration only to a new client.
769
+ # client = ::Google::Cloud::ResourceManager::V3::TagKeys::Rest::Client.new do |config|
770
+ # config.timeout = 10.0
771
+ # config.rpcs.list_tag_keys.timeout = 20.0
772
+ # end
773
+ #
774
+ # @!attribute [rw] endpoint
775
+ # The hostname or hostname:port of the service endpoint.
776
+ # Defaults to `"cloudresourcemanager.googleapis.com"`.
777
+ # @return [::String]
778
+ # @!attribute [rw] credentials
779
+ # Credentials to send with calls. You may provide any of the following types:
780
+ # * (`String`) The path to a service account key file in JSON format
781
+ # * (`Hash`) A service account key as a Hash
782
+ # * (`Google::Auth::Credentials`) A googleauth credentials object
783
+ # (see the [googleauth docs](https://googleapis.dev/ruby/googleauth/latest/index.html))
784
+ # * (`Signet::OAuth2::Client`) A signet oauth2 client object
785
+ # (see the [signet docs](https://googleapis.dev/ruby/signet/latest/Signet/OAuth2/Client.html))
786
+ # * (`nil`) indicating no credentials
787
+ # @return [::Object]
788
+ # @!attribute [rw] scope
789
+ # The OAuth scopes
790
+ # @return [::Array<::String>]
791
+ # @!attribute [rw] lib_name
792
+ # The library name as recorded in instrumentation and logging
793
+ # @return [::String]
794
+ # @!attribute [rw] lib_version
795
+ # The library version as recorded in instrumentation and logging
796
+ # @return [::String]
797
+ # @!attribute [rw] timeout
798
+ # The call timeout in seconds.
799
+ # @return [::Numeric]
800
+ # @!attribute [rw] metadata
801
+ # Additional headers to be sent with the call.
802
+ # @return [::Hash{::Symbol=>::String}]
803
+ # @!attribute [rw] retry_policy
804
+ # The retry policy. The value is a hash with the following keys:
805
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
806
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
807
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
808
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
809
+ # trigger a retry.
810
+ # @return [::Hash]
811
+ # @!attribute [rw] quota_project
812
+ # A separate project against which to charge quota.
813
+ # @return [::String]
814
+ #
815
+ class Configuration
816
+ extend ::Gapic::Config
817
+
818
+ config_attr :endpoint, "cloudresourcemanager.googleapis.com", ::String
819
+ config_attr :credentials, nil do |value|
820
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
821
+ allowed.any? { |klass| klass === value }
822
+ end
823
+ config_attr :scope, nil, ::String, ::Array, nil
824
+ config_attr :lib_name, nil, ::String, nil
825
+ config_attr :lib_version, nil, ::String, nil
826
+ config_attr :timeout, nil, ::Numeric, nil
827
+ config_attr :metadata, nil, ::Hash, nil
828
+ config_attr :retry_policy, nil, ::Hash, ::Proc, nil
829
+ config_attr :quota_project, nil, ::String, nil
830
+
831
+ # @private
832
+ def initialize parent_config = nil
833
+ @parent_config = parent_config unless parent_config.nil?
834
+
835
+ yield self if block_given?
836
+ end
837
+
838
+ ##
839
+ # Configurations for individual RPCs
840
+ # @return [Rpcs]
841
+ #
842
+ def rpcs
843
+ @rpcs ||= begin
844
+ parent_rpcs = nil
845
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
846
+ Rpcs.new parent_rpcs
847
+ end
848
+ end
849
+
850
+ ##
851
+ # Configuration RPC class for the TagKeys API.
852
+ #
853
+ # Includes fields providing the configuration for each RPC in this service.
854
+ # Each configuration object is of type `Gapic::Config::Method` and includes
855
+ # the following configuration fields:
856
+ #
857
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
858
+ # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional headers
859
+ # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
860
+ # include the following keys:
861
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
862
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
863
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
864
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
865
+ # trigger a retry.
866
+ #
867
+ class Rpcs
868
+ ##
869
+ # RPC-specific configuration for `list_tag_keys`
870
+ # @return [::Gapic::Config::Method]
871
+ #
872
+ attr_reader :list_tag_keys
873
+ ##
874
+ # RPC-specific configuration for `get_tag_key`
875
+ # @return [::Gapic::Config::Method]
876
+ #
877
+ attr_reader :get_tag_key
878
+ ##
879
+ # RPC-specific configuration for `create_tag_key`
880
+ # @return [::Gapic::Config::Method]
881
+ #
882
+ attr_reader :create_tag_key
883
+ ##
884
+ # RPC-specific configuration for `update_tag_key`
885
+ # @return [::Gapic::Config::Method]
886
+ #
887
+ attr_reader :update_tag_key
888
+ ##
889
+ # RPC-specific configuration for `delete_tag_key`
890
+ # @return [::Gapic::Config::Method]
891
+ #
892
+ attr_reader :delete_tag_key
893
+ ##
894
+ # RPC-specific configuration for `get_iam_policy`
895
+ # @return [::Gapic::Config::Method]
896
+ #
897
+ attr_reader :get_iam_policy
898
+ ##
899
+ # RPC-specific configuration for `set_iam_policy`
900
+ # @return [::Gapic::Config::Method]
901
+ #
902
+ attr_reader :set_iam_policy
903
+ ##
904
+ # RPC-specific configuration for `test_iam_permissions`
905
+ # @return [::Gapic::Config::Method]
906
+ #
907
+ attr_reader :test_iam_permissions
908
+
909
+ # @private
910
+ def initialize parent_rpcs = nil
911
+ list_tag_keys_config = parent_rpcs.list_tag_keys if parent_rpcs.respond_to? :list_tag_keys
912
+ @list_tag_keys = ::Gapic::Config::Method.new list_tag_keys_config
913
+ get_tag_key_config = parent_rpcs.get_tag_key if parent_rpcs.respond_to? :get_tag_key
914
+ @get_tag_key = ::Gapic::Config::Method.new get_tag_key_config
915
+ create_tag_key_config = parent_rpcs.create_tag_key if parent_rpcs.respond_to? :create_tag_key
916
+ @create_tag_key = ::Gapic::Config::Method.new create_tag_key_config
917
+ update_tag_key_config = parent_rpcs.update_tag_key if parent_rpcs.respond_to? :update_tag_key
918
+ @update_tag_key = ::Gapic::Config::Method.new update_tag_key_config
919
+ delete_tag_key_config = parent_rpcs.delete_tag_key if parent_rpcs.respond_to? :delete_tag_key
920
+ @delete_tag_key = ::Gapic::Config::Method.new delete_tag_key_config
921
+ get_iam_policy_config = parent_rpcs.get_iam_policy if parent_rpcs.respond_to? :get_iam_policy
922
+ @get_iam_policy = ::Gapic::Config::Method.new get_iam_policy_config
923
+ set_iam_policy_config = parent_rpcs.set_iam_policy if parent_rpcs.respond_to? :set_iam_policy
924
+ @set_iam_policy = ::Gapic::Config::Method.new set_iam_policy_config
925
+ test_iam_permissions_config = parent_rpcs.test_iam_permissions if parent_rpcs.respond_to? :test_iam_permissions
926
+ @test_iam_permissions = ::Gapic::Config::Method.new test_iam_permissions_config
927
+
928
+ yield self if block_given?
929
+ end
930
+ end
931
+ end
932
+ end
933
+ end
934
+ end
935
+ end
936
+ end
937
+ end
938
+ end