google-identity-access_context_manager-v1 0.1.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 (38) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +167 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +139 -0
  6. data/lib/google/identity/access_context_manager/v1/access_context_manager/client.rb +2358 -0
  7. data/lib/google/identity/access_context_manager/v1/access_context_manager/credentials.rb +47 -0
  8. data/lib/google/identity/access_context_manager/v1/access_context_manager/operations.rb +664 -0
  9. data/lib/google/identity/access_context_manager/v1/access_context_manager/paths.rb +112 -0
  10. data/lib/google/identity/access_context_manager/v1/access_context_manager.rb +60 -0
  11. data/lib/google/identity/access_context_manager/v1/version.rb +28 -0
  12. data/lib/google/identity/access_context_manager/v1.rb +38 -0
  13. data/lib/google/identity/accesscontextmanager/type/device_resources_pb.rb +43 -0
  14. data/lib/google/identity/accesscontextmanager/v1/access_context_manager_pb.rb +182 -0
  15. data/lib/google/identity/accesscontextmanager/v1/access_context_manager_services_pb.rb +224 -0
  16. data/lib/google/identity/accesscontextmanager/v1/access_level_pb.rb +73 -0
  17. data/lib/google/identity/accesscontextmanager/v1/access_policy_pb.rb +30 -0
  18. data/lib/google/identity/accesscontextmanager/v1/gcp_user_access_binding_pb.rb +27 -0
  19. data/lib/google/identity/accesscontextmanager/v1/service_perimeter_pb.rb +109 -0
  20. data/lib/google-identity-access_context_manager-v1.rb +21 -0
  21. data/proto_docs/README.md +4 -0
  22. data/proto_docs/google/api/field_behavior.rb +71 -0
  23. data/proto_docs/google/api/resource.rb +283 -0
  24. data/proto_docs/google/identity/accesscontextmanager/type/device_resources.rb +84 -0
  25. data/proto_docs/google/identity/accesscontextmanager/v1/access_context_manager.rb +539 -0
  26. data/proto_docs/google/identity/accesscontextmanager/v1/access_level.rb +197 -0
  27. data/proto_docs/google/identity/accesscontextmanager/v1/access_policy.rb +60 -0
  28. data/proto_docs/google/identity/accesscontextmanager/v1/gcp_user_access_binding.rb +55 -0
  29. data/proto_docs/google/identity/accesscontextmanager/v1/service_perimeter.rb +484 -0
  30. data/proto_docs/google/longrunning/operations.rb +164 -0
  31. data/proto_docs/google/protobuf/any.rb +141 -0
  32. data/proto_docs/google/protobuf/duration.rb +98 -0
  33. data/proto_docs/google/protobuf/empty.rb +36 -0
  34. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  35. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  36. data/proto_docs/google/rpc/status.rb +46 -0
  37. data/proto_docs/google/type/expr.rb +75 -0
  38. metadata +228 -0
@@ -0,0 +1,2358 @@
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
+ require "google/cloud/errors"
20
+ require "google/identity/accesscontextmanager/v1/access_context_manager_pb"
21
+
22
+ module Google
23
+ module Identity
24
+ module AccessContextManager
25
+ module V1
26
+ module AccessContextManager
27
+ ##
28
+ # Client for the AccessContextManager service.
29
+ #
30
+ # API for setting [Access Levels]
31
+ # [google.identity.accesscontextmanager.v1.AccessLevel] and [Service
32
+ # Perimeters] [google.identity.accesscontextmanager.v1.ServicePerimeter]
33
+ # for Google Cloud Projects. Each organization has one [AccessPolicy]
34
+ # [google.identity.accesscontextmanager.v1.AccessPolicy] containing the
35
+ # [Access Levels] [google.identity.accesscontextmanager.v1.AccessLevel]
36
+ # and [Service Perimeters]
37
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter]. This
38
+ # [AccessPolicy] [google.identity.accesscontextmanager.v1.AccessPolicy] is
39
+ # applicable to all resources in the organization.
40
+ # AccessPolicies
41
+ #
42
+ class Client
43
+ include Paths
44
+
45
+ # @private
46
+ attr_reader :access_context_manager_stub
47
+
48
+ ##
49
+ # Configure the AccessContextManager Client class.
50
+ #
51
+ # See {::Google::Identity::AccessContextManager::V1::AccessContextManager::Client::Configuration}
52
+ # for a description of the configuration fields.
53
+ #
54
+ # @example
55
+ #
56
+ # # Modify the configuration for all AccessContextManager clients
57
+ # ::Google::Identity::AccessContextManager::V1::AccessContextManager::Client.configure do |config|
58
+ # config.timeout = 10.0
59
+ # end
60
+ #
61
+ # @yield [config] Configure the Client client.
62
+ # @yieldparam config [Client::Configuration]
63
+ #
64
+ # @return [Client::Configuration]
65
+ #
66
+ def self.configure
67
+ @configure ||= begin
68
+ namespace = ["Google", "Identity", "AccessContextManager", "V1"]
69
+ parent_config = while namespace.any?
70
+ parent_name = namespace.join "::"
71
+ parent_const = const_get parent_name
72
+ break parent_const.configure if parent_const.respond_to? :configure
73
+ namespace.pop
74
+ end
75
+ default_config = Client::Configuration.new parent_config
76
+
77
+ default_config.timeout = 60.0
78
+
79
+ default_config
80
+ end
81
+ yield @configure if block_given?
82
+ @configure
83
+ end
84
+
85
+ ##
86
+ # Configure the AccessContextManager Client instance.
87
+ #
88
+ # The configuration is set to the derived mode, meaning that values can be changed,
89
+ # but structural changes (adding new fields, etc.) are not allowed. Structural changes
90
+ # should be made on {Client.configure}.
91
+ #
92
+ # See {::Google::Identity::AccessContextManager::V1::AccessContextManager::Client::Configuration}
93
+ # for a description of the configuration fields.
94
+ #
95
+ # @yield [config] Configure the Client client.
96
+ # @yieldparam config [Client::Configuration]
97
+ #
98
+ # @return [Client::Configuration]
99
+ #
100
+ def configure
101
+ yield @config if block_given?
102
+ @config
103
+ end
104
+
105
+ ##
106
+ # Create a new AccessContextManager client object.
107
+ #
108
+ # @example
109
+ #
110
+ # # Create a client using the default configuration
111
+ # client = ::Google::Identity::AccessContextManager::V1::AccessContextManager::Client.new
112
+ #
113
+ # # Create a client using a custom configuration
114
+ # client = ::Google::Identity::AccessContextManager::V1::AccessContextManager::Client.new do |config|
115
+ # config.timeout = 10.0
116
+ # end
117
+ #
118
+ # @yield [config] Configure the AccessContextManager client.
119
+ # @yieldparam config [Client::Configuration]
120
+ #
121
+ def initialize
122
+ # These require statements are intentionally placed here to initialize
123
+ # the gRPC module only when it's required.
124
+ # See https://github.com/googleapis/toolkit/issues/446
125
+ require "gapic/grpc"
126
+ require "google/identity/accesscontextmanager/v1/access_context_manager_services_pb"
127
+
128
+ # Create the configuration object
129
+ @config = Configuration.new Client.configure
130
+
131
+ # Yield the configuration if needed
132
+ yield @config if block_given?
133
+
134
+ # Create credentials
135
+ credentials = @config.credentials
136
+ # Use self-signed JWT if the endpoint is unchanged from default,
137
+ # but only if the default endpoint does not have a region prefix.
138
+ enable_self_signed_jwt = @config.endpoint == Client.configure.endpoint &&
139
+ !@config.endpoint.split(".").first.include?("-")
140
+ credentials ||= Credentials.default scope: @config.scope,
141
+ enable_self_signed_jwt: enable_self_signed_jwt
142
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
143
+ credentials = Credentials.new credentials, scope: @config.scope
144
+ end
145
+ @quota_project_id = @config.quota_project
146
+ @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
147
+
148
+ @operations_client = Operations.new do |config|
149
+ config.credentials = credentials
150
+ config.endpoint = @config.endpoint
151
+ end
152
+
153
+ @access_context_manager_stub = ::Gapic::ServiceStub.new(
154
+ ::Google::Identity::AccessContextManager::V1::AccessContextManager::Stub,
155
+ credentials: credentials,
156
+ endpoint: @config.endpoint,
157
+ channel_args: @config.channel_args,
158
+ interceptors: @config.interceptors
159
+ )
160
+ end
161
+
162
+ ##
163
+ # Get the associated client for long-running operations.
164
+ #
165
+ # @return [::Google::Identity::AccessContextManager::V1::AccessContextManager::Operations]
166
+ #
167
+ attr_reader :operations_client
168
+
169
+ # Service calls
170
+
171
+ ##
172
+ # List all [AccessPolicies]
173
+ # [google.identity.accesscontextmanager.v1.AccessPolicy] under a
174
+ # container.
175
+ #
176
+ # @overload list_access_policies(request, options = nil)
177
+ # Pass arguments to `list_access_policies` via a request object, either of type
178
+ # {::Google::Identity::AccessContextManager::V1::ListAccessPoliciesRequest} or an equivalent Hash.
179
+ #
180
+ # @param request [::Google::Identity::AccessContextManager::V1::ListAccessPoliciesRequest, ::Hash]
181
+ # A request object representing the call parameters. Required. To specify no
182
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
183
+ # @param options [::Gapic::CallOptions, ::Hash]
184
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
185
+ #
186
+ # @overload list_access_policies(parent: nil, page_size: nil, page_token: nil)
187
+ # Pass arguments to `list_access_policies` via keyword arguments. Note that at
188
+ # least one keyword argument is required. To specify no parameters, or to keep all
189
+ # the default parameter values, pass an empty Hash as a request object (see above).
190
+ #
191
+ # @param parent [::String]
192
+ # Required. Resource name for the container to list AccessPolicy instances
193
+ # from.
194
+ #
195
+ # Format:
196
+ # `organizations/{org_id}`
197
+ # @param page_size [::Integer]
198
+ # Number of AccessPolicy instances to include in the list. Default 100.
199
+ # @param page_token [::String]
200
+ # Next page token for the next batch of AccessPolicy instances. Defaults to
201
+ # the first page of results.
202
+ #
203
+ # @yield [response, operation] Access the result along with the RPC operation
204
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Identity::AccessContextManager::V1::AccessPolicy>]
205
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
206
+ #
207
+ # @return [::Gapic::PagedEnumerable<::Google::Identity::AccessContextManager::V1::AccessPolicy>]
208
+ #
209
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
210
+ #
211
+ def list_access_policies request, options = nil
212
+ raise ::ArgumentError, "request must be provided" if request.nil?
213
+
214
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::ListAccessPoliciesRequest
215
+
216
+ # Converts hash and nil to an options object
217
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
218
+
219
+ # Customize the options with defaults
220
+ metadata = @config.rpcs.list_access_policies.metadata.to_h
221
+
222
+ # Set x-goog-api-client and x-goog-user-project headers
223
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
224
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
225
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
226
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
227
+
228
+ options.apply_defaults timeout: @config.rpcs.list_access_policies.timeout,
229
+ metadata: metadata,
230
+ retry_policy: @config.rpcs.list_access_policies.retry_policy
231
+
232
+ options.apply_defaults timeout: @config.timeout,
233
+ metadata: @config.metadata,
234
+ retry_policy: @config.retry_policy
235
+
236
+ @access_context_manager_stub.call_rpc :list_access_policies, request, options: options do |response, operation|
237
+ response = ::Gapic::PagedEnumerable.new @access_context_manager_stub, :list_access_policies, request, response, operation, options
238
+ yield response, operation if block_given?
239
+ return response
240
+ end
241
+ rescue ::GRPC::BadStatus => e
242
+ raise ::Google::Cloud::Error.from_error(e)
243
+ end
244
+
245
+ ##
246
+ # Get an [AccessPolicy]
247
+ # [google.identity.accesscontextmanager.v1.AccessPolicy] by name.
248
+ #
249
+ # @overload get_access_policy(request, options = nil)
250
+ # Pass arguments to `get_access_policy` via a request object, either of type
251
+ # {::Google::Identity::AccessContextManager::V1::GetAccessPolicyRequest} or an equivalent Hash.
252
+ #
253
+ # @param request [::Google::Identity::AccessContextManager::V1::GetAccessPolicyRequest, ::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_access_policy(name: nil)
260
+ # Pass arguments to `get_access_policy` 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. Resource name for the access policy to get.
266
+ #
267
+ # Format `accessPolicies/{policy_id}`
268
+ #
269
+ # @yield [response, operation] Access the result along with the RPC operation
270
+ # @yieldparam response [::Google::Identity::AccessContextManager::V1::AccessPolicy]
271
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
272
+ #
273
+ # @return [::Google::Identity::AccessContextManager::V1::AccessPolicy]
274
+ #
275
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
276
+ #
277
+ def get_access_policy request, options = nil
278
+ raise ::ArgumentError, "request must be provided" if request.nil?
279
+
280
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::GetAccessPolicyRequest
281
+
282
+ # Converts hash and nil to an options object
283
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
284
+
285
+ # Customize the options with defaults
286
+ metadata = @config.rpcs.get_access_policy.metadata.to_h
287
+
288
+ # Set x-goog-api-client and x-goog-user-project headers
289
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
290
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
291
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
292
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
293
+
294
+ header_params = {
295
+ "name" => request.name
296
+ }
297
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
298
+ metadata[:"x-goog-request-params"] ||= request_params_header
299
+
300
+ options.apply_defaults timeout: @config.rpcs.get_access_policy.timeout,
301
+ metadata: metadata,
302
+ retry_policy: @config.rpcs.get_access_policy.retry_policy
303
+
304
+ options.apply_defaults timeout: @config.timeout,
305
+ metadata: @config.metadata,
306
+ retry_policy: @config.retry_policy
307
+
308
+ @access_context_manager_stub.call_rpc :get_access_policy, request, options: options do |response, operation|
309
+ yield response, operation if block_given?
310
+ return response
311
+ end
312
+ rescue ::GRPC::BadStatus => e
313
+ raise ::Google::Cloud::Error.from_error(e)
314
+ end
315
+
316
+ ##
317
+ # Create an `AccessPolicy`. Fails if this organization already has a
318
+ # `AccessPolicy`. The longrunning Operation will have a successful status
319
+ # once the `AccessPolicy` has propagated to long-lasting storage.
320
+ # Syntactic and basic semantic errors will be returned in `metadata` as a
321
+ # BadRequest proto.
322
+ #
323
+ # @overload create_access_policy(request, options = nil)
324
+ # Pass arguments to `create_access_policy` via a request object, either of type
325
+ # {::Google::Identity::AccessContextManager::V1::AccessPolicy} or an equivalent Hash.
326
+ #
327
+ # @param request [::Google::Identity::AccessContextManager::V1::AccessPolicy, ::Hash]
328
+ # A request object representing the call parameters. Required. To specify no
329
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
330
+ # @param options [::Gapic::CallOptions, ::Hash]
331
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
332
+ #
333
+ # @overload create_access_policy(name: nil, parent: nil, title: nil, create_time: nil, update_time: nil, etag: nil)
334
+ # Pass arguments to `create_access_policy` via keyword arguments. Note that at
335
+ # least one keyword argument is required. To specify no parameters, or to keep all
336
+ # the default parameter values, pass an empty Hash as a request object (see above).
337
+ #
338
+ # @param name [::String]
339
+ # Output only. Resource name of the `AccessPolicy`. Format:
340
+ # `accessPolicies/{access_policy}`
341
+ # @param parent [::String]
342
+ # Required. The parent of this `AccessPolicy` in the Cloud Resource
343
+ # Hierarchy. Currently immutable once created. Format:
344
+ # `organizations/{organization_id}`
345
+ # @param title [::String]
346
+ # Required. Human readable title. Does not affect behavior.
347
+ # @param create_time [::Google::Protobuf::Timestamp, ::Hash]
348
+ # Output only. Time the `AccessPolicy` was created in UTC.
349
+ # @param update_time [::Google::Protobuf::Timestamp, ::Hash]
350
+ # Output only. Time the `AccessPolicy` was updated in UTC.
351
+ # @param etag [::String]
352
+ # Output only. An opaque identifier for the current version of the
353
+ # `AccessPolicy`. This will always be a strongly validated etag, meaning that
354
+ # two Access Polices will be identical if and only if their etags are
355
+ # identical. Clients should not expect this to be in any specific format.
356
+ #
357
+ # @yield [response, operation] Access the result along with the RPC operation
358
+ # @yieldparam response [::Gapic::Operation]
359
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
360
+ #
361
+ # @return [::Gapic::Operation]
362
+ #
363
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
364
+ #
365
+ def create_access_policy request, options = nil
366
+ raise ::ArgumentError, "request must be provided" if request.nil?
367
+
368
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::AccessPolicy
369
+
370
+ # Converts hash and nil to an options object
371
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
372
+
373
+ # Customize the options with defaults
374
+ metadata = @config.rpcs.create_access_policy.metadata.to_h
375
+
376
+ # Set x-goog-api-client and x-goog-user-project headers
377
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
378
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
379
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
380
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
381
+
382
+ options.apply_defaults timeout: @config.rpcs.create_access_policy.timeout,
383
+ metadata: metadata,
384
+ retry_policy: @config.rpcs.create_access_policy.retry_policy
385
+
386
+ options.apply_defaults timeout: @config.timeout,
387
+ metadata: @config.metadata,
388
+ retry_policy: @config.retry_policy
389
+
390
+ @access_context_manager_stub.call_rpc :create_access_policy, request, options: options do |response, operation|
391
+ response = ::Gapic::Operation.new response, @operations_client, options: options
392
+ yield response, operation if block_given?
393
+ return response
394
+ end
395
+ rescue ::GRPC::BadStatus => e
396
+ raise ::Google::Cloud::Error.from_error(e)
397
+ end
398
+
399
+ ##
400
+ # Update an [AccessPolicy]
401
+ # [google.identity.accesscontextmanager.v1.AccessPolicy]. The
402
+ # longrunning Operation from this RPC will have a successful status once the
403
+ # changes to the [AccessPolicy]
404
+ # [google.identity.accesscontextmanager.v1.AccessPolicy] have propagated
405
+ # to long-lasting storage. Syntactic and basic semantic errors will be
406
+ # returned in `metadata` as a BadRequest proto.
407
+ #
408
+ # @overload update_access_policy(request, options = nil)
409
+ # Pass arguments to `update_access_policy` via a request object, either of type
410
+ # {::Google::Identity::AccessContextManager::V1::UpdateAccessPolicyRequest} or an equivalent Hash.
411
+ #
412
+ # @param request [::Google::Identity::AccessContextManager::V1::UpdateAccessPolicyRequest, ::Hash]
413
+ # A request object representing the call parameters. Required. To specify no
414
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
415
+ # @param options [::Gapic::CallOptions, ::Hash]
416
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
417
+ #
418
+ # @overload update_access_policy(policy: nil, update_mask: nil)
419
+ # Pass arguments to `update_access_policy` via keyword arguments. Note that at
420
+ # least one keyword argument is required. To specify no parameters, or to keep all
421
+ # the default parameter values, pass an empty Hash as a request object (see above).
422
+ #
423
+ # @param policy [::Google::Identity::AccessContextManager::V1::AccessPolicy, ::Hash]
424
+ # Required. The updated AccessPolicy.
425
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
426
+ # Required. Mask to control which fields get updated. Must be non-empty.
427
+ #
428
+ # @yield [response, operation] Access the result along with the RPC operation
429
+ # @yieldparam response [::Gapic::Operation]
430
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
431
+ #
432
+ # @return [::Gapic::Operation]
433
+ #
434
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
435
+ #
436
+ def update_access_policy request, options = nil
437
+ raise ::ArgumentError, "request must be provided" if request.nil?
438
+
439
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::UpdateAccessPolicyRequest
440
+
441
+ # Converts hash and nil to an options object
442
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
443
+
444
+ # Customize the options with defaults
445
+ metadata = @config.rpcs.update_access_policy.metadata.to_h
446
+
447
+ # Set x-goog-api-client and x-goog-user-project headers
448
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
449
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
450
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
451
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
452
+
453
+ header_params = {
454
+ "policy.name" => request.policy.name
455
+ }
456
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
457
+ metadata[:"x-goog-request-params"] ||= request_params_header
458
+
459
+ options.apply_defaults timeout: @config.rpcs.update_access_policy.timeout,
460
+ metadata: metadata,
461
+ retry_policy: @config.rpcs.update_access_policy.retry_policy
462
+
463
+ options.apply_defaults timeout: @config.timeout,
464
+ metadata: @config.metadata,
465
+ retry_policy: @config.retry_policy
466
+
467
+ @access_context_manager_stub.call_rpc :update_access_policy, request, options: options do |response, operation|
468
+ response = ::Gapic::Operation.new response, @operations_client, options: options
469
+ yield response, operation if block_given?
470
+ return response
471
+ end
472
+ rescue ::GRPC::BadStatus => e
473
+ raise ::Google::Cloud::Error.from_error(e)
474
+ end
475
+
476
+ ##
477
+ # Delete an [AccessPolicy]
478
+ # [google.identity.accesscontextmanager.v1.AccessPolicy] by resource
479
+ # name. The longrunning Operation will have a successful status once the
480
+ # [AccessPolicy] [google.identity.accesscontextmanager.v1.AccessPolicy]
481
+ # has been removed from long-lasting storage.
482
+ #
483
+ # @overload delete_access_policy(request, options = nil)
484
+ # Pass arguments to `delete_access_policy` via a request object, either of type
485
+ # {::Google::Identity::AccessContextManager::V1::DeleteAccessPolicyRequest} or an equivalent Hash.
486
+ #
487
+ # @param request [::Google::Identity::AccessContextManager::V1::DeleteAccessPolicyRequest, ::Hash]
488
+ # A request object representing the call parameters. Required. To specify no
489
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
490
+ # @param options [::Gapic::CallOptions, ::Hash]
491
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
492
+ #
493
+ # @overload delete_access_policy(name: nil)
494
+ # Pass arguments to `delete_access_policy` via keyword arguments. Note that at
495
+ # least one keyword argument is required. To specify no parameters, or to keep all
496
+ # the default parameter values, pass an empty Hash as a request object (see above).
497
+ #
498
+ # @param name [::String]
499
+ # Required. Resource name for the access policy to delete.
500
+ #
501
+ # Format `accessPolicies/{policy_id}`
502
+ #
503
+ # @yield [response, operation] Access the result along with the RPC operation
504
+ # @yieldparam response [::Gapic::Operation]
505
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
506
+ #
507
+ # @return [::Gapic::Operation]
508
+ #
509
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
510
+ #
511
+ def delete_access_policy request, options = nil
512
+ raise ::ArgumentError, "request must be provided" if request.nil?
513
+
514
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::DeleteAccessPolicyRequest
515
+
516
+ # Converts hash and nil to an options object
517
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
518
+
519
+ # Customize the options with defaults
520
+ metadata = @config.rpcs.delete_access_policy.metadata.to_h
521
+
522
+ # Set x-goog-api-client and x-goog-user-project headers
523
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
524
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
525
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
526
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
527
+
528
+ header_params = {
529
+ "name" => request.name
530
+ }
531
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
532
+ metadata[:"x-goog-request-params"] ||= request_params_header
533
+
534
+ options.apply_defaults timeout: @config.rpcs.delete_access_policy.timeout,
535
+ metadata: metadata,
536
+ retry_policy: @config.rpcs.delete_access_policy.retry_policy
537
+
538
+ options.apply_defaults timeout: @config.timeout,
539
+ metadata: @config.metadata,
540
+ retry_policy: @config.retry_policy
541
+
542
+ @access_context_manager_stub.call_rpc :delete_access_policy, request, options: options do |response, operation|
543
+ response = ::Gapic::Operation.new response, @operations_client, options: options
544
+ yield response, operation if block_given?
545
+ return response
546
+ end
547
+ rescue ::GRPC::BadStatus => e
548
+ raise ::Google::Cloud::Error.from_error(e)
549
+ end
550
+
551
+ ##
552
+ # List all [Access Levels]
553
+ # [google.identity.accesscontextmanager.v1.AccessLevel] for an access
554
+ # policy.
555
+ #
556
+ # @overload list_access_levels(request, options = nil)
557
+ # Pass arguments to `list_access_levels` via a request object, either of type
558
+ # {::Google::Identity::AccessContextManager::V1::ListAccessLevelsRequest} or an equivalent Hash.
559
+ #
560
+ # @param request [::Google::Identity::AccessContextManager::V1::ListAccessLevelsRequest, ::Hash]
561
+ # A request object representing the call parameters. Required. To specify no
562
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
563
+ # @param options [::Gapic::CallOptions, ::Hash]
564
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
565
+ #
566
+ # @overload list_access_levels(parent: nil, page_size: nil, page_token: nil, access_level_format: nil)
567
+ # Pass arguments to `list_access_levels` via keyword arguments. Note that at
568
+ # least one keyword argument is required. To specify no parameters, or to keep all
569
+ # the default parameter values, pass an empty Hash as a request object (see above).
570
+ #
571
+ # @param parent [::String]
572
+ # Required. Resource name for the access policy to list [Access Levels]
573
+ # [google.identity.accesscontextmanager.v1.AccessLevel] from.
574
+ #
575
+ # Format:
576
+ # `accessPolicies/{policy_id}`
577
+ # @param page_size [::Integer]
578
+ # Number of [Access Levels]
579
+ # [google.identity.accesscontextmanager.v1.AccessLevel] to include in
580
+ # the list. Default 100.
581
+ # @param page_token [::String]
582
+ # Next page token for the next batch of [Access Level]
583
+ # [google.identity.accesscontextmanager.v1.AccessLevel] instances.
584
+ # Defaults to the first page of results.
585
+ # @param access_level_format [::Google::Identity::AccessContextManager::V1::LevelFormat]
586
+ # Whether to return `BasicLevels` in the Cloud Common Expression language, as
587
+ # `CustomLevels`, rather than as `BasicLevels`. Defaults to returning
588
+ # `AccessLevels` in the format they were defined.
589
+ #
590
+ # @yield [response, operation] Access the result along with the RPC operation
591
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Identity::AccessContextManager::V1::AccessLevel>]
592
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
593
+ #
594
+ # @return [::Gapic::PagedEnumerable<::Google::Identity::AccessContextManager::V1::AccessLevel>]
595
+ #
596
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
597
+ #
598
+ def list_access_levels request, options = nil
599
+ raise ::ArgumentError, "request must be provided" if request.nil?
600
+
601
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::ListAccessLevelsRequest
602
+
603
+ # Converts hash and nil to an options object
604
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
605
+
606
+ # Customize the options with defaults
607
+ metadata = @config.rpcs.list_access_levels.metadata.to_h
608
+
609
+ # Set x-goog-api-client and x-goog-user-project headers
610
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
611
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
612
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
613
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
614
+
615
+ header_params = {
616
+ "parent" => request.parent
617
+ }
618
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
619
+ metadata[:"x-goog-request-params"] ||= request_params_header
620
+
621
+ options.apply_defaults timeout: @config.rpcs.list_access_levels.timeout,
622
+ metadata: metadata,
623
+ retry_policy: @config.rpcs.list_access_levels.retry_policy
624
+
625
+ options.apply_defaults timeout: @config.timeout,
626
+ metadata: @config.metadata,
627
+ retry_policy: @config.retry_policy
628
+
629
+ @access_context_manager_stub.call_rpc :list_access_levels, request, options: options do |response, operation|
630
+ response = ::Gapic::PagedEnumerable.new @access_context_manager_stub, :list_access_levels, request, response, operation, options
631
+ yield response, operation if block_given?
632
+ return response
633
+ end
634
+ rescue ::GRPC::BadStatus => e
635
+ raise ::Google::Cloud::Error.from_error(e)
636
+ end
637
+
638
+ ##
639
+ # Get an [Access Level]
640
+ # [google.identity.accesscontextmanager.v1.AccessLevel] by resource
641
+ # name.
642
+ #
643
+ # @overload get_access_level(request, options = nil)
644
+ # Pass arguments to `get_access_level` via a request object, either of type
645
+ # {::Google::Identity::AccessContextManager::V1::GetAccessLevelRequest} or an equivalent Hash.
646
+ #
647
+ # @param request [::Google::Identity::AccessContextManager::V1::GetAccessLevelRequest, ::Hash]
648
+ # A request object representing the call parameters. Required. To specify no
649
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
650
+ # @param options [::Gapic::CallOptions, ::Hash]
651
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
652
+ #
653
+ # @overload get_access_level(name: nil, access_level_format: nil)
654
+ # Pass arguments to `get_access_level` via keyword arguments. Note that at
655
+ # least one keyword argument is required. To specify no parameters, or to keep all
656
+ # the default parameter values, pass an empty Hash as a request object (see above).
657
+ #
658
+ # @param name [::String]
659
+ # Required. Resource name for the [Access Level]
660
+ # [google.identity.accesscontextmanager.v1.AccessLevel].
661
+ #
662
+ # Format:
663
+ # `accessPolicies/{policy_id}/accessLevels/{access_level_id}`
664
+ # @param access_level_format [::Google::Identity::AccessContextManager::V1::LevelFormat]
665
+ # Whether to return `BasicLevels` in the Cloud Common Expression
666
+ # Language rather than as `BasicLevels`. Defaults to AS_DEFINED, where
667
+ # [Access Levels] [google.identity.accesscontextmanager.v1.AccessLevel]
668
+ # are returned as `BasicLevels` or `CustomLevels` based on how they were
669
+ # created. If set to CEL, all [Access Levels]
670
+ # [google.identity.accesscontextmanager.v1.AccessLevel] are returned as
671
+ # `CustomLevels`. In the CEL case, `BasicLevels` are translated to equivalent
672
+ # `CustomLevels`.
673
+ #
674
+ # @yield [response, operation] Access the result along with the RPC operation
675
+ # @yieldparam response [::Google::Identity::AccessContextManager::V1::AccessLevel]
676
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
677
+ #
678
+ # @return [::Google::Identity::AccessContextManager::V1::AccessLevel]
679
+ #
680
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
681
+ #
682
+ def get_access_level request, options = nil
683
+ raise ::ArgumentError, "request must be provided" if request.nil?
684
+
685
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::GetAccessLevelRequest
686
+
687
+ # Converts hash and nil to an options object
688
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
689
+
690
+ # Customize the options with defaults
691
+ metadata = @config.rpcs.get_access_level.metadata.to_h
692
+
693
+ # Set x-goog-api-client and x-goog-user-project headers
694
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
695
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
696
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
697
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
698
+
699
+ header_params = {
700
+ "name" => request.name
701
+ }
702
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
703
+ metadata[:"x-goog-request-params"] ||= request_params_header
704
+
705
+ options.apply_defaults timeout: @config.rpcs.get_access_level.timeout,
706
+ metadata: metadata,
707
+ retry_policy: @config.rpcs.get_access_level.retry_policy
708
+
709
+ options.apply_defaults timeout: @config.timeout,
710
+ metadata: @config.metadata,
711
+ retry_policy: @config.retry_policy
712
+
713
+ @access_context_manager_stub.call_rpc :get_access_level, request, options: options do |response, operation|
714
+ yield response, operation if block_given?
715
+ return response
716
+ end
717
+ rescue ::GRPC::BadStatus => e
718
+ raise ::Google::Cloud::Error.from_error(e)
719
+ end
720
+
721
+ ##
722
+ # Create an [Access Level]
723
+ # [google.identity.accesscontextmanager.v1.AccessLevel]. The longrunning
724
+ # operation from this RPC will have a successful status once the [Access
725
+ # Level] [google.identity.accesscontextmanager.v1.AccessLevel] has
726
+ # propagated to long-lasting storage. [Access Levels]
727
+ # [google.identity.accesscontextmanager.v1.AccessLevel] containing
728
+ # errors will result in an error response for the first error encountered.
729
+ #
730
+ # @overload create_access_level(request, options = nil)
731
+ # Pass arguments to `create_access_level` via a request object, either of type
732
+ # {::Google::Identity::AccessContextManager::V1::CreateAccessLevelRequest} or an equivalent Hash.
733
+ #
734
+ # @param request [::Google::Identity::AccessContextManager::V1::CreateAccessLevelRequest, ::Hash]
735
+ # A request object representing the call parameters. Required. To specify no
736
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
737
+ # @param options [::Gapic::CallOptions, ::Hash]
738
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
739
+ #
740
+ # @overload create_access_level(parent: nil, access_level: nil)
741
+ # Pass arguments to `create_access_level` via keyword arguments. Note that at
742
+ # least one keyword argument is required. To specify no parameters, or to keep all
743
+ # the default parameter values, pass an empty Hash as a request object (see above).
744
+ #
745
+ # @param parent [::String]
746
+ # Required. Resource name for the access policy which owns this [Access
747
+ # Level] [google.identity.accesscontextmanager.v1.AccessLevel].
748
+ #
749
+ # Format: `accessPolicies/{policy_id}`
750
+ # @param access_level [::Google::Identity::AccessContextManager::V1::AccessLevel, ::Hash]
751
+ # Required. The [Access Level]
752
+ # [google.identity.accesscontextmanager.v1.AccessLevel] to create.
753
+ # Syntactic correctness of the [Access Level]
754
+ # [google.identity.accesscontextmanager.v1.AccessLevel] is a
755
+ # precondition for creation.
756
+ #
757
+ # @yield [response, operation] Access the result along with the RPC operation
758
+ # @yieldparam response [::Gapic::Operation]
759
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
760
+ #
761
+ # @return [::Gapic::Operation]
762
+ #
763
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
764
+ #
765
+ def create_access_level request, options = nil
766
+ raise ::ArgumentError, "request must be provided" if request.nil?
767
+
768
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::CreateAccessLevelRequest
769
+
770
+ # Converts hash and nil to an options object
771
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
772
+
773
+ # Customize the options with defaults
774
+ metadata = @config.rpcs.create_access_level.metadata.to_h
775
+
776
+ # Set x-goog-api-client and x-goog-user-project headers
777
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
778
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
779
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
780
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
781
+
782
+ header_params = {
783
+ "parent" => request.parent
784
+ }
785
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
786
+ metadata[:"x-goog-request-params"] ||= request_params_header
787
+
788
+ options.apply_defaults timeout: @config.rpcs.create_access_level.timeout,
789
+ metadata: metadata,
790
+ retry_policy: @config.rpcs.create_access_level.retry_policy
791
+
792
+ options.apply_defaults timeout: @config.timeout,
793
+ metadata: @config.metadata,
794
+ retry_policy: @config.retry_policy
795
+
796
+ @access_context_manager_stub.call_rpc :create_access_level, request, options: options do |response, operation|
797
+ response = ::Gapic::Operation.new response, @operations_client, options: options
798
+ yield response, operation if block_given?
799
+ return response
800
+ end
801
+ rescue ::GRPC::BadStatus => e
802
+ raise ::Google::Cloud::Error.from_error(e)
803
+ end
804
+
805
+ ##
806
+ # Update an [Access Level]
807
+ # [google.identity.accesscontextmanager.v1.AccessLevel]. The longrunning
808
+ # operation from this RPC will have a successful status once the changes to
809
+ # the [Access Level]
810
+ # [google.identity.accesscontextmanager.v1.AccessLevel] have propagated
811
+ # to long-lasting storage. [Access Levels]
812
+ # [google.identity.accesscontextmanager.v1.AccessLevel] containing
813
+ # errors will result in an error response for the first error encountered.
814
+ #
815
+ # @overload update_access_level(request, options = nil)
816
+ # Pass arguments to `update_access_level` via a request object, either of type
817
+ # {::Google::Identity::AccessContextManager::V1::UpdateAccessLevelRequest} or an equivalent Hash.
818
+ #
819
+ # @param request [::Google::Identity::AccessContextManager::V1::UpdateAccessLevelRequest, ::Hash]
820
+ # A request object representing the call parameters. Required. To specify no
821
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
822
+ # @param options [::Gapic::CallOptions, ::Hash]
823
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
824
+ #
825
+ # @overload update_access_level(access_level: nil, update_mask: nil)
826
+ # Pass arguments to `update_access_level` via keyword arguments. Note that at
827
+ # least one keyword argument is required. To specify no parameters, or to keep all
828
+ # the default parameter values, pass an empty Hash as a request object (see above).
829
+ #
830
+ # @param access_level [::Google::Identity::AccessContextManager::V1::AccessLevel, ::Hash]
831
+ # Required. The updated [Access Level]
832
+ # [google.identity.accesscontextmanager.v1.AccessLevel]. Syntactic
833
+ # correctness of the [Access Level]
834
+ # [google.identity.accesscontextmanager.v1.AccessLevel] is a
835
+ # precondition for creation.
836
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
837
+ # Required. Mask to control which fields get updated. Must be non-empty.
838
+ #
839
+ # @yield [response, operation] Access the result along with the RPC operation
840
+ # @yieldparam response [::Gapic::Operation]
841
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
842
+ #
843
+ # @return [::Gapic::Operation]
844
+ #
845
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
846
+ #
847
+ def update_access_level request, options = nil
848
+ raise ::ArgumentError, "request must be provided" if request.nil?
849
+
850
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::UpdateAccessLevelRequest
851
+
852
+ # Converts hash and nil to an options object
853
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
854
+
855
+ # Customize the options with defaults
856
+ metadata = @config.rpcs.update_access_level.metadata.to_h
857
+
858
+ # Set x-goog-api-client and x-goog-user-project headers
859
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
860
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
861
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
862
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
863
+
864
+ header_params = {
865
+ "access_level.name" => request.access_level.name
866
+ }
867
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
868
+ metadata[:"x-goog-request-params"] ||= request_params_header
869
+
870
+ options.apply_defaults timeout: @config.rpcs.update_access_level.timeout,
871
+ metadata: metadata,
872
+ retry_policy: @config.rpcs.update_access_level.retry_policy
873
+
874
+ options.apply_defaults timeout: @config.timeout,
875
+ metadata: @config.metadata,
876
+ retry_policy: @config.retry_policy
877
+
878
+ @access_context_manager_stub.call_rpc :update_access_level, request, options: options do |response, operation|
879
+ response = ::Gapic::Operation.new response, @operations_client, options: options
880
+ yield response, operation if block_given?
881
+ return response
882
+ end
883
+ rescue ::GRPC::BadStatus => e
884
+ raise ::Google::Cloud::Error.from_error(e)
885
+ end
886
+
887
+ ##
888
+ # Delete an [Access Level]
889
+ # [google.identity.accesscontextmanager.v1.AccessLevel] by resource
890
+ # name. The longrunning operation from this RPC will have a successful status
891
+ # once the [Access Level]
892
+ # [google.identity.accesscontextmanager.v1.AccessLevel] has been removed
893
+ # from long-lasting storage.
894
+ #
895
+ # @overload delete_access_level(request, options = nil)
896
+ # Pass arguments to `delete_access_level` via a request object, either of type
897
+ # {::Google::Identity::AccessContextManager::V1::DeleteAccessLevelRequest} or an equivalent Hash.
898
+ #
899
+ # @param request [::Google::Identity::AccessContextManager::V1::DeleteAccessLevelRequest, ::Hash]
900
+ # A request object representing the call parameters. Required. To specify no
901
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
902
+ # @param options [::Gapic::CallOptions, ::Hash]
903
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
904
+ #
905
+ # @overload delete_access_level(name: nil)
906
+ # Pass arguments to `delete_access_level` via keyword arguments. Note that at
907
+ # least one keyword argument is required. To specify no parameters, or to keep all
908
+ # the default parameter values, pass an empty Hash as a request object (see above).
909
+ #
910
+ # @param name [::String]
911
+ # Required. Resource name for the [Access Level]
912
+ # [google.identity.accesscontextmanager.v1.AccessLevel].
913
+ #
914
+ # Format:
915
+ # `accessPolicies/{policy_id}/accessLevels/{access_level_id}`
916
+ #
917
+ # @yield [response, operation] Access the result along with the RPC operation
918
+ # @yieldparam response [::Gapic::Operation]
919
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
920
+ #
921
+ # @return [::Gapic::Operation]
922
+ #
923
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
924
+ #
925
+ def delete_access_level request, options = nil
926
+ raise ::ArgumentError, "request must be provided" if request.nil?
927
+
928
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::DeleteAccessLevelRequest
929
+
930
+ # Converts hash and nil to an options object
931
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
932
+
933
+ # Customize the options with defaults
934
+ metadata = @config.rpcs.delete_access_level.metadata.to_h
935
+
936
+ # Set x-goog-api-client and x-goog-user-project headers
937
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
938
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
939
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
940
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
941
+
942
+ header_params = {
943
+ "name" => request.name
944
+ }
945
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
946
+ metadata[:"x-goog-request-params"] ||= request_params_header
947
+
948
+ options.apply_defaults timeout: @config.rpcs.delete_access_level.timeout,
949
+ metadata: metadata,
950
+ retry_policy: @config.rpcs.delete_access_level.retry_policy
951
+
952
+ options.apply_defaults timeout: @config.timeout,
953
+ metadata: @config.metadata,
954
+ retry_policy: @config.retry_policy
955
+
956
+ @access_context_manager_stub.call_rpc :delete_access_level, request, options: options do |response, operation|
957
+ response = ::Gapic::Operation.new response, @operations_client, options: options
958
+ yield response, operation if block_given?
959
+ return response
960
+ end
961
+ rescue ::GRPC::BadStatus => e
962
+ raise ::Google::Cloud::Error.from_error(e)
963
+ end
964
+
965
+ ##
966
+ # Replace all existing [Access Levels]
967
+ # [google.identity.accesscontextmanager.v1.AccessLevel] in an [Access
968
+ # Policy] [google.identity.accesscontextmanager.v1.AccessPolicy] with
969
+ # the [Access Levels]
970
+ # [google.identity.accesscontextmanager.v1.AccessLevel] provided. This
971
+ # is done atomically. The longrunning operation from this RPC will have a
972
+ # successful status once all replacements have propagated to long-lasting
973
+ # storage. Replacements containing errors will result in an error response
974
+ # for the first error encountered. Replacement will be cancelled on error,
975
+ # existing [Access Levels]
976
+ # [google.identity.accesscontextmanager.v1.AccessLevel] will not be
977
+ # affected. Operation.response field will contain
978
+ # ReplaceAccessLevelsResponse. Removing [Access Levels]
979
+ # [google.identity.accesscontextmanager.v1.AccessLevel] contained in existing
980
+ # [Service Perimeters]
981
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] will result in
982
+ # error.
983
+ #
984
+ # @overload replace_access_levels(request, options = nil)
985
+ # Pass arguments to `replace_access_levels` via a request object, either of type
986
+ # {::Google::Identity::AccessContextManager::V1::ReplaceAccessLevelsRequest} or an equivalent Hash.
987
+ #
988
+ # @param request [::Google::Identity::AccessContextManager::V1::ReplaceAccessLevelsRequest, ::Hash]
989
+ # A request object representing the call parameters. Required. To specify no
990
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
991
+ # @param options [::Gapic::CallOptions, ::Hash]
992
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
993
+ #
994
+ # @overload replace_access_levels(parent: nil, access_levels: nil, etag: nil)
995
+ # Pass arguments to `replace_access_levels` via keyword arguments. Note that at
996
+ # least one keyword argument is required. To specify no parameters, or to keep all
997
+ # the default parameter values, pass an empty Hash as a request object (see above).
998
+ #
999
+ # @param parent [::String]
1000
+ # Required. Resource name for the access policy which owns these
1001
+ # [Access Levels]
1002
+ # [google.identity.accesscontextmanager.v1.AccessLevel].
1003
+ #
1004
+ # Format: `accessPolicies/{policy_id}`
1005
+ # @param access_levels [::Array<::Google::Identity::AccessContextManager::V1::AccessLevel, ::Hash>]
1006
+ # Required. The desired [Access Levels]
1007
+ # [google.identity.accesscontextmanager.v1.AccessLevel] that should
1008
+ # replace all existing [Access Levels]
1009
+ # [google.identity.accesscontextmanager.v1.AccessLevel] in the
1010
+ # [Access Policy]
1011
+ # [google.identity.accesscontextmanager.v1.AccessPolicy].
1012
+ # @param etag [::String]
1013
+ # Optional. The etag for the version of the [Access Policy]
1014
+ # [google.identity.accesscontextmanager.v1.AccessPolicy] that this
1015
+ # replace operation is to be performed on. If, at the time of replace, the
1016
+ # etag for the Access Policy stored in Access Context Manager is different
1017
+ # from the specified etag, then the replace operation will not be performed
1018
+ # and the call will fail. This field is not required. If etag is not
1019
+ # provided, the operation will be performed as if a valid etag is provided.
1020
+ #
1021
+ # @yield [response, operation] Access the result along with the RPC operation
1022
+ # @yieldparam response [::Gapic::Operation]
1023
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1024
+ #
1025
+ # @return [::Gapic::Operation]
1026
+ #
1027
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1028
+ #
1029
+ def replace_access_levels request, options = nil
1030
+ raise ::ArgumentError, "request must be provided" if request.nil?
1031
+
1032
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::ReplaceAccessLevelsRequest
1033
+
1034
+ # Converts hash and nil to an options object
1035
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1036
+
1037
+ # Customize the options with defaults
1038
+ metadata = @config.rpcs.replace_access_levels.metadata.to_h
1039
+
1040
+ # Set x-goog-api-client and x-goog-user-project headers
1041
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1042
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1043
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
1044
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1045
+
1046
+ header_params = {
1047
+ "parent" => request.parent
1048
+ }
1049
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1050
+ metadata[:"x-goog-request-params"] ||= request_params_header
1051
+
1052
+ options.apply_defaults timeout: @config.rpcs.replace_access_levels.timeout,
1053
+ metadata: metadata,
1054
+ retry_policy: @config.rpcs.replace_access_levels.retry_policy
1055
+
1056
+ options.apply_defaults timeout: @config.timeout,
1057
+ metadata: @config.metadata,
1058
+ retry_policy: @config.retry_policy
1059
+
1060
+ @access_context_manager_stub.call_rpc :replace_access_levels, request, options: options do |response, operation|
1061
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1062
+ yield response, operation if block_given?
1063
+ return response
1064
+ end
1065
+ rescue ::GRPC::BadStatus => e
1066
+ raise ::Google::Cloud::Error.from_error(e)
1067
+ end
1068
+
1069
+ ##
1070
+ # List all [Service Perimeters]
1071
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] for an
1072
+ # access policy.
1073
+ #
1074
+ # @overload list_service_perimeters(request, options = nil)
1075
+ # Pass arguments to `list_service_perimeters` via a request object, either of type
1076
+ # {::Google::Identity::AccessContextManager::V1::ListServicePerimetersRequest} or an equivalent Hash.
1077
+ #
1078
+ # @param request [::Google::Identity::AccessContextManager::V1::ListServicePerimetersRequest, ::Hash]
1079
+ # A request object representing the call parameters. Required. To specify no
1080
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1081
+ # @param options [::Gapic::CallOptions, ::Hash]
1082
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1083
+ #
1084
+ # @overload list_service_perimeters(parent: nil, page_size: nil, page_token: nil)
1085
+ # Pass arguments to `list_service_perimeters` via keyword arguments. Note that at
1086
+ # least one keyword argument is required. To specify no parameters, or to keep all
1087
+ # the default parameter values, pass an empty Hash as a request object (see above).
1088
+ #
1089
+ # @param parent [::String]
1090
+ # Required. Resource name for the access policy to list [Service Perimeters]
1091
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] from.
1092
+ #
1093
+ # Format:
1094
+ # `accessPolicies/{policy_id}`
1095
+ # @param page_size [::Integer]
1096
+ # Number of [Service Perimeters]
1097
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] to include
1098
+ # in the list. Default 100.
1099
+ # @param page_token [::String]
1100
+ # Next page token for the next batch of [Service Perimeter]
1101
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] instances.
1102
+ # Defaults to the first page of results.
1103
+ #
1104
+ # @yield [response, operation] Access the result along with the RPC operation
1105
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Identity::AccessContextManager::V1::ServicePerimeter>]
1106
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1107
+ #
1108
+ # @return [::Gapic::PagedEnumerable<::Google::Identity::AccessContextManager::V1::ServicePerimeter>]
1109
+ #
1110
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1111
+ #
1112
+ def list_service_perimeters request, options = nil
1113
+ raise ::ArgumentError, "request must be provided" if request.nil?
1114
+
1115
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::ListServicePerimetersRequest
1116
+
1117
+ # Converts hash and nil to an options object
1118
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1119
+
1120
+ # Customize the options with defaults
1121
+ metadata = @config.rpcs.list_service_perimeters.metadata.to_h
1122
+
1123
+ # Set x-goog-api-client and x-goog-user-project headers
1124
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1125
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1126
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
1127
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1128
+
1129
+ header_params = {
1130
+ "parent" => request.parent
1131
+ }
1132
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1133
+ metadata[:"x-goog-request-params"] ||= request_params_header
1134
+
1135
+ options.apply_defaults timeout: @config.rpcs.list_service_perimeters.timeout,
1136
+ metadata: metadata,
1137
+ retry_policy: @config.rpcs.list_service_perimeters.retry_policy
1138
+
1139
+ options.apply_defaults timeout: @config.timeout,
1140
+ metadata: @config.metadata,
1141
+ retry_policy: @config.retry_policy
1142
+
1143
+ @access_context_manager_stub.call_rpc :list_service_perimeters, request, options: options do |response, operation|
1144
+ response = ::Gapic::PagedEnumerable.new @access_context_manager_stub, :list_service_perimeters, request, response, operation, options
1145
+ yield response, operation if block_given?
1146
+ return response
1147
+ end
1148
+ rescue ::GRPC::BadStatus => e
1149
+ raise ::Google::Cloud::Error.from_error(e)
1150
+ end
1151
+
1152
+ ##
1153
+ # Get a [Service Perimeter]
1154
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] by resource
1155
+ # name.
1156
+ #
1157
+ # @overload get_service_perimeter(request, options = nil)
1158
+ # Pass arguments to `get_service_perimeter` via a request object, either of type
1159
+ # {::Google::Identity::AccessContextManager::V1::GetServicePerimeterRequest} or an equivalent Hash.
1160
+ #
1161
+ # @param request [::Google::Identity::AccessContextManager::V1::GetServicePerimeterRequest, ::Hash]
1162
+ # A request object representing the call parameters. Required. To specify no
1163
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1164
+ # @param options [::Gapic::CallOptions, ::Hash]
1165
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1166
+ #
1167
+ # @overload get_service_perimeter(name: nil)
1168
+ # Pass arguments to `get_service_perimeter` via keyword arguments. Note that at
1169
+ # least one keyword argument is required. To specify no parameters, or to keep all
1170
+ # the default parameter values, pass an empty Hash as a request object (see above).
1171
+ #
1172
+ # @param name [::String]
1173
+ # Required. Resource name for the [Service Perimeter]
1174
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter].
1175
+ #
1176
+ # Format:
1177
+ # `accessPolicies/{policy_id}/servicePerimeters/{service_perimeters_id}`
1178
+ #
1179
+ # @yield [response, operation] Access the result along with the RPC operation
1180
+ # @yieldparam response [::Google::Identity::AccessContextManager::V1::ServicePerimeter]
1181
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1182
+ #
1183
+ # @return [::Google::Identity::AccessContextManager::V1::ServicePerimeter]
1184
+ #
1185
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1186
+ #
1187
+ def get_service_perimeter request, options = nil
1188
+ raise ::ArgumentError, "request must be provided" if request.nil?
1189
+
1190
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::GetServicePerimeterRequest
1191
+
1192
+ # Converts hash and nil to an options object
1193
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1194
+
1195
+ # Customize the options with defaults
1196
+ metadata = @config.rpcs.get_service_perimeter.metadata.to_h
1197
+
1198
+ # Set x-goog-api-client and x-goog-user-project headers
1199
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1200
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1201
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
1202
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1203
+
1204
+ header_params = {
1205
+ "name" => request.name
1206
+ }
1207
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1208
+ metadata[:"x-goog-request-params"] ||= request_params_header
1209
+
1210
+ options.apply_defaults timeout: @config.rpcs.get_service_perimeter.timeout,
1211
+ metadata: metadata,
1212
+ retry_policy: @config.rpcs.get_service_perimeter.retry_policy
1213
+
1214
+ options.apply_defaults timeout: @config.timeout,
1215
+ metadata: @config.metadata,
1216
+ retry_policy: @config.retry_policy
1217
+
1218
+ @access_context_manager_stub.call_rpc :get_service_perimeter, request, options: options do |response, operation|
1219
+ yield response, operation if block_given?
1220
+ return response
1221
+ end
1222
+ rescue ::GRPC::BadStatus => e
1223
+ raise ::Google::Cloud::Error.from_error(e)
1224
+ end
1225
+
1226
+ ##
1227
+ # Create a [Service Perimeter]
1228
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter]. The
1229
+ # longrunning operation from this RPC will have a successful status once the
1230
+ # [Service Perimeter]
1231
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] has
1232
+ # propagated to long-lasting storage. [Service Perimeters]
1233
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] containing
1234
+ # errors will result in an error response for the first error encountered.
1235
+ #
1236
+ # @overload create_service_perimeter(request, options = nil)
1237
+ # Pass arguments to `create_service_perimeter` via a request object, either of type
1238
+ # {::Google::Identity::AccessContextManager::V1::CreateServicePerimeterRequest} or an equivalent Hash.
1239
+ #
1240
+ # @param request [::Google::Identity::AccessContextManager::V1::CreateServicePerimeterRequest, ::Hash]
1241
+ # A request object representing the call parameters. Required. To specify no
1242
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1243
+ # @param options [::Gapic::CallOptions, ::Hash]
1244
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1245
+ #
1246
+ # @overload create_service_perimeter(parent: nil, service_perimeter: nil)
1247
+ # Pass arguments to `create_service_perimeter` via keyword arguments. Note that at
1248
+ # least one keyword argument is required. To specify no parameters, or to keep all
1249
+ # the default parameter values, pass an empty Hash as a request object (see above).
1250
+ #
1251
+ # @param parent [::String]
1252
+ # Required. Resource name for the access policy which owns this [Service
1253
+ # Perimeter] [google.identity.accesscontextmanager.v1.ServicePerimeter].
1254
+ #
1255
+ # Format: `accessPolicies/{policy_id}`
1256
+ # @param service_perimeter [::Google::Identity::AccessContextManager::V1::ServicePerimeter, ::Hash]
1257
+ # Required. The [Service Perimeter]
1258
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] to create.
1259
+ # Syntactic correctness of the [Service Perimeter]
1260
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] is a
1261
+ # precondition for creation.
1262
+ #
1263
+ # @yield [response, operation] Access the result along with the RPC operation
1264
+ # @yieldparam response [::Gapic::Operation]
1265
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1266
+ #
1267
+ # @return [::Gapic::Operation]
1268
+ #
1269
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1270
+ #
1271
+ def create_service_perimeter request, options = nil
1272
+ raise ::ArgumentError, "request must be provided" if request.nil?
1273
+
1274
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::CreateServicePerimeterRequest
1275
+
1276
+ # Converts hash and nil to an options object
1277
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1278
+
1279
+ # Customize the options with defaults
1280
+ metadata = @config.rpcs.create_service_perimeter.metadata.to_h
1281
+
1282
+ # Set x-goog-api-client and x-goog-user-project headers
1283
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1284
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1285
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
1286
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1287
+
1288
+ header_params = {
1289
+ "parent" => request.parent
1290
+ }
1291
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1292
+ metadata[:"x-goog-request-params"] ||= request_params_header
1293
+
1294
+ options.apply_defaults timeout: @config.rpcs.create_service_perimeter.timeout,
1295
+ metadata: metadata,
1296
+ retry_policy: @config.rpcs.create_service_perimeter.retry_policy
1297
+
1298
+ options.apply_defaults timeout: @config.timeout,
1299
+ metadata: @config.metadata,
1300
+ retry_policy: @config.retry_policy
1301
+
1302
+ @access_context_manager_stub.call_rpc :create_service_perimeter, request, options: options do |response, operation|
1303
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1304
+ yield response, operation if block_given?
1305
+ return response
1306
+ end
1307
+ rescue ::GRPC::BadStatus => e
1308
+ raise ::Google::Cloud::Error.from_error(e)
1309
+ end
1310
+
1311
+ ##
1312
+ # Update a [Service Perimeter]
1313
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter]. The
1314
+ # longrunning operation from this RPC will have a successful status once the
1315
+ # changes to the [Service Perimeter]
1316
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] have
1317
+ # propagated to long-lasting storage. [Service Perimeter]
1318
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] containing
1319
+ # errors will result in an error response for the first error encountered.
1320
+ #
1321
+ # @overload update_service_perimeter(request, options = nil)
1322
+ # Pass arguments to `update_service_perimeter` via a request object, either of type
1323
+ # {::Google::Identity::AccessContextManager::V1::UpdateServicePerimeterRequest} or an equivalent Hash.
1324
+ #
1325
+ # @param request [::Google::Identity::AccessContextManager::V1::UpdateServicePerimeterRequest, ::Hash]
1326
+ # A request object representing the call parameters. Required. To specify no
1327
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1328
+ # @param options [::Gapic::CallOptions, ::Hash]
1329
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1330
+ #
1331
+ # @overload update_service_perimeter(service_perimeter: nil, update_mask: nil)
1332
+ # Pass arguments to `update_service_perimeter` via keyword arguments. Note that at
1333
+ # least one keyword argument is required. To specify no parameters, or to keep all
1334
+ # the default parameter values, pass an empty Hash as a request object (see above).
1335
+ #
1336
+ # @param service_perimeter [::Google::Identity::AccessContextManager::V1::ServicePerimeter, ::Hash]
1337
+ # Required. The updated `ServicePerimeter`. Syntactic correctness of the
1338
+ # `ServicePerimeter` is a precondition for creation.
1339
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
1340
+ # Required. Mask to control which fields get updated. Must be non-empty.
1341
+ #
1342
+ # @yield [response, operation] Access the result along with the RPC operation
1343
+ # @yieldparam response [::Gapic::Operation]
1344
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1345
+ #
1346
+ # @return [::Gapic::Operation]
1347
+ #
1348
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1349
+ #
1350
+ def update_service_perimeter request, options = nil
1351
+ raise ::ArgumentError, "request must be provided" if request.nil?
1352
+
1353
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::UpdateServicePerimeterRequest
1354
+
1355
+ # Converts hash and nil to an options object
1356
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1357
+
1358
+ # Customize the options with defaults
1359
+ metadata = @config.rpcs.update_service_perimeter.metadata.to_h
1360
+
1361
+ # Set x-goog-api-client and x-goog-user-project headers
1362
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1363
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1364
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
1365
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1366
+
1367
+ header_params = {
1368
+ "service_perimeter.name" => request.service_perimeter.name
1369
+ }
1370
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1371
+ metadata[:"x-goog-request-params"] ||= request_params_header
1372
+
1373
+ options.apply_defaults timeout: @config.rpcs.update_service_perimeter.timeout,
1374
+ metadata: metadata,
1375
+ retry_policy: @config.rpcs.update_service_perimeter.retry_policy
1376
+
1377
+ options.apply_defaults timeout: @config.timeout,
1378
+ metadata: @config.metadata,
1379
+ retry_policy: @config.retry_policy
1380
+
1381
+ @access_context_manager_stub.call_rpc :update_service_perimeter, request, options: options do |response, operation|
1382
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1383
+ yield response, operation if block_given?
1384
+ return response
1385
+ end
1386
+ rescue ::GRPC::BadStatus => e
1387
+ raise ::Google::Cloud::Error.from_error(e)
1388
+ end
1389
+
1390
+ ##
1391
+ # Delete a [Service Perimeter]
1392
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] by resource
1393
+ # name. The longrunning operation from this RPC will have a successful status
1394
+ # once the [Service Perimeter]
1395
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] has been
1396
+ # removed from long-lasting storage.
1397
+ #
1398
+ # @overload delete_service_perimeter(request, options = nil)
1399
+ # Pass arguments to `delete_service_perimeter` via a request object, either of type
1400
+ # {::Google::Identity::AccessContextManager::V1::DeleteServicePerimeterRequest} or an equivalent Hash.
1401
+ #
1402
+ # @param request [::Google::Identity::AccessContextManager::V1::DeleteServicePerimeterRequest, ::Hash]
1403
+ # A request object representing the call parameters. Required. To specify no
1404
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1405
+ # @param options [::Gapic::CallOptions, ::Hash]
1406
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1407
+ #
1408
+ # @overload delete_service_perimeter(name: nil)
1409
+ # Pass arguments to `delete_service_perimeter` via keyword arguments. Note that at
1410
+ # least one keyword argument is required. To specify no parameters, or to keep all
1411
+ # the default parameter values, pass an empty Hash as a request object (see above).
1412
+ #
1413
+ # @param name [::String]
1414
+ # Required. Resource name for the [Service Perimeter]
1415
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter].
1416
+ #
1417
+ # Format:
1418
+ # `accessPolicies/{policy_id}/servicePerimeters/{service_perimeter_id}`
1419
+ #
1420
+ # @yield [response, operation] Access the result along with the RPC operation
1421
+ # @yieldparam response [::Gapic::Operation]
1422
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1423
+ #
1424
+ # @return [::Gapic::Operation]
1425
+ #
1426
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1427
+ #
1428
+ def delete_service_perimeter request, options = nil
1429
+ raise ::ArgumentError, "request must be provided" if request.nil?
1430
+
1431
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::DeleteServicePerimeterRequest
1432
+
1433
+ # Converts hash and nil to an options object
1434
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1435
+
1436
+ # Customize the options with defaults
1437
+ metadata = @config.rpcs.delete_service_perimeter.metadata.to_h
1438
+
1439
+ # Set x-goog-api-client and x-goog-user-project headers
1440
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1441
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1442
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
1443
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1444
+
1445
+ header_params = {
1446
+ "name" => request.name
1447
+ }
1448
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1449
+ metadata[:"x-goog-request-params"] ||= request_params_header
1450
+
1451
+ options.apply_defaults timeout: @config.rpcs.delete_service_perimeter.timeout,
1452
+ metadata: metadata,
1453
+ retry_policy: @config.rpcs.delete_service_perimeter.retry_policy
1454
+
1455
+ options.apply_defaults timeout: @config.timeout,
1456
+ metadata: @config.metadata,
1457
+ retry_policy: @config.retry_policy
1458
+
1459
+ @access_context_manager_stub.call_rpc :delete_service_perimeter, request, options: options do |response, operation|
1460
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1461
+ yield response, operation if block_given?
1462
+ return response
1463
+ end
1464
+ rescue ::GRPC::BadStatus => e
1465
+ raise ::Google::Cloud::Error.from_error(e)
1466
+ end
1467
+
1468
+ ##
1469
+ # Replace all existing [Service Perimeters]
1470
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] in an
1471
+ # [Access Policy] [google.identity.accesscontextmanager.v1.AccessPolicy]
1472
+ # with the [Service Perimeters]
1473
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] provided.
1474
+ # This is done atomically. The longrunning operation from this
1475
+ # RPC will have a successful status once all replacements have propagated to
1476
+ # long-lasting storage. Replacements containing errors will result in an
1477
+ # error response for the first error encountered. Replacement will be
1478
+ # cancelled on error, existing [Service Perimeters]
1479
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] will not be
1480
+ # affected. Operation.response field will contain
1481
+ # ReplaceServicePerimetersResponse.
1482
+ #
1483
+ # @overload replace_service_perimeters(request, options = nil)
1484
+ # Pass arguments to `replace_service_perimeters` via a request object, either of type
1485
+ # {::Google::Identity::AccessContextManager::V1::ReplaceServicePerimetersRequest} or an equivalent Hash.
1486
+ #
1487
+ # @param request [::Google::Identity::AccessContextManager::V1::ReplaceServicePerimetersRequest, ::Hash]
1488
+ # A request object representing the call parameters. Required. To specify no
1489
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1490
+ # @param options [::Gapic::CallOptions, ::Hash]
1491
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1492
+ #
1493
+ # @overload replace_service_perimeters(parent: nil, service_perimeters: nil, etag: nil)
1494
+ # Pass arguments to `replace_service_perimeters` via keyword arguments. Note that at
1495
+ # least one keyword argument is required. To specify no parameters, or to keep all
1496
+ # the default parameter values, pass an empty Hash as a request object (see above).
1497
+ #
1498
+ # @param parent [::String]
1499
+ # Required. Resource name for the access policy which owns these
1500
+ # [Service Perimeters]
1501
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter].
1502
+ #
1503
+ # Format: `accessPolicies/{policy_id}`
1504
+ # @param service_perimeters [::Array<::Google::Identity::AccessContextManager::V1::ServicePerimeter, ::Hash>]
1505
+ # Required. The desired [Service Perimeters]
1506
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] that should
1507
+ # replace all existing [Service Perimeters]
1508
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] in the
1509
+ # [Access Policy]
1510
+ # [google.identity.accesscontextmanager.v1.AccessPolicy].
1511
+ # @param etag [::String]
1512
+ # Optional. The etag for the version of the [Access Policy]
1513
+ # [google.identity.accesscontextmanager.v1.AccessPolicy] that this
1514
+ # replace operation is to be performed on. If, at the time of replace, the
1515
+ # etag for the Access Policy stored in Access Context Manager is different
1516
+ # from the specified etag, then the replace operation will not be performed
1517
+ # and the call will fail. This field is not required. If etag is not
1518
+ # provided, the operation will be performed as if a valid etag is provided.
1519
+ #
1520
+ # @yield [response, operation] Access the result along with the RPC operation
1521
+ # @yieldparam response [::Gapic::Operation]
1522
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1523
+ #
1524
+ # @return [::Gapic::Operation]
1525
+ #
1526
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1527
+ #
1528
+ def replace_service_perimeters request, options = nil
1529
+ raise ::ArgumentError, "request must be provided" if request.nil?
1530
+
1531
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::ReplaceServicePerimetersRequest
1532
+
1533
+ # Converts hash and nil to an options object
1534
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1535
+
1536
+ # Customize the options with defaults
1537
+ metadata = @config.rpcs.replace_service_perimeters.metadata.to_h
1538
+
1539
+ # Set x-goog-api-client and x-goog-user-project headers
1540
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1541
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1542
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
1543
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1544
+
1545
+ header_params = {
1546
+ "parent" => request.parent
1547
+ }
1548
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1549
+ metadata[:"x-goog-request-params"] ||= request_params_header
1550
+
1551
+ options.apply_defaults timeout: @config.rpcs.replace_service_perimeters.timeout,
1552
+ metadata: metadata,
1553
+ retry_policy: @config.rpcs.replace_service_perimeters.retry_policy
1554
+
1555
+ options.apply_defaults timeout: @config.timeout,
1556
+ metadata: @config.metadata,
1557
+ retry_policy: @config.retry_policy
1558
+
1559
+ @access_context_manager_stub.call_rpc :replace_service_perimeters, request, options: options do |response, operation|
1560
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1561
+ yield response, operation if block_given?
1562
+ return response
1563
+ end
1564
+ rescue ::GRPC::BadStatus => e
1565
+ raise ::Google::Cloud::Error.from_error(e)
1566
+ end
1567
+
1568
+ ##
1569
+ # Commit the dry-run spec for all the [Service Perimeters]
1570
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] in an
1571
+ # {::Google::Identity::AccessContextManager::V1::AccessPolicy Access Policy}.
1572
+ # A commit operation on a Service Perimeter involves copying its `spec` field
1573
+ # to that Service Perimeter's `status` field. Only [Service Perimeters]
1574
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] with
1575
+ # `use_explicit_dry_run_spec` field set to true are affected by a commit
1576
+ # operation. The longrunning operation from this RPC will have a successful
1577
+ # status once the dry-run specs for all the [Service Perimeters]
1578
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] have been
1579
+ # committed. If a commit fails, it will cause the longrunning operation to
1580
+ # return an error response and the entire commit operation will be cancelled.
1581
+ # When successful, Operation.response field will contain
1582
+ # CommitServicePerimetersResponse. The `dry_run` and the `spec` fields will
1583
+ # be cleared after a successful commit operation.
1584
+ #
1585
+ # @overload commit_service_perimeters(request, options = nil)
1586
+ # Pass arguments to `commit_service_perimeters` via a request object, either of type
1587
+ # {::Google::Identity::AccessContextManager::V1::CommitServicePerimetersRequest} or an equivalent Hash.
1588
+ #
1589
+ # @param request [::Google::Identity::AccessContextManager::V1::CommitServicePerimetersRequest, ::Hash]
1590
+ # A request object representing the call parameters. Required. To specify no
1591
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1592
+ # @param options [::Gapic::CallOptions, ::Hash]
1593
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1594
+ #
1595
+ # @overload commit_service_perimeters(parent: nil, etag: nil)
1596
+ # Pass arguments to `commit_service_perimeters` via keyword arguments. Note that at
1597
+ # least one keyword argument is required. To specify no parameters, or to keep all
1598
+ # the default parameter values, pass an empty Hash as a request object (see above).
1599
+ #
1600
+ # @param parent [::String]
1601
+ # Required. Resource name for the parent [Access Policy]
1602
+ # [google.identity.accesscontextmanager.v1.AccessPolicy] which owns all
1603
+ # [Service Perimeters]
1604
+ # [google.identity.accesscontextmanager.v1.ServicePerimeter] in scope for
1605
+ # the commit operation.
1606
+ #
1607
+ # Format: `accessPolicies/{policy_id}`
1608
+ # @param etag [::String]
1609
+ # Optional. The etag for the version of the [Access Policy]
1610
+ # [google.identity.accesscontextmanager.v1alpha.AccessPolicy] that this
1611
+ # commit operation is to be performed on. If, at the time of commit, the
1612
+ # etag for the Access Policy stored in Access Context Manager is different
1613
+ # from the specified etag, then the commit operation will not be performed
1614
+ # and the call will fail. This field is not required. If etag is not
1615
+ # provided, the operation will be performed as if a valid etag is provided.
1616
+ #
1617
+ # @yield [response, operation] Access the result along with the RPC operation
1618
+ # @yieldparam response [::Gapic::Operation]
1619
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1620
+ #
1621
+ # @return [::Gapic::Operation]
1622
+ #
1623
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1624
+ #
1625
+ def commit_service_perimeters request, options = nil
1626
+ raise ::ArgumentError, "request must be provided" if request.nil?
1627
+
1628
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::CommitServicePerimetersRequest
1629
+
1630
+ # Converts hash and nil to an options object
1631
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1632
+
1633
+ # Customize the options with defaults
1634
+ metadata = @config.rpcs.commit_service_perimeters.metadata.to_h
1635
+
1636
+ # Set x-goog-api-client and x-goog-user-project headers
1637
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1638
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1639
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
1640
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1641
+
1642
+ header_params = {
1643
+ "parent" => request.parent
1644
+ }
1645
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1646
+ metadata[:"x-goog-request-params"] ||= request_params_header
1647
+
1648
+ options.apply_defaults timeout: @config.rpcs.commit_service_perimeters.timeout,
1649
+ metadata: metadata,
1650
+ retry_policy: @config.rpcs.commit_service_perimeters.retry_policy
1651
+
1652
+ options.apply_defaults timeout: @config.timeout,
1653
+ metadata: @config.metadata,
1654
+ retry_policy: @config.retry_policy
1655
+
1656
+ @access_context_manager_stub.call_rpc :commit_service_perimeters, request, options: options do |response, operation|
1657
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1658
+ yield response, operation if block_given?
1659
+ return response
1660
+ end
1661
+ rescue ::GRPC::BadStatus => e
1662
+ raise ::Google::Cloud::Error.from_error(e)
1663
+ end
1664
+
1665
+ ##
1666
+ # Lists all [GcpUserAccessBindings]
1667
+ # [google.identity.accesscontextmanager.v1.GcpUserAccessBinding] for a
1668
+ # Google Cloud organization.
1669
+ #
1670
+ # @overload list_gcp_user_access_bindings(request, options = nil)
1671
+ # Pass arguments to `list_gcp_user_access_bindings` via a request object, either of type
1672
+ # {::Google::Identity::AccessContextManager::V1::ListGcpUserAccessBindingsRequest} or an equivalent Hash.
1673
+ #
1674
+ # @param request [::Google::Identity::AccessContextManager::V1::ListGcpUserAccessBindingsRequest, ::Hash]
1675
+ # A request object representing the call parameters. Required. To specify no
1676
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1677
+ # @param options [::Gapic::CallOptions, ::Hash]
1678
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1679
+ #
1680
+ # @overload list_gcp_user_access_bindings(parent: nil, page_size: nil, page_token: nil)
1681
+ # Pass arguments to `list_gcp_user_access_bindings` via keyword arguments. Note that at
1682
+ # least one keyword argument is required. To specify no parameters, or to keep all
1683
+ # the default parameter values, pass an empty Hash as a request object (see above).
1684
+ #
1685
+ # @param parent [::String]
1686
+ # Required. Example: "organizations/256"
1687
+ # @param page_size [::Integer]
1688
+ # Optional. Maximum number of items to return. The server may return fewer items.
1689
+ # If left blank, the server may return any number of items.
1690
+ # @param page_token [::String]
1691
+ # Optional. If left blank, returns the first page. To enumerate all items, use the
1692
+ # [next_page_token]
1693
+ # [google.identity.accesscontextmanager.v1.ListGcpUserAccessBindingsResponse.next_page_token]
1694
+ # from your previous list operation.
1695
+ #
1696
+ # @yield [response, operation] Access the result along with the RPC operation
1697
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Identity::AccessContextManager::V1::GcpUserAccessBinding>]
1698
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1699
+ #
1700
+ # @return [::Gapic::PagedEnumerable<::Google::Identity::AccessContextManager::V1::GcpUserAccessBinding>]
1701
+ #
1702
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1703
+ #
1704
+ def list_gcp_user_access_bindings request, options = nil
1705
+ raise ::ArgumentError, "request must be provided" if request.nil?
1706
+
1707
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::ListGcpUserAccessBindingsRequest
1708
+
1709
+ # Converts hash and nil to an options object
1710
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1711
+
1712
+ # Customize the options with defaults
1713
+ metadata = @config.rpcs.list_gcp_user_access_bindings.metadata.to_h
1714
+
1715
+ # Set x-goog-api-client and x-goog-user-project headers
1716
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1717
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1718
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
1719
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1720
+
1721
+ header_params = {
1722
+ "parent" => request.parent
1723
+ }
1724
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1725
+ metadata[:"x-goog-request-params"] ||= request_params_header
1726
+
1727
+ options.apply_defaults timeout: @config.rpcs.list_gcp_user_access_bindings.timeout,
1728
+ metadata: metadata,
1729
+ retry_policy: @config.rpcs.list_gcp_user_access_bindings.retry_policy
1730
+
1731
+ options.apply_defaults timeout: @config.timeout,
1732
+ metadata: @config.metadata,
1733
+ retry_policy: @config.retry_policy
1734
+
1735
+ @access_context_manager_stub.call_rpc :list_gcp_user_access_bindings, request, options: options do |response, operation|
1736
+ response = ::Gapic::PagedEnumerable.new @access_context_manager_stub, :list_gcp_user_access_bindings, request, response, operation, options
1737
+ yield response, operation if block_given?
1738
+ return response
1739
+ end
1740
+ rescue ::GRPC::BadStatus => e
1741
+ raise ::Google::Cloud::Error.from_error(e)
1742
+ end
1743
+
1744
+ ##
1745
+ # Gets the [GcpUserAccessBinding]
1746
+ # [google.identity.accesscontextmanager.v1.GcpUserAccessBinding] with
1747
+ # the given name.
1748
+ #
1749
+ # @overload get_gcp_user_access_binding(request, options = nil)
1750
+ # Pass arguments to `get_gcp_user_access_binding` via a request object, either of type
1751
+ # {::Google::Identity::AccessContextManager::V1::GetGcpUserAccessBindingRequest} or an equivalent Hash.
1752
+ #
1753
+ # @param request [::Google::Identity::AccessContextManager::V1::GetGcpUserAccessBindingRequest, ::Hash]
1754
+ # A request object representing the call parameters. Required. To specify no
1755
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1756
+ # @param options [::Gapic::CallOptions, ::Hash]
1757
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1758
+ #
1759
+ # @overload get_gcp_user_access_binding(name: nil)
1760
+ # Pass arguments to `get_gcp_user_access_binding` via keyword arguments. Note that at
1761
+ # least one keyword argument is required. To specify no parameters, or to keep all
1762
+ # the default parameter values, pass an empty Hash as a request object (see above).
1763
+ #
1764
+ # @param name [::String]
1765
+ # Required. Example: "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
1766
+ #
1767
+ # @yield [response, operation] Access the result along with the RPC operation
1768
+ # @yieldparam response [::Google::Identity::AccessContextManager::V1::GcpUserAccessBinding]
1769
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1770
+ #
1771
+ # @return [::Google::Identity::AccessContextManager::V1::GcpUserAccessBinding]
1772
+ #
1773
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1774
+ #
1775
+ def get_gcp_user_access_binding request, options = nil
1776
+ raise ::ArgumentError, "request must be provided" if request.nil?
1777
+
1778
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::GetGcpUserAccessBindingRequest
1779
+
1780
+ # Converts hash and nil to an options object
1781
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1782
+
1783
+ # Customize the options with defaults
1784
+ metadata = @config.rpcs.get_gcp_user_access_binding.metadata.to_h
1785
+
1786
+ # Set x-goog-api-client and x-goog-user-project headers
1787
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1788
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1789
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
1790
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1791
+
1792
+ header_params = {
1793
+ "name" => request.name
1794
+ }
1795
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1796
+ metadata[:"x-goog-request-params"] ||= request_params_header
1797
+
1798
+ options.apply_defaults timeout: @config.rpcs.get_gcp_user_access_binding.timeout,
1799
+ metadata: metadata,
1800
+ retry_policy: @config.rpcs.get_gcp_user_access_binding.retry_policy
1801
+
1802
+ options.apply_defaults timeout: @config.timeout,
1803
+ metadata: @config.metadata,
1804
+ retry_policy: @config.retry_policy
1805
+
1806
+ @access_context_manager_stub.call_rpc :get_gcp_user_access_binding, request, options: options do |response, operation|
1807
+ yield response, operation if block_given?
1808
+ return response
1809
+ end
1810
+ rescue ::GRPC::BadStatus => e
1811
+ raise ::Google::Cloud::Error.from_error(e)
1812
+ end
1813
+
1814
+ ##
1815
+ # Creates a [GcpUserAccessBinding]
1816
+ # [google.identity.accesscontextmanager.v1.GcpUserAccessBinding]. If the
1817
+ # client specifies a [name]
1818
+ # [google.identity.accesscontextmanager.v1.GcpUserAccessBinding.name],
1819
+ # the server will ignore it. Fails if a resource already exists with the same
1820
+ # [group_key]
1821
+ # [google.identity.accesscontextmanager.v1.GcpUserAccessBinding.group_key].
1822
+ # Completion of this long-running operation does not necessarily signify that
1823
+ # the new binding is deployed onto all affected users, which may take more
1824
+ # time.
1825
+ #
1826
+ # @overload create_gcp_user_access_binding(request, options = nil)
1827
+ # Pass arguments to `create_gcp_user_access_binding` via a request object, either of type
1828
+ # {::Google::Identity::AccessContextManager::V1::CreateGcpUserAccessBindingRequest} or an equivalent Hash.
1829
+ #
1830
+ # @param request [::Google::Identity::AccessContextManager::V1::CreateGcpUserAccessBindingRequest, ::Hash]
1831
+ # A request object representing the call parameters. Required. To specify no
1832
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1833
+ # @param options [::Gapic::CallOptions, ::Hash]
1834
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1835
+ #
1836
+ # @overload create_gcp_user_access_binding(parent: nil, gcp_user_access_binding: nil)
1837
+ # Pass arguments to `create_gcp_user_access_binding` via keyword arguments. Note that at
1838
+ # least one keyword argument is required. To specify no parameters, or to keep all
1839
+ # the default parameter values, pass an empty Hash as a request object (see above).
1840
+ #
1841
+ # @param parent [::String]
1842
+ # Required. Example: "organizations/256"
1843
+ # @param gcp_user_access_binding [::Google::Identity::AccessContextManager::V1::GcpUserAccessBinding, ::Hash]
1844
+ # Required. [GcpUserAccessBinding]
1845
+ # [google.identity.accesscontextmanager.v1.GcpUserAccessBinding]
1846
+ #
1847
+ # @yield [response, operation] Access the result along with the RPC operation
1848
+ # @yieldparam response [::Gapic::Operation]
1849
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1850
+ #
1851
+ # @return [::Gapic::Operation]
1852
+ #
1853
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1854
+ #
1855
+ def create_gcp_user_access_binding request, options = nil
1856
+ raise ::ArgumentError, "request must be provided" if request.nil?
1857
+
1858
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::CreateGcpUserAccessBindingRequest
1859
+
1860
+ # Converts hash and nil to an options object
1861
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1862
+
1863
+ # Customize the options with defaults
1864
+ metadata = @config.rpcs.create_gcp_user_access_binding.metadata.to_h
1865
+
1866
+ # Set x-goog-api-client and x-goog-user-project headers
1867
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1868
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1869
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
1870
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1871
+
1872
+ header_params = {
1873
+ "parent" => request.parent
1874
+ }
1875
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1876
+ metadata[:"x-goog-request-params"] ||= request_params_header
1877
+
1878
+ options.apply_defaults timeout: @config.rpcs.create_gcp_user_access_binding.timeout,
1879
+ metadata: metadata,
1880
+ retry_policy: @config.rpcs.create_gcp_user_access_binding.retry_policy
1881
+
1882
+ options.apply_defaults timeout: @config.timeout,
1883
+ metadata: @config.metadata,
1884
+ retry_policy: @config.retry_policy
1885
+
1886
+ @access_context_manager_stub.call_rpc :create_gcp_user_access_binding, request, options: options do |response, operation|
1887
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1888
+ yield response, operation if block_given?
1889
+ return response
1890
+ end
1891
+ rescue ::GRPC::BadStatus => e
1892
+ raise ::Google::Cloud::Error.from_error(e)
1893
+ end
1894
+
1895
+ ##
1896
+ # Updates a [GcpUserAccessBinding]
1897
+ # [google.identity.accesscontextmanager.v1.GcpUserAccessBinding].
1898
+ # Completion of this long-running operation does not necessarily signify that
1899
+ # the changed binding is deployed onto all affected users, which may take
1900
+ # more time.
1901
+ #
1902
+ # @overload update_gcp_user_access_binding(request, options = nil)
1903
+ # Pass arguments to `update_gcp_user_access_binding` via a request object, either of type
1904
+ # {::Google::Identity::AccessContextManager::V1::UpdateGcpUserAccessBindingRequest} or an equivalent Hash.
1905
+ #
1906
+ # @param request [::Google::Identity::AccessContextManager::V1::UpdateGcpUserAccessBindingRequest, ::Hash]
1907
+ # A request object representing the call parameters. Required. To specify no
1908
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1909
+ # @param options [::Gapic::CallOptions, ::Hash]
1910
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1911
+ #
1912
+ # @overload update_gcp_user_access_binding(gcp_user_access_binding: nil, update_mask: nil)
1913
+ # Pass arguments to `update_gcp_user_access_binding` via keyword arguments. Note that at
1914
+ # least one keyword argument is required. To specify no parameters, or to keep all
1915
+ # the default parameter values, pass an empty Hash as a request object (see above).
1916
+ #
1917
+ # @param gcp_user_access_binding [::Google::Identity::AccessContextManager::V1::GcpUserAccessBinding, ::Hash]
1918
+ # Required. [GcpUserAccessBinding]
1919
+ # [google.identity.accesscontextmanager.v1.GcpUserAccessBinding]
1920
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
1921
+ # Required. Only the fields specified in this mask are updated. Because name and
1922
+ # group_key cannot be changed, update_mask is required and must always be:
1923
+ #
1924
+ # update_mask {
1925
+ # paths: "access_levels"
1926
+ # }
1927
+ #
1928
+ # @yield [response, operation] Access the result along with the RPC operation
1929
+ # @yieldparam response [::Gapic::Operation]
1930
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1931
+ #
1932
+ # @return [::Gapic::Operation]
1933
+ #
1934
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1935
+ #
1936
+ def update_gcp_user_access_binding request, options = nil
1937
+ raise ::ArgumentError, "request must be provided" if request.nil?
1938
+
1939
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::UpdateGcpUserAccessBindingRequest
1940
+
1941
+ # Converts hash and nil to an options object
1942
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1943
+
1944
+ # Customize the options with defaults
1945
+ metadata = @config.rpcs.update_gcp_user_access_binding.metadata.to_h
1946
+
1947
+ # Set x-goog-api-client and x-goog-user-project headers
1948
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1949
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1950
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
1951
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1952
+
1953
+ header_params = {
1954
+ "gcp_user_access_binding.name" => request.gcp_user_access_binding.name
1955
+ }
1956
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1957
+ metadata[:"x-goog-request-params"] ||= request_params_header
1958
+
1959
+ options.apply_defaults timeout: @config.rpcs.update_gcp_user_access_binding.timeout,
1960
+ metadata: metadata,
1961
+ retry_policy: @config.rpcs.update_gcp_user_access_binding.retry_policy
1962
+
1963
+ options.apply_defaults timeout: @config.timeout,
1964
+ metadata: @config.metadata,
1965
+ retry_policy: @config.retry_policy
1966
+
1967
+ @access_context_manager_stub.call_rpc :update_gcp_user_access_binding, request, options: options do |response, operation|
1968
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1969
+ yield response, operation if block_given?
1970
+ return response
1971
+ end
1972
+ rescue ::GRPC::BadStatus => e
1973
+ raise ::Google::Cloud::Error.from_error(e)
1974
+ end
1975
+
1976
+ ##
1977
+ # Deletes a [GcpUserAccessBinding]
1978
+ # [google.identity.accesscontextmanager.v1.GcpUserAccessBinding].
1979
+ # Completion of this long-running operation does not necessarily signify that
1980
+ # the binding deletion is deployed onto all affected users, which may take
1981
+ # more time.
1982
+ #
1983
+ # @overload delete_gcp_user_access_binding(request, options = nil)
1984
+ # Pass arguments to `delete_gcp_user_access_binding` via a request object, either of type
1985
+ # {::Google::Identity::AccessContextManager::V1::DeleteGcpUserAccessBindingRequest} or an equivalent Hash.
1986
+ #
1987
+ # @param request [::Google::Identity::AccessContextManager::V1::DeleteGcpUserAccessBindingRequest, ::Hash]
1988
+ # A request object representing the call parameters. Required. To specify no
1989
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1990
+ # @param options [::Gapic::CallOptions, ::Hash]
1991
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1992
+ #
1993
+ # @overload delete_gcp_user_access_binding(name: nil)
1994
+ # Pass arguments to `delete_gcp_user_access_binding` via keyword arguments. Note that at
1995
+ # least one keyword argument is required. To specify no parameters, or to keep all
1996
+ # the default parameter values, pass an empty Hash as a request object (see above).
1997
+ #
1998
+ # @param name [::String]
1999
+ # Required. Example: "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
2000
+ #
2001
+ # @yield [response, operation] Access the result along with the RPC operation
2002
+ # @yieldparam response [::Gapic::Operation]
2003
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
2004
+ #
2005
+ # @return [::Gapic::Operation]
2006
+ #
2007
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
2008
+ #
2009
+ def delete_gcp_user_access_binding request, options = nil
2010
+ raise ::ArgumentError, "request must be provided" if request.nil?
2011
+
2012
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Identity::AccessContextManager::V1::DeleteGcpUserAccessBindingRequest
2013
+
2014
+ # Converts hash and nil to an options object
2015
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
2016
+
2017
+ # Customize the options with defaults
2018
+ metadata = @config.rpcs.delete_gcp_user_access_binding.metadata.to_h
2019
+
2020
+ # Set x-goog-api-client and x-goog-user-project headers
2021
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
2022
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
2023
+ gapic_version: ::Google::Identity::AccessContextManager::V1::VERSION
2024
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
2025
+
2026
+ header_params = {
2027
+ "name" => request.name
2028
+ }
2029
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
2030
+ metadata[:"x-goog-request-params"] ||= request_params_header
2031
+
2032
+ options.apply_defaults timeout: @config.rpcs.delete_gcp_user_access_binding.timeout,
2033
+ metadata: metadata,
2034
+ retry_policy: @config.rpcs.delete_gcp_user_access_binding.retry_policy
2035
+
2036
+ options.apply_defaults timeout: @config.timeout,
2037
+ metadata: @config.metadata,
2038
+ retry_policy: @config.retry_policy
2039
+
2040
+ @access_context_manager_stub.call_rpc :delete_gcp_user_access_binding, request, options: options do |response, operation|
2041
+ response = ::Gapic::Operation.new response, @operations_client, options: options
2042
+ yield response, operation if block_given?
2043
+ return response
2044
+ end
2045
+ rescue ::GRPC::BadStatus => e
2046
+ raise ::Google::Cloud::Error.from_error(e)
2047
+ end
2048
+
2049
+ ##
2050
+ # Configuration class for the AccessContextManager API.
2051
+ #
2052
+ # This class represents the configuration for AccessContextManager,
2053
+ # providing control over timeouts, retry behavior, logging, transport
2054
+ # parameters, and other low-level controls. Certain parameters can also be
2055
+ # applied individually to specific RPCs. See
2056
+ # {::Google::Identity::AccessContextManager::V1::AccessContextManager::Client::Configuration::Rpcs}
2057
+ # for a list of RPCs that can be configured independently.
2058
+ #
2059
+ # Configuration can be applied globally to all clients, or to a single client
2060
+ # on construction.
2061
+ #
2062
+ # @example
2063
+ #
2064
+ # # Modify the global config, setting the timeout for
2065
+ # # list_access_policies to 20 seconds,
2066
+ # # and all remaining timeouts to 10 seconds.
2067
+ # ::Google::Identity::AccessContextManager::V1::AccessContextManager::Client.configure do |config|
2068
+ # config.timeout = 10.0
2069
+ # config.rpcs.list_access_policies.timeout = 20.0
2070
+ # end
2071
+ #
2072
+ # # Apply the above configuration only to a new client.
2073
+ # client = ::Google::Identity::AccessContextManager::V1::AccessContextManager::Client.new do |config|
2074
+ # config.timeout = 10.0
2075
+ # config.rpcs.list_access_policies.timeout = 20.0
2076
+ # end
2077
+ #
2078
+ # @!attribute [rw] endpoint
2079
+ # The hostname or hostname:port of the service endpoint.
2080
+ # Defaults to `"accesscontextmanager.googleapis.com"`.
2081
+ # @return [::String]
2082
+ # @!attribute [rw] credentials
2083
+ # Credentials to send with calls. You may provide any of the following types:
2084
+ # * (`String`) The path to a service account key file in JSON format
2085
+ # * (`Hash`) A service account key as a Hash
2086
+ # * (`Google::Auth::Credentials`) A googleauth credentials object
2087
+ # (see the [googleauth docs](https://googleapis.dev/ruby/googleauth/latest/index.html))
2088
+ # * (`Signet::OAuth2::Client`) A signet oauth2 client object
2089
+ # (see the [signet docs](https://googleapis.dev/ruby/signet/latest/Signet/OAuth2/Client.html))
2090
+ # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
2091
+ # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
2092
+ # * (`nil`) indicating no credentials
2093
+ # @return [::Object]
2094
+ # @!attribute [rw] scope
2095
+ # The OAuth scopes
2096
+ # @return [::Array<::String>]
2097
+ # @!attribute [rw] lib_name
2098
+ # The library name as recorded in instrumentation and logging
2099
+ # @return [::String]
2100
+ # @!attribute [rw] lib_version
2101
+ # The library version as recorded in instrumentation and logging
2102
+ # @return [::String]
2103
+ # @!attribute [rw] channel_args
2104
+ # Extra parameters passed to the gRPC channel. Note: this is ignored if a
2105
+ # `GRPC::Core::Channel` object is provided as the credential.
2106
+ # @return [::Hash]
2107
+ # @!attribute [rw] interceptors
2108
+ # An array of interceptors that are run before calls are executed.
2109
+ # @return [::Array<::GRPC::ClientInterceptor>]
2110
+ # @!attribute [rw] timeout
2111
+ # The call timeout in seconds.
2112
+ # @return [::Numeric]
2113
+ # @!attribute [rw] metadata
2114
+ # Additional gRPC headers to be sent with the call.
2115
+ # @return [::Hash{::Symbol=>::String}]
2116
+ # @!attribute [rw] retry_policy
2117
+ # The retry policy. The value is a hash with the following keys:
2118
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
2119
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
2120
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
2121
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
2122
+ # trigger a retry.
2123
+ # @return [::Hash]
2124
+ # @!attribute [rw] quota_project
2125
+ # A separate project against which to charge quota.
2126
+ # @return [::String]
2127
+ #
2128
+ class Configuration
2129
+ extend ::Gapic::Config
2130
+
2131
+ config_attr :endpoint, "accesscontextmanager.googleapis.com", ::String
2132
+ config_attr :credentials, nil do |value|
2133
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
2134
+ allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
2135
+ allowed.any? { |klass| klass === value }
2136
+ end
2137
+ config_attr :scope, nil, ::String, ::Array, nil
2138
+ config_attr :lib_name, nil, ::String, nil
2139
+ config_attr :lib_version, nil, ::String, nil
2140
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
2141
+ config_attr :interceptors, nil, ::Array, nil
2142
+ config_attr :timeout, nil, ::Numeric, nil
2143
+ config_attr :metadata, nil, ::Hash, nil
2144
+ config_attr :retry_policy, nil, ::Hash, ::Proc, nil
2145
+ config_attr :quota_project, nil, ::String, nil
2146
+
2147
+ # @private
2148
+ def initialize parent_config = nil
2149
+ @parent_config = parent_config unless parent_config.nil?
2150
+
2151
+ yield self if block_given?
2152
+ end
2153
+
2154
+ ##
2155
+ # Configurations for individual RPCs
2156
+ # @return [Rpcs]
2157
+ #
2158
+ def rpcs
2159
+ @rpcs ||= begin
2160
+ parent_rpcs = nil
2161
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
2162
+ Rpcs.new parent_rpcs
2163
+ end
2164
+ end
2165
+
2166
+ ##
2167
+ # Configuration RPC class for the AccessContextManager API.
2168
+ #
2169
+ # Includes fields providing the configuration for each RPC in this service.
2170
+ # Each configuration object is of type `Gapic::Config::Method` and includes
2171
+ # the following configuration fields:
2172
+ #
2173
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
2174
+ # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
2175
+ # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
2176
+ # include the following keys:
2177
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
2178
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
2179
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
2180
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
2181
+ # trigger a retry.
2182
+ #
2183
+ class Rpcs
2184
+ ##
2185
+ # RPC-specific configuration for `list_access_policies`
2186
+ # @return [::Gapic::Config::Method]
2187
+ #
2188
+ attr_reader :list_access_policies
2189
+ ##
2190
+ # RPC-specific configuration for `get_access_policy`
2191
+ # @return [::Gapic::Config::Method]
2192
+ #
2193
+ attr_reader :get_access_policy
2194
+ ##
2195
+ # RPC-specific configuration for `create_access_policy`
2196
+ # @return [::Gapic::Config::Method]
2197
+ #
2198
+ attr_reader :create_access_policy
2199
+ ##
2200
+ # RPC-specific configuration for `update_access_policy`
2201
+ # @return [::Gapic::Config::Method]
2202
+ #
2203
+ attr_reader :update_access_policy
2204
+ ##
2205
+ # RPC-specific configuration for `delete_access_policy`
2206
+ # @return [::Gapic::Config::Method]
2207
+ #
2208
+ attr_reader :delete_access_policy
2209
+ ##
2210
+ # RPC-specific configuration for `list_access_levels`
2211
+ # @return [::Gapic::Config::Method]
2212
+ #
2213
+ attr_reader :list_access_levels
2214
+ ##
2215
+ # RPC-specific configuration for `get_access_level`
2216
+ # @return [::Gapic::Config::Method]
2217
+ #
2218
+ attr_reader :get_access_level
2219
+ ##
2220
+ # RPC-specific configuration for `create_access_level`
2221
+ # @return [::Gapic::Config::Method]
2222
+ #
2223
+ attr_reader :create_access_level
2224
+ ##
2225
+ # RPC-specific configuration for `update_access_level`
2226
+ # @return [::Gapic::Config::Method]
2227
+ #
2228
+ attr_reader :update_access_level
2229
+ ##
2230
+ # RPC-specific configuration for `delete_access_level`
2231
+ # @return [::Gapic::Config::Method]
2232
+ #
2233
+ attr_reader :delete_access_level
2234
+ ##
2235
+ # RPC-specific configuration for `replace_access_levels`
2236
+ # @return [::Gapic::Config::Method]
2237
+ #
2238
+ attr_reader :replace_access_levels
2239
+ ##
2240
+ # RPC-specific configuration for `list_service_perimeters`
2241
+ # @return [::Gapic::Config::Method]
2242
+ #
2243
+ attr_reader :list_service_perimeters
2244
+ ##
2245
+ # RPC-specific configuration for `get_service_perimeter`
2246
+ # @return [::Gapic::Config::Method]
2247
+ #
2248
+ attr_reader :get_service_perimeter
2249
+ ##
2250
+ # RPC-specific configuration for `create_service_perimeter`
2251
+ # @return [::Gapic::Config::Method]
2252
+ #
2253
+ attr_reader :create_service_perimeter
2254
+ ##
2255
+ # RPC-specific configuration for `update_service_perimeter`
2256
+ # @return [::Gapic::Config::Method]
2257
+ #
2258
+ attr_reader :update_service_perimeter
2259
+ ##
2260
+ # RPC-specific configuration for `delete_service_perimeter`
2261
+ # @return [::Gapic::Config::Method]
2262
+ #
2263
+ attr_reader :delete_service_perimeter
2264
+ ##
2265
+ # RPC-specific configuration for `replace_service_perimeters`
2266
+ # @return [::Gapic::Config::Method]
2267
+ #
2268
+ attr_reader :replace_service_perimeters
2269
+ ##
2270
+ # RPC-specific configuration for `commit_service_perimeters`
2271
+ # @return [::Gapic::Config::Method]
2272
+ #
2273
+ attr_reader :commit_service_perimeters
2274
+ ##
2275
+ # RPC-specific configuration for `list_gcp_user_access_bindings`
2276
+ # @return [::Gapic::Config::Method]
2277
+ #
2278
+ attr_reader :list_gcp_user_access_bindings
2279
+ ##
2280
+ # RPC-specific configuration for `get_gcp_user_access_binding`
2281
+ # @return [::Gapic::Config::Method]
2282
+ #
2283
+ attr_reader :get_gcp_user_access_binding
2284
+ ##
2285
+ # RPC-specific configuration for `create_gcp_user_access_binding`
2286
+ # @return [::Gapic::Config::Method]
2287
+ #
2288
+ attr_reader :create_gcp_user_access_binding
2289
+ ##
2290
+ # RPC-specific configuration for `update_gcp_user_access_binding`
2291
+ # @return [::Gapic::Config::Method]
2292
+ #
2293
+ attr_reader :update_gcp_user_access_binding
2294
+ ##
2295
+ # RPC-specific configuration for `delete_gcp_user_access_binding`
2296
+ # @return [::Gapic::Config::Method]
2297
+ #
2298
+ attr_reader :delete_gcp_user_access_binding
2299
+
2300
+ # @private
2301
+ def initialize parent_rpcs = nil
2302
+ list_access_policies_config = parent_rpcs.list_access_policies if parent_rpcs.respond_to? :list_access_policies
2303
+ @list_access_policies = ::Gapic::Config::Method.new list_access_policies_config
2304
+ get_access_policy_config = parent_rpcs.get_access_policy if parent_rpcs.respond_to? :get_access_policy
2305
+ @get_access_policy = ::Gapic::Config::Method.new get_access_policy_config
2306
+ create_access_policy_config = parent_rpcs.create_access_policy if parent_rpcs.respond_to? :create_access_policy
2307
+ @create_access_policy = ::Gapic::Config::Method.new create_access_policy_config
2308
+ update_access_policy_config = parent_rpcs.update_access_policy if parent_rpcs.respond_to? :update_access_policy
2309
+ @update_access_policy = ::Gapic::Config::Method.new update_access_policy_config
2310
+ delete_access_policy_config = parent_rpcs.delete_access_policy if parent_rpcs.respond_to? :delete_access_policy
2311
+ @delete_access_policy = ::Gapic::Config::Method.new delete_access_policy_config
2312
+ list_access_levels_config = parent_rpcs.list_access_levels if parent_rpcs.respond_to? :list_access_levels
2313
+ @list_access_levels = ::Gapic::Config::Method.new list_access_levels_config
2314
+ get_access_level_config = parent_rpcs.get_access_level if parent_rpcs.respond_to? :get_access_level
2315
+ @get_access_level = ::Gapic::Config::Method.new get_access_level_config
2316
+ create_access_level_config = parent_rpcs.create_access_level if parent_rpcs.respond_to? :create_access_level
2317
+ @create_access_level = ::Gapic::Config::Method.new create_access_level_config
2318
+ update_access_level_config = parent_rpcs.update_access_level if parent_rpcs.respond_to? :update_access_level
2319
+ @update_access_level = ::Gapic::Config::Method.new update_access_level_config
2320
+ delete_access_level_config = parent_rpcs.delete_access_level if parent_rpcs.respond_to? :delete_access_level
2321
+ @delete_access_level = ::Gapic::Config::Method.new delete_access_level_config
2322
+ replace_access_levels_config = parent_rpcs.replace_access_levels if parent_rpcs.respond_to? :replace_access_levels
2323
+ @replace_access_levels = ::Gapic::Config::Method.new replace_access_levels_config
2324
+ list_service_perimeters_config = parent_rpcs.list_service_perimeters if parent_rpcs.respond_to? :list_service_perimeters
2325
+ @list_service_perimeters = ::Gapic::Config::Method.new list_service_perimeters_config
2326
+ get_service_perimeter_config = parent_rpcs.get_service_perimeter if parent_rpcs.respond_to? :get_service_perimeter
2327
+ @get_service_perimeter = ::Gapic::Config::Method.new get_service_perimeter_config
2328
+ create_service_perimeter_config = parent_rpcs.create_service_perimeter if parent_rpcs.respond_to? :create_service_perimeter
2329
+ @create_service_perimeter = ::Gapic::Config::Method.new create_service_perimeter_config
2330
+ update_service_perimeter_config = parent_rpcs.update_service_perimeter if parent_rpcs.respond_to? :update_service_perimeter
2331
+ @update_service_perimeter = ::Gapic::Config::Method.new update_service_perimeter_config
2332
+ delete_service_perimeter_config = parent_rpcs.delete_service_perimeter if parent_rpcs.respond_to? :delete_service_perimeter
2333
+ @delete_service_perimeter = ::Gapic::Config::Method.new delete_service_perimeter_config
2334
+ replace_service_perimeters_config = parent_rpcs.replace_service_perimeters if parent_rpcs.respond_to? :replace_service_perimeters
2335
+ @replace_service_perimeters = ::Gapic::Config::Method.new replace_service_perimeters_config
2336
+ commit_service_perimeters_config = parent_rpcs.commit_service_perimeters if parent_rpcs.respond_to? :commit_service_perimeters
2337
+ @commit_service_perimeters = ::Gapic::Config::Method.new commit_service_perimeters_config
2338
+ list_gcp_user_access_bindings_config = parent_rpcs.list_gcp_user_access_bindings if parent_rpcs.respond_to? :list_gcp_user_access_bindings
2339
+ @list_gcp_user_access_bindings = ::Gapic::Config::Method.new list_gcp_user_access_bindings_config
2340
+ get_gcp_user_access_binding_config = parent_rpcs.get_gcp_user_access_binding if parent_rpcs.respond_to? :get_gcp_user_access_binding
2341
+ @get_gcp_user_access_binding = ::Gapic::Config::Method.new get_gcp_user_access_binding_config
2342
+ create_gcp_user_access_binding_config = parent_rpcs.create_gcp_user_access_binding if parent_rpcs.respond_to? :create_gcp_user_access_binding
2343
+ @create_gcp_user_access_binding = ::Gapic::Config::Method.new create_gcp_user_access_binding_config
2344
+ update_gcp_user_access_binding_config = parent_rpcs.update_gcp_user_access_binding if parent_rpcs.respond_to? :update_gcp_user_access_binding
2345
+ @update_gcp_user_access_binding = ::Gapic::Config::Method.new update_gcp_user_access_binding_config
2346
+ delete_gcp_user_access_binding_config = parent_rpcs.delete_gcp_user_access_binding if parent_rpcs.respond_to? :delete_gcp_user_access_binding
2347
+ @delete_gcp_user_access_binding = ::Gapic::Config::Method.new delete_gcp_user_access_binding_config
2348
+
2349
+ yield self if block_given?
2350
+ end
2351
+ end
2352
+ end
2353
+ end
2354
+ end
2355
+ end
2356
+ end
2357
+ end
2358
+ end