google-cloud-billing-v1 0.10.0 → 0.12.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,639 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "google/cloud/billing/v1/cloud_billing_pb"
20
+
21
+ module Google
22
+ module Cloud
23
+ module Billing
24
+ module V1
25
+ module CloudBilling
26
+ module Rest
27
+ ##
28
+ # REST service stub for the CloudBilling service.
29
+ # Service stub contains baseline method implementations
30
+ # including transcoding, making the REST call, and deserialing the response.
31
+ #
32
+ class ServiceStub
33
+ def initialize endpoint:, credentials:
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, credentials: credentials,
39
+ numeric_enums: true,
40
+ raise_faraday_errors: false
41
+ end
42
+
43
+ ##
44
+ # Baseline implementation for the get_billing_account REST call
45
+ #
46
+ # @param request_pb [::Google::Cloud::Billing::V1::GetBillingAccountRequest]
47
+ # A request object representing the call parameters. Required.
48
+ # @param options [::Gapic::CallOptions]
49
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
50
+ #
51
+ # @yield [result, operation] Access the result along with the TransportOperation object
52
+ # @yieldparam result [::Google::Cloud::Billing::V1::BillingAccount]
53
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
54
+ #
55
+ # @return [::Google::Cloud::Billing::V1::BillingAccount]
56
+ # A result object deserialized from the server's reply
57
+ def get_billing_account request_pb, options = nil
58
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
59
+
60
+ verb, uri, query_string_params, body = ServiceStub.transcode_get_billing_account_request request_pb
61
+ query_string_params = if query_string_params.any?
62
+ query_string_params.to_h { |p| p.split "=", 2 }
63
+ else
64
+ {}
65
+ end
66
+
67
+ response = @client_stub.make_http_request(
68
+ verb,
69
+ uri: uri,
70
+ body: body || "",
71
+ params: query_string_params,
72
+ options: options
73
+ )
74
+ operation = ::Gapic::Rest::TransportOperation.new response
75
+ result = ::Google::Cloud::Billing::V1::BillingAccount.decode_json response.body, ignore_unknown_fields: true
76
+
77
+ yield result, operation if block_given?
78
+ result
79
+ end
80
+
81
+ ##
82
+ # Baseline implementation for the list_billing_accounts REST call
83
+ #
84
+ # @param request_pb [::Google::Cloud::Billing::V1::ListBillingAccountsRequest]
85
+ # A request object representing the call parameters. Required.
86
+ # @param options [::Gapic::CallOptions]
87
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
88
+ #
89
+ # @yield [result, operation] Access the result along with the TransportOperation object
90
+ # @yieldparam result [::Google::Cloud::Billing::V1::ListBillingAccountsResponse]
91
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
92
+ #
93
+ # @return [::Google::Cloud::Billing::V1::ListBillingAccountsResponse]
94
+ # A result object deserialized from the server's reply
95
+ def list_billing_accounts request_pb, options = nil
96
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
97
+
98
+ verb, uri, query_string_params, body = ServiceStub.transcode_list_billing_accounts_request request_pb
99
+ query_string_params = if query_string_params.any?
100
+ query_string_params.to_h { |p| p.split "=", 2 }
101
+ else
102
+ {}
103
+ end
104
+
105
+ response = @client_stub.make_http_request(
106
+ verb,
107
+ uri: uri,
108
+ body: body || "",
109
+ params: query_string_params,
110
+ options: options
111
+ )
112
+ operation = ::Gapic::Rest::TransportOperation.new response
113
+ result = ::Google::Cloud::Billing::V1::ListBillingAccountsResponse.decode_json response.body, ignore_unknown_fields: true
114
+
115
+ yield result, operation if block_given?
116
+ result
117
+ end
118
+
119
+ ##
120
+ # Baseline implementation for the update_billing_account REST call
121
+ #
122
+ # @param request_pb [::Google::Cloud::Billing::V1::UpdateBillingAccountRequest]
123
+ # A request object representing the call parameters. Required.
124
+ # @param options [::Gapic::CallOptions]
125
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
126
+ #
127
+ # @yield [result, operation] Access the result along with the TransportOperation object
128
+ # @yieldparam result [::Google::Cloud::Billing::V1::BillingAccount]
129
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
130
+ #
131
+ # @return [::Google::Cloud::Billing::V1::BillingAccount]
132
+ # A result object deserialized from the server's reply
133
+ def update_billing_account request_pb, options = nil
134
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
135
+
136
+ verb, uri, query_string_params, body = ServiceStub.transcode_update_billing_account_request request_pb
137
+ query_string_params = if query_string_params.any?
138
+ query_string_params.to_h { |p| p.split "=", 2 }
139
+ else
140
+ {}
141
+ end
142
+
143
+ response = @client_stub.make_http_request(
144
+ verb,
145
+ uri: uri,
146
+ body: body || "",
147
+ params: query_string_params,
148
+ options: options
149
+ )
150
+ operation = ::Gapic::Rest::TransportOperation.new response
151
+ result = ::Google::Cloud::Billing::V1::BillingAccount.decode_json response.body, ignore_unknown_fields: true
152
+
153
+ yield result, operation if block_given?
154
+ result
155
+ end
156
+
157
+ ##
158
+ # Baseline implementation for the create_billing_account REST call
159
+ #
160
+ # @param request_pb [::Google::Cloud::Billing::V1::CreateBillingAccountRequest]
161
+ # A request object representing the call parameters. Required.
162
+ # @param options [::Gapic::CallOptions]
163
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
164
+ #
165
+ # @yield [result, operation] Access the result along with the TransportOperation object
166
+ # @yieldparam result [::Google::Cloud::Billing::V1::BillingAccount]
167
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
168
+ #
169
+ # @return [::Google::Cloud::Billing::V1::BillingAccount]
170
+ # A result object deserialized from the server's reply
171
+ def create_billing_account request_pb, options = nil
172
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
173
+
174
+ verb, uri, query_string_params, body = ServiceStub.transcode_create_billing_account_request request_pb
175
+ query_string_params = if query_string_params.any?
176
+ query_string_params.to_h { |p| p.split "=", 2 }
177
+ else
178
+ {}
179
+ end
180
+
181
+ response = @client_stub.make_http_request(
182
+ verb,
183
+ uri: uri,
184
+ body: body || "",
185
+ params: query_string_params,
186
+ options: options
187
+ )
188
+ operation = ::Gapic::Rest::TransportOperation.new response
189
+ result = ::Google::Cloud::Billing::V1::BillingAccount.decode_json response.body, ignore_unknown_fields: true
190
+
191
+ yield result, operation if block_given?
192
+ result
193
+ end
194
+
195
+ ##
196
+ # Baseline implementation for the list_project_billing_info REST call
197
+ #
198
+ # @param request_pb [::Google::Cloud::Billing::V1::ListProjectBillingInfoRequest]
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::Cloud::Billing::V1::ListProjectBillingInfoResponse]
205
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
206
+ #
207
+ # @return [::Google::Cloud::Billing::V1::ListProjectBillingInfoResponse]
208
+ # A result object deserialized from the server's reply
209
+ def list_project_billing_info 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_list_project_billing_info_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
+ options: options
225
+ )
226
+ operation = ::Gapic::Rest::TransportOperation.new response
227
+ result = ::Google::Cloud::Billing::V1::ListProjectBillingInfoResponse.decode_json response.body, ignore_unknown_fields: true
228
+
229
+ yield result, operation if block_given?
230
+ result
231
+ end
232
+
233
+ ##
234
+ # Baseline implementation for the get_project_billing_info REST call
235
+ #
236
+ # @param request_pb [::Google::Cloud::Billing::V1::GetProjectBillingInfoRequest]
237
+ # A request object representing the call parameters. Required.
238
+ # @param options [::Gapic::CallOptions]
239
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
240
+ #
241
+ # @yield [result, operation] Access the result along with the TransportOperation object
242
+ # @yieldparam result [::Google::Cloud::Billing::V1::ProjectBillingInfo]
243
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
244
+ #
245
+ # @return [::Google::Cloud::Billing::V1::ProjectBillingInfo]
246
+ # A result object deserialized from the server's reply
247
+ def get_project_billing_info request_pb, options = nil
248
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
249
+
250
+ verb, uri, query_string_params, body = ServiceStub.transcode_get_project_billing_info_request request_pb
251
+ query_string_params = if query_string_params.any?
252
+ query_string_params.to_h { |p| p.split "=", 2 }
253
+ else
254
+ {}
255
+ end
256
+
257
+ response = @client_stub.make_http_request(
258
+ verb,
259
+ uri: uri,
260
+ body: body || "",
261
+ params: query_string_params,
262
+ options: options
263
+ )
264
+ operation = ::Gapic::Rest::TransportOperation.new response
265
+ result = ::Google::Cloud::Billing::V1::ProjectBillingInfo.decode_json response.body, ignore_unknown_fields: true
266
+
267
+ yield result, operation if block_given?
268
+ result
269
+ end
270
+
271
+ ##
272
+ # Baseline implementation for the update_project_billing_info REST call
273
+ #
274
+ # @param request_pb [::Google::Cloud::Billing::V1::UpdateProjectBillingInfoRequest]
275
+ # A request object representing the call parameters. Required.
276
+ # @param options [::Gapic::CallOptions]
277
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
278
+ #
279
+ # @yield [result, operation] Access the result along with the TransportOperation object
280
+ # @yieldparam result [::Google::Cloud::Billing::V1::ProjectBillingInfo]
281
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
282
+ #
283
+ # @return [::Google::Cloud::Billing::V1::ProjectBillingInfo]
284
+ # A result object deserialized from the server's reply
285
+ def update_project_billing_info request_pb, options = nil
286
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
287
+
288
+ verb, uri, query_string_params, body = ServiceStub.transcode_update_project_billing_info_request request_pb
289
+ query_string_params = if query_string_params.any?
290
+ query_string_params.to_h { |p| p.split "=", 2 }
291
+ else
292
+ {}
293
+ end
294
+
295
+ response = @client_stub.make_http_request(
296
+ verb,
297
+ uri: uri,
298
+ body: body || "",
299
+ params: query_string_params,
300
+ options: options
301
+ )
302
+ operation = ::Gapic::Rest::TransportOperation.new response
303
+ result = ::Google::Cloud::Billing::V1::ProjectBillingInfo.decode_json response.body, ignore_unknown_fields: true
304
+
305
+ yield result, operation if block_given?
306
+ result
307
+ end
308
+
309
+ ##
310
+ # Baseline implementation for the get_iam_policy REST call
311
+ #
312
+ # @param request_pb [::Google::Iam::V1::GetIamPolicyRequest]
313
+ # A request object representing the call parameters. Required.
314
+ # @param options [::Gapic::CallOptions]
315
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
316
+ #
317
+ # @yield [result, operation] Access the result along with the TransportOperation object
318
+ # @yieldparam result [::Google::Iam::V1::Policy]
319
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
320
+ #
321
+ # @return [::Google::Iam::V1::Policy]
322
+ # A result object deserialized from the server's reply
323
+ def get_iam_policy request_pb, options = nil
324
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
325
+
326
+ verb, uri, query_string_params, body = ServiceStub.transcode_get_iam_policy_request request_pb
327
+ query_string_params = if query_string_params.any?
328
+ query_string_params.to_h { |p| p.split "=", 2 }
329
+ else
330
+ {}
331
+ end
332
+
333
+ response = @client_stub.make_http_request(
334
+ verb,
335
+ uri: uri,
336
+ body: body || "",
337
+ params: query_string_params,
338
+ options: options
339
+ )
340
+ operation = ::Gapic::Rest::TransportOperation.new response
341
+ result = ::Google::Iam::V1::Policy.decode_json response.body, ignore_unknown_fields: true
342
+
343
+ yield result, operation if block_given?
344
+ result
345
+ end
346
+
347
+ ##
348
+ # Baseline implementation for the set_iam_policy REST call
349
+ #
350
+ # @param request_pb [::Google::Iam::V1::SetIamPolicyRequest]
351
+ # A request object representing the call parameters. Required.
352
+ # @param options [::Gapic::CallOptions]
353
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
354
+ #
355
+ # @yield [result, operation] Access the result along with the TransportOperation object
356
+ # @yieldparam result [::Google::Iam::V1::Policy]
357
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
358
+ #
359
+ # @return [::Google::Iam::V1::Policy]
360
+ # A result object deserialized from the server's reply
361
+ def set_iam_policy request_pb, options = nil
362
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
363
+
364
+ verb, uri, query_string_params, body = ServiceStub.transcode_set_iam_policy_request request_pb
365
+ query_string_params = if query_string_params.any?
366
+ query_string_params.to_h { |p| p.split "=", 2 }
367
+ else
368
+ {}
369
+ end
370
+
371
+ response = @client_stub.make_http_request(
372
+ verb,
373
+ uri: uri,
374
+ body: body || "",
375
+ params: query_string_params,
376
+ options: options
377
+ )
378
+ operation = ::Gapic::Rest::TransportOperation.new response
379
+ result = ::Google::Iam::V1::Policy.decode_json response.body, ignore_unknown_fields: true
380
+
381
+ yield result, operation if block_given?
382
+ result
383
+ end
384
+
385
+ ##
386
+ # Baseline implementation for the test_iam_permissions REST call
387
+ #
388
+ # @param request_pb [::Google::Iam::V1::TestIamPermissionsRequest]
389
+ # A request object representing the call parameters. Required.
390
+ # @param options [::Gapic::CallOptions]
391
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
392
+ #
393
+ # @yield [result, operation] Access the result along with the TransportOperation object
394
+ # @yieldparam result [::Google::Iam::V1::TestIamPermissionsResponse]
395
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
396
+ #
397
+ # @return [::Google::Iam::V1::TestIamPermissionsResponse]
398
+ # A result object deserialized from the server's reply
399
+ def test_iam_permissions request_pb, options = nil
400
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
401
+
402
+ verb, uri, query_string_params, body = ServiceStub.transcode_test_iam_permissions_request request_pb
403
+ query_string_params = if query_string_params.any?
404
+ query_string_params.to_h { |p| p.split "=", 2 }
405
+ else
406
+ {}
407
+ end
408
+
409
+ response = @client_stub.make_http_request(
410
+ verb,
411
+ uri: uri,
412
+ body: body || "",
413
+ params: query_string_params,
414
+ options: options
415
+ )
416
+ operation = ::Gapic::Rest::TransportOperation.new response
417
+ result = ::Google::Iam::V1::TestIamPermissionsResponse.decode_json response.body, ignore_unknown_fields: true
418
+
419
+ yield result, operation if block_given?
420
+ result
421
+ end
422
+
423
+ ##
424
+ # @private
425
+ #
426
+ # GRPC transcoding helper method for the get_billing_account REST call
427
+ #
428
+ # @param request_pb [::Google::Cloud::Billing::V1::GetBillingAccountRequest]
429
+ # A request object representing the call parameters. Required.
430
+ # @return [Array(String, [String, nil], Hash{String => String})]
431
+ # Uri, Body, Query string parameters
432
+ def self.transcode_get_billing_account_request request_pb
433
+ transcoder = Gapic::Rest::GrpcTranscoder.new
434
+ .with_bindings(
435
+ uri_method: :get,
436
+ uri_template: "/v1/{name}",
437
+ matches: [
438
+ ["name", %r{^billingAccounts/[^/]+/?$}, false]
439
+ ]
440
+ )
441
+ transcoder.transcode request_pb
442
+ end
443
+
444
+ ##
445
+ # @private
446
+ #
447
+ # GRPC transcoding helper method for the list_billing_accounts REST call
448
+ #
449
+ # @param request_pb [::Google::Cloud::Billing::V1::ListBillingAccountsRequest]
450
+ # A request object representing the call parameters. Required.
451
+ # @return [Array(String, [String, nil], Hash{String => String})]
452
+ # Uri, Body, Query string parameters
453
+ def self.transcode_list_billing_accounts_request request_pb
454
+ transcoder = Gapic::Rest::GrpcTranscoder.new
455
+ .with_bindings(
456
+ uri_method: :get,
457
+ uri_template: "/v1/billingAccounts",
458
+ matches: []
459
+ )
460
+ transcoder.transcode request_pb
461
+ end
462
+
463
+ ##
464
+ # @private
465
+ #
466
+ # GRPC transcoding helper method for the update_billing_account REST call
467
+ #
468
+ # @param request_pb [::Google::Cloud::Billing::V1::UpdateBillingAccountRequest]
469
+ # A request object representing the call parameters. Required.
470
+ # @return [Array(String, [String, nil], Hash{String => String})]
471
+ # Uri, Body, Query string parameters
472
+ def self.transcode_update_billing_account_request request_pb
473
+ transcoder = Gapic::Rest::GrpcTranscoder.new
474
+ .with_bindings(
475
+ uri_method: :patch,
476
+ uri_template: "/v1/{name}",
477
+ body: "account",
478
+ matches: [
479
+ ["name", %r{^billingAccounts/[^/]+/?$}, false]
480
+ ]
481
+ )
482
+ transcoder.transcode request_pb
483
+ end
484
+
485
+ ##
486
+ # @private
487
+ #
488
+ # GRPC transcoding helper method for the create_billing_account REST call
489
+ #
490
+ # @param request_pb [::Google::Cloud::Billing::V1::CreateBillingAccountRequest]
491
+ # A request object representing the call parameters. Required.
492
+ # @return [Array(String, [String, nil], Hash{String => String})]
493
+ # Uri, Body, Query string parameters
494
+ def self.transcode_create_billing_account_request request_pb
495
+ transcoder = Gapic::Rest::GrpcTranscoder.new
496
+ .with_bindings(
497
+ uri_method: :post,
498
+ uri_template: "/v1/billingAccounts",
499
+ body: "billing_account",
500
+ matches: []
501
+ )
502
+ transcoder.transcode request_pb
503
+ end
504
+
505
+ ##
506
+ # @private
507
+ #
508
+ # GRPC transcoding helper method for the list_project_billing_info REST call
509
+ #
510
+ # @param request_pb [::Google::Cloud::Billing::V1::ListProjectBillingInfoRequest]
511
+ # A request object representing the call parameters. Required.
512
+ # @return [Array(String, [String, nil], Hash{String => String})]
513
+ # Uri, Body, Query string parameters
514
+ def self.transcode_list_project_billing_info_request request_pb
515
+ transcoder = Gapic::Rest::GrpcTranscoder.new
516
+ .with_bindings(
517
+ uri_method: :get,
518
+ uri_template: "/v1/{name}/projects",
519
+ matches: [
520
+ ["name", %r{^billingAccounts/[^/]+/?$}, false]
521
+ ]
522
+ )
523
+ transcoder.transcode request_pb
524
+ end
525
+
526
+ ##
527
+ # @private
528
+ #
529
+ # GRPC transcoding helper method for the get_project_billing_info REST call
530
+ #
531
+ # @param request_pb [::Google::Cloud::Billing::V1::GetProjectBillingInfoRequest]
532
+ # A request object representing the call parameters. Required.
533
+ # @return [Array(String, [String, nil], Hash{String => String})]
534
+ # Uri, Body, Query string parameters
535
+ def self.transcode_get_project_billing_info_request request_pb
536
+ transcoder = Gapic::Rest::GrpcTranscoder.new
537
+ .with_bindings(
538
+ uri_method: :get,
539
+ uri_template: "/v1/{name}/billingInfo",
540
+ matches: [
541
+ ["name", %r{^projects/[^/]+/?$}, false]
542
+ ]
543
+ )
544
+ transcoder.transcode request_pb
545
+ end
546
+
547
+ ##
548
+ # @private
549
+ #
550
+ # GRPC transcoding helper method for the update_project_billing_info REST call
551
+ #
552
+ # @param request_pb [::Google::Cloud::Billing::V1::UpdateProjectBillingInfoRequest]
553
+ # A request object representing the call parameters. Required.
554
+ # @return [Array(String, [String, nil], Hash{String => String})]
555
+ # Uri, Body, Query string parameters
556
+ def self.transcode_update_project_billing_info_request request_pb
557
+ transcoder = Gapic::Rest::GrpcTranscoder.new
558
+ .with_bindings(
559
+ uri_method: :put,
560
+ uri_template: "/v1/{name}/billingInfo",
561
+ body: "project_billing_info",
562
+ matches: [
563
+ ["name", %r{^projects/[^/]+/?$}, false]
564
+ ]
565
+ )
566
+ transcoder.transcode request_pb
567
+ end
568
+
569
+ ##
570
+ # @private
571
+ #
572
+ # GRPC transcoding helper method for the get_iam_policy REST call
573
+ #
574
+ # @param request_pb [::Google::Iam::V1::GetIamPolicyRequest]
575
+ # A request object representing the call parameters. Required.
576
+ # @return [Array(String, [String, nil], Hash{String => String})]
577
+ # Uri, Body, Query string parameters
578
+ def self.transcode_get_iam_policy_request request_pb
579
+ transcoder = Gapic::Rest::GrpcTranscoder.new
580
+ .with_bindings(
581
+ uri_method: :get,
582
+ uri_template: "/v1/{resource}:getIamPolicy",
583
+ matches: [
584
+ ["resource", %r{^billingAccounts/[^/]+/?$}, false]
585
+ ]
586
+ )
587
+ transcoder.transcode request_pb
588
+ end
589
+
590
+ ##
591
+ # @private
592
+ #
593
+ # GRPC transcoding helper method for the set_iam_policy REST call
594
+ #
595
+ # @param request_pb [::Google::Iam::V1::SetIamPolicyRequest]
596
+ # A request object representing the call parameters. Required.
597
+ # @return [Array(String, [String, nil], Hash{String => String})]
598
+ # Uri, Body, Query string parameters
599
+ def self.transcode_set_iam_policy_request request_pb
600
+ transcoder = Gapic::Rest::GrpcTranscoder.new
601
+ .with_bindings(
602
+ uri_method: :post,
603
+ uri_template: "/v1/{resource}:setIamPolicy",
604
+ body: "*",
605
+ matches: [
606
+ ["resource", %r{^billingAccounts/[^/]+/?$}, false]
607
+ ]
608
+ )
609
+ transcoder.transcode request_pb
610
+ end
611
+
612
+ ##
613
+ # @private
614
+ #
615
+ # GRPC transcoding helper method for the test_iam_permissions REST call
616
+ #
617
+ # @param request_pb [::Google::Iam::V1::TestIamPermissionsRequest]
618
+ # A request object representing the call parameters. Required.
619
+ # @return [Array(String, [String, nil], Hash{String => String})]
620
+ # Uri, Body, Query string parameters
621
+ def self.transcode_test_iam_permissions_request request_pb
622
+ transcoder = Gapic::Rest::GrpcTranscoder.new
623
+ .with_bindings(
624
+ uri_method: :post,
625
+ uri_template: "/v1/{resource}:testIamPermissions",
626
+ body: "*",
627
+ matches: [
628
+ ["resource", %r{^billingAccounts/[^/]+/?$}, false]
629
+ ]
630
+ )
631
+ transcoder.transcode request_pb
632
+ end
633
+ end
634
+ end
635
+ end
636
+ end
637
+ end
638
+ end
639
+ end