google-iam-v3 0.a → 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 (53) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +154 -8
  5. data/lib/google/iam/v3/operation_metadata_pb.rb +44 -0
  6. data/lib/google/iam/v3/policy_binding_resources_pb.rb +50 -0
  7. data/lib/google/iam/v3/policy_bindings/client.rb +1130 -0
  8. data/lib/google/iam/v3/policy_bindings/credentials.rb +45 -0
  9. data/lib/google/iam/v3/policy_bindings/operations.rb +811 -0
  10. data/lib/google/iam/v3/policy_bindings/paths.rb +140 -0
  11. data/lib/google/iam/v3/policy_bindings/rest/client.rb +1062 -0
  12. data/lib/google/iam/v3/policy_bindings/rest/operations.rb +926 -0
  13. data/lib/google/iam/v3/policy_bindings/rest/service_stub.rb +535 -0
  14. data/lib/google/iam/v3/policy_bindings/rest.rb +52 -0
  15. data/lib/google/iam/v3/policy_bindings.rb +55 -0
  16. data/lib/google/iam/v3/policy_bindings_service_pb.rb +59 -0
  17. data/lib/google/iam/v3/policy_bindings_service_services_pb.rb +63 -0
  18. data/lib/google/iam/v3/principal_access_boundary_policies/client.rb +1083 -0
  19. data/lib/google/iam/v3/principal_access_boundary_policies/credentials.rb +45 -0
  20. data/lib/google/iam/v3/principal_access_boundary_policies/operations.rb +811 -0
  21. data/lib/google/iam/v3/principal_access_boundary_policies/paths.rb +67 -0
  22. data/lib/google/iam/v3/principal_access_boundary_policies/rest/client.rb +1015 -0
  23. data/lib/google/iam/v3/principal_access_boundary_policies/rest/operations.rb +926 -0
  24. data/lib/google/iam/v3/principal_access_boundary_policies/rest/service_stub.rb +447 -0
  25. data/lib/google/iam/v3/principal_access_boundary_policies/rest.rb +52 -0
  26. data/lib/google/iam/v3/principal_access_boundary_policies.rb +55 -0
  27. data/lib/google/iam/v3/principal_access_boundary_policies_service_pb.rb +61 -0
  28. data/lib/google/iam/v3/principal_access_boundary_policies_service_services_pb.rb +56 -0
  29. data/lib/google/iam/v3/principal_access_boundary_policy_resources_pb.rb +49 -0
  30. data/lib/google/iam/v3/rest.rb +36 -0
  31. data/lib/google/iam/v3/version.rb +7 -2
  32. data/lib/google/iam/v3.rb +44 -0
  33. data/lib/google-iam-v3.rb +21 -0
  34. data/proto_docs/README.md +4 -0
  35. data/proto_docs/google/api/client.rb +473 -0
  36. data/proto_docs/google/api/field_behavior.rb +85 -0
  37. data/proto_docs/google/api/field_info.rb +88 -0
  38. data/proto_docs/google/api/launch_stage.rb +71 -0
  39. data/proto_docs/google/api/resource.rb +227 -0
  40. data/proto_docs/google/iam/v3/operation_metadata.rb +55 -0
  41. data/proto_docs/google/iam/v3/policy_binding_resources.rb +171 -0
  42. data/proto_docs/google/iam/v3/policy_bindings_service.rb +232 -0
  43. data/proto_docs/google/iam/v3/principal_access_boundary_policies_service.rb +191 -0
  44. data/proto_docs/google/iam/v3/principal_access_boundary_policy_resources.rb +127 -0
  45. data/proto_docs/google/longrunning/operations.rb +173 -0
  46. data/proto_docs/google/protobuf/any.rb +145 -0
  47. data/proto_docs/google/protobuf/duration.rb +98 -0
  48. data/proto_docs/google/protobuf/empty.rb +34 -0
  49. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  50. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  51. data/proto_docs/google/rpc/status.rb +48 -0
  52. data/proto_docs/google/type/expr.rb +75 -0
  53. metadata +107 -10
@@ -0,0 +1,535 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2025 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/iam/v3/policy_bindings_service_pb"
20
+
21
+ module Google
22
+ module Iam
23
+ module V3
24
+ module PolicyBindings
25
+ module Rest
26
+ ##
27
+ # REST service stub for the PolicyBindings service.
28
+ # Service stub contains baseline method implementations
29
+ # including transcoding, making the REST call, and deserialing the response.
30
+ #
31
+ class ServiceStub
32
+ # @private
33
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger:
34
+ # These require statements are intentionally placed here to initialize
35
+ # the REST modules only when it's required.
36
+ require "gapic/rest"
37
+
38
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
39
+ endpoint_template: endpoint_template,
40
+ universe_domain: universe_domain,
41
+ credentials: credentials,
42
+ numeric_enums: true,
43
+ service_name: self.class,
44
+ raise_faraday_errors: false,
45
+ logger: logger
46
+ end
47
+
48
+ ##
49
+ # The effective universe domain
50
+ #
51
+ # @return [String]
52
+ #
53
+ def universe_domain
54
+ @client_stub.universe_domain
55
+ end
56
+
57
+ ##
58
+ # The effective endpoint
59
+ #
60
+ # @return [String]
61
+ #
62
+ def endpoint
63
+ @client_stub.endpoint
64
+ end
65
+
66
+ ##
67
+ # The logger used for request/response debug logging.
68
+ #
69
+ # @return [Logger]
70
+ #
71
+ def logger stub: false
72
+ stub ? @client_stub.stub_logger : @client_stub.logger
73
+ end
74
+
75
+ ##
76
+ # Baseline implementation for the create_policy_binding REST call
77
+ #
78
+ # @param request_pb [::Google::Iam::V3::CreatePolicyBindingRequest]
79
+ # A request object representing the call parameters. Required.
80
+ # @param options [::Gapic::CallOptions]
81
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
82
+ #
83
+ # @yield [result, operation] Access the result along with the TransportOperation object
84
+ # @yieldparam result [::Google::Longrunning::Operation]
85
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
86
+ #
87
+ # @return [::Google::Longrunning::Operation]
88
+ # A result object deserialized from the server's reply
89
+ def create_policy_binding request_pb, options = nil
90
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
91
+
92
+ verb, uri, query_string_params, body = ServiceStub.transcode_create_policy_binding_request request_pb
93
+ query_string_params = if query_string_params.any?
94
+ query_string_params.to_h { |p| p.split "=", 2 }
95
+ else
96
+ {}
97
+ end
98
+
99
+ response = @client_stub.make_http_request(
100
+ verb,
101
+ uri: uri,
102
+ body: body || "",
103
+ params: query_string_params,
104
+ method_name: "create_policy_binding",
105
+ options: options
106
+ )
107
+ operation = ::Gapic::Rest::TransportOperation.new response
108
+ result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
109
+ catch :response do
110
+ yield result, operation if block_given?
111
+ result
112
+ end
113
+ end
114
+
115
+ ##
116
+ # Baseline implementation for the get_policy_binding REST call
117
+ #
118
+ # @param request_pb [::Google::Iam::V3::GetPolicyBindingRequest]
119
+ # A request object representing the call parameters. Required.
120
+ # @param options [::Gapic::CallOptions]
121
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
122
+ #
123
+ # @yield [result, operation] Access the result along with the TransportOperation object
124
+ # @yieldparam result [::Google::Iam::V3::PolicyBinding]
125
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
126
+ #
127
+ # @return [::Google::Iam::V3::PolicyBinding]
128
+ # A result object deserialized from the server's reply
129
+ def get_policy_binding request_pb, options = nil
130
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
131
+
132
+ verb, uri, query_string_params, body = ServiceStub.transcode_get_policy_binding_request request_pb
133
+ query_string_params = if query_string_params.any?
134
+ query_string_params.to_h { |p| p.split "=", 2 }
135
+ else
136
+ {}
137
+ end
138
+
139
+ response = @client_stub.make_http_request(
140
+ verb,
141
+ uri: uri,
142
+ body: body || "",
143
+ params: query_string_params,
144
+ method_name: "get_policy_binding",
145
+ options: options
146
+ )
147
+ operation = ::Gapic::Rest::TransportOperation.new response
148
+ result = ::Google::Iam::V3::PolicyBinding.decode_json response.body, ignore_unknown_fields: true
149
+ catch :response do
150
+ yield result, operation if block_given?
151
+ result
152
+ end
153
+ end
154
+
155
+ ##
156
+ # Baseline implementation for the update_policy_binding REST call
157
+ #
158
+ # @param request_pb [::Google::Iam::V3::UpdatePolicyBindingRequest]
159
+ # A request object representing the call parameters. Required.
160
+ # @param options [::Gapic::CallOptions]
161
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
162
+ #
163
+ # @yield [result, operation] Access the result along with the TransportOperation object
164
+ # @yieldparam result [::Google::Longrunning::Operation]
165
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
166
+ #
167
+ # @return [::Google::Longrunning::Operation]
168
+ # A result object deserialized from the server's reply
169
+ def update_policy_binding request_pb, options = nil
170
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
171
+
172
+ verb, uri, query_string_params, body = ServiceStub.transcode_update_policy_binding_request request_pb
173
+ query_string_params = if query_string_params.any?
174
+ query_string_params.to_h { |p| p.split "=", 2 }
175
+ else
176
+ {}
177
+ end
178
+
179
+ response = @client_stub.make_http_request(
180
+ verb,
181
+ uri: uri,
182
+ body: body || "",
183
+ params: query_string_params,
184
+ method_name: "update_policy_binding",
185
+ options: options
186
+ )
187
+ operation = ::Gapic::Rest::TransportOperation.new response
188
+ result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
189
+ catch :response do
190
+ yield result, operation if block_given?
191
+ result
192
+ end
193
+ end
194
+
195
+ ##
196
+ # Baseline implementation for the delete_policy_binding REST call
197
+ #
198
+ # @param request_pb [::Google::Iam::V3::DeletePolicyBindingRequest]
199
+ # A request object representing the call parameters. Required.
200
+ # @param options [::Gapic::CallOptions]
201
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
202
+ #
203
+ # @yield [result, operation] Access the result along with the TransportOperation object
204
+ # @yieldparam result [::Google::Longrunning::Operation]
205
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
206
+ #
207
+ # @return [::Google::Longrunning::Operation]
208
+ # A result object deserialized from the server's reply
209
+ def delete_policy_binding request_pb, options = nil
210
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
211
+
212
+ verb, uri, query_string_params, body = ServiceStub.transcode_delete_policy_binding_request request_pb
213
+ query_string_params = if query_string_params.any?
214
+ query_string_params.to_h { |p| p.split "=", 2 }
215
+ else
216
+ {}
217
+ end
218
+
219
+ response = @client_stub.make_http_request(
220
+ verb,
221
+ uri: uri,
222
+ body: body || "",
223
+ params: query_string_params,
224
+ method_name: "delete_policy_binding",
225
+ options: options
226
+ )
227
+ operation = ::Gapic::Rest::TransportOperation.new response
228
+ result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
229
+ catch :response do
230
+ yield result, operation if block_given?
231
+ result
232
+ end
233
+ end
234
+
235
+ ##
236
+ # Baseline implementation for the list_policy_bindings REST call
237
+ #
238
+ # @param request_pb [::Google::Iam::V3::ListPolicyBindingsRequest]
239
+ # A request object representing the call parameters. Required.
240
+ # @param options [::Gapic::CallOptions]
241
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
242
+ #
243
+ # @yield [result, operation] Access the result along with the TransportOperation object
244
+ # @yieldparam result [::Google::Iam::V3::ListPolicyBindingsResponse]
245
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
246
+ #
247
+ # @return [::Google::Iam::V3::ListPolicyBindingsResponse]
248
+ # A result object deserialized from the server's reply
249
+ def list_policy_bindings request_pb, options = nil
250
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
251
+
252
+ verb, uri, query_string_params, body = ServiceStub.transcode_list_policy_bindings_request request_pb
253
+ query_string_params = if query_string_params.any?
254
+ query_string_params.to_h { |p| p.split "=", 2 }
255
+ else
256
+ {}
257
+ end
258
+
259
+ response = @client_stub.make_http_request(
260
+ verb,
261
+ uri: uri,
262
+ body: body || "",
263
+ params: query_string_params,
264
+ method_name: "list_policy_bindings",
265
+ options: options
266
+ )
267
+ operation = ::Gapic::Rest::TransportOperation.new response
268
+ result = ::Google::Iam::V3::ListPolicyBindingsResponse.decode_json response.body, ignore_unknown_fields: true
269
+ catch :response do
270
+ yield result, operation if block_given?
271
+ result
272
+ end
273
+ end
274
+
275
+ ##
276
+ # Baseline implementation for the search_target_policy_bindings REST call
277
+ #
278
+ # @param request_pb [::Google::Iam::V3::SearchTargetPolicyBindingsRequest]
279
+ # A request object representing the call parameters. Required.
280
+ # @param options [::Gapic::CallOptions]
281
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
282
+ #
283
+ # @yield [result, operation] Access the result along with the TransportOperation object
284
+ # @yieldparam result [::Google::Iam::V3::SearchTargetPolicyBindingsResponse]
285
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
286
+ #
287
+ # @return [::Google::Iam::V3::SearchTargetPolicyBindingsResponse]
288
+ # A result object deserialized from the server's reply
289
+ def search_target_policy_bindings request_pb, options = nil
290
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
291
+
292
+ verb, uri, query_string_params, body = ServiceStub.transcode_search_target_policy_bindings_request request_pb
293
+ query_string_params = if query_string_params.any?
294
+ query_string_params.to_h { |p| p.split "=", 2 }
295
+ else
296
+ {}
297
+ end
298
+
299
+ response = @client_stub.make_http_request(
300
+ verb,
301
+ uri: uri,
302
+ body: body || "",
303
+ params: query_string_params,
304
+ method_name: "search_target_policy_bindings",
305
+ options: options
306
+ )
307
+ operation = ::Gapic::Rest::TransportOperation.new response
308
+ result = ::Google::Iam::V3::SearchTargetPolicyBindingsResponse.decode_json response.body, ignore_unknown_fields: true
309
+ catch :response do
310
+ yield result, operation if block_given?
311
+ result
312
+ end
313
+ end
314
+
315
+ ##
316
+ # @private
317
+ #
318
+ # GRPC transcoding helper method for the create_policy_binding REST call
319
+ #
320
+ # @param request_pb [::Google::Iam::V3::CreatePolicyBindingRequest]
321
+ # A request object representing the call parameters. Required.
322
+ # @return [Array(String, [String, nil], Hash{String => String})]
323
+ # Uri, Body, Query string parameters
324
+ def self.transcode_create_policy_binding_request request_pb
325
+ transcoder = Gapic::Rest::GrpcTranscoder.new
326
+ .with_bindings(
327
+ uri_method: :post,
328
+ uri_template: "/v3/{parent}/policyBindings",
329
+ body: "policy_binding",
330
+ matches: [
331
+ ["parent", %r{^projects/[^/]+/locations/[^/]+/?$}, false]
332
+ ]
333
+ )
334
+ .with_bindings(
335
+ uri_method: :post,
336
+ uri_template: "/v3/{parent}/policyBindings",
337
+ body: "policy_binding",
338
+ matches: [
339
+ ["parent", %r{^folders/[^/]+/locations/[^/]+/?$}, false]
340
+ ]
341
+ )
342
+ .with_bindings(
343
+ uri_method: :post,
344
+ uri_template: "/v3/{parent}/policyBindings",
345
+ body: "policy_binding",
346
+ matches: [
347
+ ["parent", %r{^organizations/[^/]+/locations/[^/]+/?$}, false]
348
+ ]
349
+ )
350
+ transcoder.transcode request_pb
351
+ end
352
+
353
+ ##
354
+ # @private
355
+ #
356
+ # GRPC transcoding helper method for the get_policy_binding REST call
357
+ #
358
+ # @param request_pb [::Google::Iam::V3::GetPolicyBindingRequest]
359
+ # A request object representing the call parameters. Required.
360
+ # @return [Array(String, [String, nil], Hash{String => String})]
361
+ # Uri, Body, Query string parameters
362
+ def self.transcode_get_policy_binding_request request_pb
363
+ transcoder = Gapic::Rest::GrpcTranscoder.new
364
+ .with_bindings(
365
+ uri_method: :get,
366
+ uri_template: "/v3/{name}",
367
+ matches: [
368
+ ["name", %r{^projects/[^/]+/locations/[^/]+/policyBindings/[^/]+/?$}, false]
369
+ ]
370
+ )
371
+ .with_bindings(
372
+ uri_method: :get,
373
+ uri_template: "/v3/{name}",
374
+ matches: [
375
+ ["name", %r{^folders/[^/]+/locations/[^/]+/policyBindings/[^/]+/?$}, false]
376
+ ]
377
+ )
378
+ .with_bindings(
379
+ uri_method: :get,
380
+ uri_template: "/v3/{name}",
381
+ matches: [
382
+ ["name", %r{^organizations/[^/]+/locations/[^/]+/policyBindings/[^/]+/?$}, false]
383
+ ]
384
+ )
385
+ transcoder.transcode request_pb
386
+ end
387
+
388
+ ##
389
+ # @private
390
+ #
391
+ # GRPC transcoding helper method for the update_policy_binding REST call
392
+ #
393
+ # @param request_pb [::Google::Iam::V3::UpdatePolicyBindingRequest]
394
+ # A request object representing the call parameters. Required.
395
+ # @return [Array(String, [String, nil], Hash{String => String})]
396
+ # Uri, Body, Query string parameters
397
+ def self.transcode_update_policy_binding_request request_pb
398
+ transcoder = Gapic::Rest::GrpcTranscoder.new
399
+ .with_bindings(
400
+ uri_method: :patch,
401
+ uri_template: "/v3/{policy_binding.name}",
402
+ body: "policy_binding",
403
+ matches: [
404
+ ["policy_binding.name", %r{^projects/[^/]+/locations/[^/]+/policyBindings/[^/]+/?$}, false]
405
+ ]
406
+ )
407
+ .with_bindings(
408
+ uri_method: :patch,
409
+ uri_template: "/v3/{policy_binding.name}",
410
+ body: "policy_binding",
411
+ matches: [
412
+ ["policy_binding.name", %r{^folders/[^/]+/locations/[^/]+/policyBindings/[^/]+/?$}, false]
413
+ ]
414
+ )
415
+ .with_bindings(
416
+ uri_method: :patch,
417
+ uri_template: "/v3/{policy_binding.name}",
418
+ body: "policy_binding",
419
+ matches: [
420
+ ["policy_binding.name", %r{^organizations/[^/]+/locations/[^/]+/policyBindings/[^/]+/?$}, false]
421
+ ]
422
+ )
423
+ transcoder.transcode request_pb
424
+ end
425
+
426
+ ##
427
+ # @private
428
+ #
429
+ # GRPC transcoding helper method for the delete_policy_binding REST call
430
+ #
431
+ # @param request_pb [::Google::Iam::V3::DeletePolicyBindingRequest]
432
+ # A request object representing the call parameters. Required.
433
+ # @return [Array(String, [String, nil], Hash{String => String})]
434
+ # Uri, Body, Query string parameters
435
+ def self.transcode_delete_policy_binding_request request_pb
436
+ transcoder = Gapic::Rest::GrpcTranscoder.new
437
+ .with_bindings(
438
+ uri_method: :delete,
439
+ uri_template: "/v3/{name}",
440
+ matches: [
441
+ ["name", %r{^projects/[^/]+/locations/[^/]+/policyBindings/[^/]+/?$}, false]
442
+ ]
443
+ )
444
+ .with_bindings(
445
+ uri_method: :delete,
446
+ uri_template: "/v3/{name}",
447
+ matches: [
448
+ ["name", %r{^folders/[^/]+/locations/[^/]+/policyBindings/[^/]+/?$}, false]
449
+ ]
450
+ )
451
+ .with_bindings(
452
+ uri_method: :delete,
453
+ uri_template: "/v3/{name}",
454
+ matches: [
455
+ ["name", %r{^organizations/[^/]+/locations/[^/]+/policyBindings/[^/]+/?$}, false]
456
+ ]
457
+ )
458
+ transcoder.transcode request_pb
459
+ end
460
+
461
+ ##
462
+ # @private
463
+ #
464
+ # GRPC transcoding helper method for the list_policy_bindings REST call
465
+ #
466
+ # @param request_pb [::Google::Iam::V3::ListPolicyBindingsRequest]
467
+ # A request object representing the call parameters. Required.
468
+ # @return [Array(String, [String, nil], Hash{String => String})]
469
+ # Uri, Body, Query string parameters
470
+ def self.transcode_list_policy_bindings_request request_pb
471
+ transcoder = Gapic::Rest::GrpcTranscoder.new
472
+ .with_bindings(
473
+ uri_method: :get,
474
+ uri_template: "/v3/{parent}/policyBindings",
475
+ matches: [
476
+ ["parent", %r{^projects/[^/]+/locations/[^/]+/?$}, false]
477
+ ]
478
+ )
479
+ .with_bindings(
480
+ uri_method: :get,
481
+ uri_template: "/v3/{parent}/policyBindings",
482
+ matches: [
483
+ ["parent", %r{^folders/[^/]+/locations/[^/]+/?$}, false]
484
+ ]
485
+ )
486
+ .with_bindings(
487
+ uri_method: :get,
488
+ uri_template: "/v3/{parent}/policyBindings",
489
+ matches: [
490
+ ["parent", %r{^organizations/[^/]+/locations/[^/]+/?$}, false]
491
+ ]
492
+ )
493
+ transcoder.transcode request_pb
494
+ end
495
+
496
+ ##
497
+ # @private
498
+ #
499
+ # GRPC transcoding helper method for the search_target_policy_bindings REST call
500
+ #
501
+ # @param request_pb [::Google::Iam::V3::SearchTargetPolicyBindingsRequest]
502
+ # A request object representing the call parameters. Required.
503
+ # @return [Array(String, [String, nil], Hash{String => String})]
504
+ # Uri, Body, Query string parameters
505
+ def self.transcode_search_target_policy_bindings_request request_pb
506
+ transcoder = Gapic::Rest::GrpcTranscoder.new
507
+ .with_bindings(
508
+ uri_method: :get,
509
+ uri_template: "/v3/{parent}/policyBindings:searchTargetPolicyBindings",
510
+ matches: [
511
+ ["parent", %r{^projects/[^/]+/locations/[^/]+/?$}, false]
512
+ ]
513
+ )
514
+ .with_bindings(
515
+ uri_method: :get,
516
+ uri_template: "/v3/{parent}/policyBindings:searchTargetPolicyBindings",
517
+ matches: [
518
+ ["parent", %r{^folders/[^/]+/locations/[^/]+/?$}, false]
519
+ ]
520
+ )
521
+ .with_bindings(
522
+ uri_method: :get,
523
+ uri_template: "/v3/{parent}/policyBindings:searchTargetPolicyBindings",
524
+ matches: [
525
+ ["parent", %r{^organizations/[^/]+/locations/[^/]+/?$}, false]
526
+ ]
527
+ )
528
+ transcoder.transcode request_pb
529
+ end
530
+ end
531
+ end
532
+ end
533
+ end
534
+ end
535
+ end
@@ -0,0 +1,52 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2025 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "gapic/rest"
20
+ require "gapic/config"
21
+ require "gapic/config/method"
22
+
23
+ require "google/iam/v3/version"
24
+
25
+ require "google/iam/v3/policy_bindings/credentials"
26
+ require "google/iam/v3/policy_bindings/paths"
27
+ require "google/iam/v3/policy_bindings/rest/operations"
28
+ require "google/iam/v3/policy_bindings/rest/client"
29
+
30
+ module Google
31
+ module Iam
32
+ module V3
33
+ ##
34
+ # An interface for managing Identity and Access Management (IAM) policy
35
+ # bindings.
36
+ #
37
+ # To load this service and instantiate a REST client:
38
+ #
39
+ # require "google/iam/v3/policy_bindings/rest"
40
+ # client = ::Google::Iam::V3::PolicyBindings::Rest::Client.new
41
+ #
42
+ module PolicyBindings
43
+ # Client for the REST transport
44
+ module Rest
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
50
+
51
+ helper_path = ::File.join __dir__, "rest", "helpers.rb"
52
+ require "google/iam/v3/policy_bindings/rest/helpers" if ::File.file? helper_path
@@ -0,0 +1,55 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2025 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "gapic/common"
20
+ require "gapic/config"
21
+ require "gapic/config/method"
22
+
23
+ require "google/iam/v3/version"
24
+
25
+ require "google/iam/v3/policy_bindings/credentials"
26
+ require "google/iam/v3/policy_bindings/paths"
27
+ require "google/iam/v3/policy_bindings/operations"
28
+ require "google/iam/v3/policy_bindings/client"
29
+ require "google/iam/v3/policy_bindings/rest"
30
+
31
+ module Google
32
+ module Iam
33
+ module V3
34
+ ##
35
+ # An interface for managing Identity and Access Management (IAM) policy
36
+ # bindings.
37
+ #
38
+ # @example Load this service and instantiate a gRPC client
39
+ #
40
+ # require "google/iam/v3/policy_bindings"
41
+ # client = ::Google::Iam::V3::PolicyBindings::Client.new
42
+ #
43
+ # @example Load this service and instantiate a REST client
44
+ #
45
+ # require "google/iam/v3/policy_bindings/rest"
46
+ # client = ::Google::Iam::V3::PolicyBindings::Rest::Client.new
47
+ #
48
+ module PolicyBindings
49
+ end
50
+ end
51
+ end
52
+ end
53
+
54
+ helper_path = ::File.join __dir__, "policy_bindings", "helpers.rb"
55
+ require "google/iam/v3/policy_bindings/helpers" if ::File.file? helper_path