google-apis-gkebackup_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.
@@ -0,0 +1,1961 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/core/base_service'
16
+ require 'google/apis/core/json_representation'
17
+ require 'google/apis/core/hashable'
18
+ require 'google/apis/errors'
19
+
20
+ module Google
21
+ module Apis
22
+ module GkebackupV1
23
+ # Backup for GKE API
24
+ #
25
+ # Backup for GKE is a managed Kubernetes workload backup and restore service for
26
+ # GKE clusters.
27
+ #
28
+ # @example
29
+ # require 'google/apis/gkebackup_v1'
30
+ #
31
+ # Gkebackup = Google::Apis::GkebackupV1 # Alias the module
32
+ # service = Gkebackup::BackupforGKEService.new
33
+ #
34
+ # @see https://cloud.google.com/kubernetes-engine/docs/add-on/backup-for-gke
35
+ class BackupforGKEService < Google::Apis::Core::BaseService
36
+ # @return [String]
37
+ # API key. Your API key identifies your project and provides you with API access,
38
+ # quota, and reports. Required unless you provide an OAuth 2.0 token.
39
+ attr_accessor :key
40
+
41
+ # @return [String]
42
+ # Available to use for quota purposes for server-side applications. Can be any
43
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
44
+ attr_accessor :quota_user
45
+
46
+ def initialize
47
+ super('https://gkebackup.googleapis.com/', '',
48
+ client_name: 'google-apis-gkebackup_v1',
49
+ client_version: Google::Apis::GkebackupV1::GEM_VERSION)
50
+ @batch_path = 'batch'
51
+ end
52
+
53
+ # Deletes a long-running operation. This method indicates that the client is no
54
+ # longer interested in the operation result. It does not cancel the operation.
55
+ # If the server doesn't support this method, it returns `google.rpc.Code.
56
+ # UNIMPLEMENTED`.
57
+ # @param [String] name
58
+ # The name of the operation resource to be deleted.
59
+ # @param [String] fields
60
+ # Selector specifying which fields to include in a partial response.
61
+ # @param [String] quota_user
62
+ # Available to use for quota purposes for server-side applications. Can be any
63
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
64
+ # @param [Google::Apis::RequestOptions] options
65
+ # Request-specific options
66
+ #
67
+ # @yield [result, err] Result & error if block supplied
68
+ # @yieldparam result [Google::Apis::GkebackupV1::Empty] parsed result object
69
+ # @yieldparam err [StandardError] error object if request failed
70
+ #
71
+ # @return [Google::Apis::GkebackupV1::Empty]
72
+ #
73
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
74
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
75
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
76
+ def delete_project_location_operations(name, fields: nil, quota_user: nil, options: nil, &block)
77
+ command = make_simple_command(:delete, 'v1/{+name}/operations', options)
78
+ command.response_representation = Google::Apis::GkebackupV1::Empty::Representation
79
+ command.response_class = Google::Apis::GkebackupV1::Empty
80
+ command.params['name'] = name unless name.nil?
81
+ command.query['fields'] = fields unless fields.nil?
82
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
83
+ execute_or_queue_command(command, &block)
84
+ end
85
+
86
+ # Gets information about a location.
87
+ # @param [String] name
88
+ # Resource name for the location.
89
+ # @param [String] fields
90
+ # Selector specifying which fields to include in a partial response.
91
+ # @param [String] quota_user
92
+ # Available to use for quota purposes for server-side applications. Can be any
93
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
94
+ # @param [Google::Apis::RequestOptions] options
95
+ # Request-specific options
96
+ #
97
+ # @yield [result, err] Result & error if block supplied
98
+ # @yieldparam result [Google::Apis::GkebackupV1::Location] parsed result object
99
+ # @yieldparam err [StandardError] error object if request failed
100
+ #
101
+ # @return [Google::Apis::GkebackupV1::Location]
102
+ #
103
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
104
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
105
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
106
+ def get_project_location(name, fields: nil, quota_user: nil, options: nil, &block)
107
+ command = make_simple_command(:get, 'v1/{+name}', options)
108
+ command.response_representation = Google::Apis::GkebackupV1::Location::Representation
109
+ command.response_class = Google::Apis::GkebackupV1::Location
110
+ command.params['name'] = name unless name.nil?
111
+ command.query['fields'] = fields unless fields.nil?
112
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
113
+ execute_or_queue_command(command, &block)
114
+ end
115
+
116
+ # Lists information about the supported locations for this service.
117
+ # @param [String] name
118
+ # The resource that owns the locations collection, if applicable.
119
+ # @param [String] filter
120
+ # A filter to narrow down results to a preferred subset. The filtering language
121
+ # accepts strings like "displayName=tokyo", and is documented in more detail in [
122
+ # AIP-160](https://google.aip.dev/160).
123
+ # @param [Fixnum] page_size
124
+ # The maximum number of results to return. If not set, the service selects a
125
+ # default.
126
+ # @param [String] page_token
127
+ # A page token received from the `next_page_token` field in the response. Send
128
+ # that page token to receive the subsequent page.
129
+ # @param [String] fields
130
+ # Selector specifying which fields to include in a partial response.
131
+ # @param [String] quota_user
132
+ # Available to use for quota purposes for server-side applications. Can be any
133
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
134
+ # @param [Google::Apis::RequestOptions] options
135
+ # Request-specific options
136
+ #
137
+ # @yield [result, err] Result & error if block supplied
138
+ # @yieldparam result [Google::Apis::GkebackupV1::ListLocationsResponse] parsed result object
139
+ # @yieldparam err [StandardError] error object if request failed
140
+ #
141
+ # @return [Google::Apis::GkebackupV1::ListLocationsResponse]
142
+ #
143
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
144
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
145
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
146
+ def list_project_locations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
147
+ command = make_simple_command(:get, 'v1/{+name}/locations', options)
148
+ command.response_representation = Google::Apis::GkebackupV1::ListLocationsResponse::Representation
149
+ command.response_class = Google::Apis::GkebackupV1::ListLocationsResponse
150
+ command.params['name'] = name unless name.nil?
151
+ command.query['filter'] = filter unless filter.nil?
152
+ command.query['pageSize'] = page_size unless page_size.nil?
153
+ command.query['pageToken'] = page_token unless page_token.nil?
154
+ command.query['fields'] = fields unless fields.nil?
155
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
156
+ execute_or_queue_command(command, &block)
157
+ end
158
+
159
+ # Creates a new BackupPlan in a given location.
160
+ # @param [String] parent
161
+ # Required. The location within which to create the BackupPlan. Format: projects/
162
+ # `project`/locations/`location`
163
+ # @param [Google::Apis::GkebackupV1::BackupPlan] backup_plan_object
164
+ # @param [String] backup_plan_id
165
+ # Required. The client-provided short name for the BackupPlan resource. This
166
+ # name must: a. be between 1 and 63 characters long (inclusive) b. consist of
167
+ # only lower-case ASCII letters, numbers, and dashes c. start with a lower-case
168
+ # letter d. end with a lower-case letter or number e. be unique within the set
169
+ # of BackupPlans in this location
170
+ # @param [String] fields
171
+ # Selector specifying which fields to include in a partial response.
172
+ # @param [String] quota_user
173
+ # Available to use for quota purposes for server-side applications. Can be any
174
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
175
+ # @param [Google::Apis::RequestOptions] options
176
+ # Request-specific options
177
+ #
178
+ # @yield [result, err] Result & error if block supplied
179
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningOperation] parsed result object
180
+ # @yieldparam err [StandardError] error object if request failed
181
+ #
182
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningOperation]
183
+ #
184
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
185
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
186
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
187
+ def create_project_location_backup_plan(parent, backup_plan_object = nil, backup_plan_id: nil, fields: nil, quota_user: nil, options: nil, &block)
188
+ command = make_simple_command(:post, 'v1/{+parent}/backupPlans', options)
189
+ command.request_representation = Google::Apis::GkebackupV1::BackupPlan::Representation
190
+ command.request_object = backup_plan_object
191
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningOperation::Representation
192
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningOperation
193
+ command.params['parent'] = parent unless parent.nil?
194
+ command.query['backupPlanId'] = backup_plan_id unless backup_plan_id.nil?
195
+ command.query['fields'] = fields unless fields.nil?
196
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
197
+ execute_or_queue_command(command, &block)
198
+ end
199
+
200
+ # Deletes an existing BackupPlan.
201
+ # @param [String] name
202
+ # Required. Fully qualified BackupPlan name. Format: projects/`project`/
203
+ # locations/`location`/backupPlans/`backup_plan`
204
+ # @param [String] etag
205
+ # If provided, this value must match the value currently assigned to the target
206
+ # resource.
207
+ # @param [String] fields
208
+ # Selector specifying which fields to include in a partial response.
209
+ # @param [String] quota_user
210
+ # Available to use for quota purposes for server-side applications. Can be any
211
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
212
+ # @param [Google::Apis::RequestOptions] options
213
+ # Request-specific options
214
+ #
215
+ # @yield [result, err] Result & error if block supplied
216
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningOperation] parsed result object
217
+ # @yieldparam err [StandardError] error object if request failed
218
+ #
219
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningOperation]
220
+ #
221
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
222
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
223
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
224
+ def delete_project_location_backup_plan(name, etag: nil, fields: nil, quota_user: nil, options: nil, &block)
225
+ command = make_simple_command(:delete, 'v1/{+name}', options)
226
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningOperation::Representation
227
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningOperation
228
+ command.params['name'] = name unless name.nil?
229
+ command.query['etag'] = etag unless etag.nil?
230
+ command.query['fields'] = fields unless fields.nil?
231
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
232
+ execute_or_queue_command(command, &block)
233
+ end
234
+
235
+ # Retrieve the details of a single BackupPlan.
236
+ # @param [String] name
237
+ # Required. Fully qualified BackupPlan name. Format: projects/`project`/
238
+ # locations/`location`/backupPlans/`backup_plan`
239
+ # @param [String] fields
240
+ # Selector specifying which fields to include in a partial response.
241
+ # @param [String] quota_user
242
+ # Available to use for quota purposes for server-side applications. Can be any
243
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
244
+ # @param [Google::Apis::RequestOptions] options
245
+ # Request-specific options
246
+ #
247
+ # @yield [result, err] Result & error if block supplied
248
+ # @yieldparam result [Google::Apis::GkebackupV1::BackupPlan] parsed result object
249
+ # @yieldparam err [StandardError] error object if request failed
250
+ #
251
+ # @return [Google::Apis::GkebackupV1::BackupPlan]
252
+ #
253
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
254
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
255
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
256
+ def get_project_location_backup_plan(name, fields: nil, quota_user: nil, options: nil, &block)
257
+ command = make_simple_command(:get, 'v1/{+name}', options)
258
+ command.response_representation = Google::Apis::GkebackupV1::BackupPlan::Representation
259
+ command.response_class = Google::Apis::GkebackupV1::BackupPlan
260
+ command.params['name'] = name unless name.nil?
261
+ command.query['fields'] = fields unless fields.nil?
262
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
263
+ execute_or_queue_command(command, &block)
264
+ end
265
+
266
+ # Gets the access control policy for a resource. Returns an empty policy if the
267
+ # resource exists and does not have a policy set.
268
+ # @param [String] resource
269
+ # REQUIRED: The resource for which the policy is being requested. See the
270
+ # operation documentation for the appropriate value for this field.
271
+ # @param [Fixnum] options_requested_policy_version
272
+ # Optional. The maximum policy version that will be used to format the policy.
273
+ # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
274
+ # rejected. Requests for policies with any conditional role bindings must
275
+ # specify version 3. Policies with no conditional role bindings may specify any
276
+ # valid value or leave the field unset. The policy in the response might use the
277
+ # policy version that you specified, or it might use a lower policy version. For
278
+ # example, if you specify version 3, but the policy has no conditional role
279
+ # bindings, the response uses version 1. To learn which resources support
280
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
281
+ # google.com/iam/help/conditions/resource-policies).
282
+ # @param [String] fields
283
+ # Selector specifying which fields to include in a partial response.
284
+ # @param [String] quota_user
285
+ # Available to use for quota purposes for server-side applications. Can be any
286
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
287
+ # @param [Google::Apis::RequestOptions] options
288
+ # Request-specific options
289
+ #
290
+ # @yield [result, err] Result & error if block supplied
291
+ # @yieldparam result [Google::Apis::GkebackupV1::Policy] parsed result object
292
+ # @yieldparam err [StandardError] error object if request failed
293
+ #
294
+ # @return [Google::Apis::GkebackupV1::Policy]
295
+ #
296
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
297
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
298
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
299
+ def get_project_location_backup_plan_iam_policy(resource, options_requested_policy_version: nil, fields: nil, quota_user: nil, options: nil, &block)
300
+ command = make_simple_command(:get, 'v1/{+resource}:getIamPolicy', options)
301
+ command.response_representation = Google::Apis::GkebackupV1::Policy::Representation
302
+ command.response_class = Google::Apis::GkebackupV1::Policy
303
+ command.params['resource'] = resource unless resource.nil?
304
+ command.query['options.requestedPolicyVersion'] = options_requested_policy_version unless options_requested_policy_version.nil?
305
+ command.query['fields'] = fields unless fields.nil?
306
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
307
+ execute_or_queue_command(command, &block)
308
+ end
309
+
310
+ # Lists BackupPlans in a given location.
311
+ # @param [String] parent
312
+ # Required. The location that contains the BackupPlans to list. Format: projects/
313
+ # `project`/locations/`location`
314
+ # @param [String] filter
315
+ # List filter.
316
+ # @param [String] order_by
317
+ # Sort results.
318
+ # @param [Fixnum] page_size
319
+ # The target number of results to return in a single response. If not specified,
320
+ # a default value will be chosen by the service. Note that the response may
321
+ # inclue a partial list and a caller should only rely on the response's
322
+ # next_page_token to determine if there are more instances left to be queried.
323
+ # @param [String] page_token
324
+ # The value of next_page_token received from a previous `ListBackupPlans` call.
325
+ # Provide this to retrieve the subsequent page in a multi-page list of results.
326
+ # When paginating, all other parameters provided to `ListBackupPlans` must match
327
+ # the call that provided the page token.
328
+ # @param [String] fields
329
+ # Selector specifying which fields to include in a partial response.
330
+ # @param [String] quota_user
331
+ # Available to use for quota purposes for server-side applications. Can be any
332
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
333
+ # @param [Google::Apis::RequestOptions] options
334
+ # Request-specific options
335
+ #
336
+ # @yield [result, err] Result & error if block supplied
337
+ # @yieldparam result [Google::Apis::GkebackupV1::ListBackupPlansResponse] parsed result object
338
+ # @yieldparam err [StandardError] error object if request failed
339
+ #
340
+ # @return [Google::Apis::GkebackupV1::ListBackupPlansResponse]
341
+ #
342
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
343
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
344
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
345
+ def list_project_location_backup_plans(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
346
+ command = make_simple_command(:get, 'v1/{+parent}/backupPlans', options)
347
+ command.response_representation = Google::Apis::GkebackupV1::ListBackupPlansResponse::Representation
348
+ command.response_class = Google::Apis::GkebackupV1::ListBackupPlansResponse
349
+ command.params['parent'] = parent unless parent.nil?
350
+ command.query['filter'] = filter unless filter.nil?
351
+ command.query['orderBy'] = order_by unless order_by.nil?
352
+ command.query['pageSize'] = page_size unless page_size.nil?
353
+ command.query['pageToken'] = page_token unless page_token.nil?
354
+ command.query['fields'] = fields unless fields.nil?
355
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
356
+ execute_or_queue_command(command, &block)
357
+ end
358
+
359
+ # Update a BackupPlan.
360
+ # @param [String] name
361
+ # Output only. [Output Only] The full name of the BackupPlan resource. Format:
362
+ # projects/*/locations/*/backupPlans/*
363
+ # @param [Google::Apis::GkebackupV1::BackupPlan] backup_plan_object
364
+ # @param [String] update_mask
365
+ # This is used to specify the fields to be overwritten in the BackupPlan
366
+ # targeted for update. The values for each of these updated fields will be taken
367
+ # from the `backup_plan` provided with this request. Field names are relative to
368
+ # the root of the resource (e.g., `description`, `backup_config.
369
+ # include_volume_data`, etc.) If no `update_mask` is provided, all fields in `
370
+ # backup_plan` will be written to the target BackupPlan resource. Note that
371
+ # OUTPUT_ONLY and IMMUTABLE fields in `backup_plan` are ignored and are not used
372
+ # to update the target BackupPlan.
373
+ # @param [String] fields
374
+ # Selector specifying which fields to include in a partial response.
375
+ # @param [String] quota_user
376
+ # Available to use for quota purposes for server-side applications. Can be any
377
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
378
+ # @param [Google::Apis::RequestOptions] options
379
+ # Request-specific options
380
+ #
381
+ # @yield [result, err] Result & error if block supplied
382
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningOperation] parsed result object
383
+ # @yieldparam err [StandardError] error object if request failed
384
+ #
385
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningOperation]
386
+ #
387
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
388
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
389
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
390
+ def patch_project_location_backup_plan(name, backup_plan_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
391
+ command = make_simple_command(:patch, 'v1/{+name}', options)
392
+ command.request_representation = Google::Apis::GkebackupV1::BackupPlan::Representation
393
+ command.request_object = backup_plan_object
394
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningOperation::Representation
395
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningOperation
396
+ command.params['name'] = name unless name.nil?
397
+ command.query['updateMask'] = update_mask unless update_mask.nil?
398
+ command.query['fields'] = fields unless fields.nil?
399
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
400
+ execute_or_queue_command(command, &block)
401
+ end
402
+
403
+ # Sets the access control policy on the specified resource. Replaces any
404
+ # existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `
405
+ # PERMISSION_DENIED` errors.
406
+ # @param [String] resource
407
+ # REQUIRED: The resource for which the policy is being specified. See the
408
+ # operation documentation for the appropriate value for this field.
409
+ # @param [Google::Apis::GkebackupV1::SetIamPolicyRequest] set_iam_policy_request_object
410
+ # @param [String] fields
411
+ # Selector specifying which fields to include in a partial response.
412
+ # @param [String] quota_user
413
+ # Available to use for quota purposes for server-side applications. Can be any
414
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
415
+ # @param [Google::Apis::RequestOptions] options
416
+ # Request-specific options
417
+ #
418
+ # @yield [result, err] Result & error if block supplied
419
+ # @yieldparam result [Google::Apis::GkebackupV1::Policy] parsed result object
420
+ # @yieldparam err [StandardError] error object if request failed
421
+ #
422
+ # @return [Google::Apis::GkebackupV1::Policy]
423
+ #
424
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
425
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
426
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
427
+ def set_backup_plan_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
428
+ command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options)
429
+ command.request_representation = Google::Apis::GkebackupV1::SetIamPolicyRequest::Representation
430
+ command.request_object = set_iam_policy_request_object
431
+ command.response_representation = Google::Apis::GkebackupV1::Policy::Representation
432
+ command.response_class = Google::Apis::GkebackupV1::Policy
433
+ command.params['resource'] = resource unless resource.nil?
434
+ command.query['fields'] = fields unless fields.nil?
435
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
436
+ execute_or_queue_command(command, &block)
437
+ end
438
+
439
+ # Returns permissions that a caller has on the specified resource. If the
440
+ # resource does not exist, this will return an empty set of permissions, not a `
441
+ # NOT_FOUND` error. Note: This operation is designed to be used for building
442
+ # permission-aware UIs and command-line tools, not for authorization checking.
443
+ # This operation may "fail open" without warning.
444
+ # @param [String] resource
445
+ # REQUIRED: The resource for which the policy detail is being requested. See the
446
+ # operation documentation for the appropriate value for this field.
447
+ # @param [Google::Apis::GkebackupV1::TestIamPermissionsRequest] test_iam_permissions_request_object
448
+ # @param [String] fields
449
+ # Selector specifying which fields to include in a partial response.
450
+ # @param [String] quota_user
451
+ # Available to use for quota purposes for server-side applications. Can be any
452
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
453
+ # @param [Google::Apis::RequestOptions] options
454
+ # Request-specific options
455
+ #
456
+ # @yield [result, err] Result & error if block supplied
457
+ # @yieldparam result [Google::Apis::GkebackupV1::TestIamPermissionsResponse] parsed result object
458
+ # @yieldparam err [StandardError] error object if request failed
459
+ #
460
+ # @return [Google::Apis::GkebackupV1::TestIamPermissionsResponse]
461
+ #
462
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
463
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
464
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
465
+ def test_backup_plan_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
466
+ command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options)
467
+ command.request_representation = Google::Apis::GkebackupV1::TestIamPermissionsRequest::Representation
468
+ command.request_object = test_iam_permissions_request_object
469
+ command.response_representation = Google::Apis::GkebackupV1::TestIamPermissionsResponse::Representation
470
+ command.response_class = Google::Apis::GkebackupV1::TestIamPermissionsResponse
471
+ command.params['resource'] = resource unless resource.nil?
472
+ command.query['fields'] = fields unless fields.nil?
473
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
474
+ execute_or_queue_command(command, &block)
475
+ end
476
+
477
+ # Creates a Backup for the given BackupPlan.
478
+ # @param [String] parent
479
+ # Required. The BackupPlan within which to create the Backup. Format: projects/`
480
+ # project`/locations/`location`/backupPlans/`backup_plan`
481
+ # @param [Google::Apis::GkebackupV1::Backup] backup_object
482
+ # @param [String] backup_id
483
+ # The client-provided short name for the Backup resource. This name must: a. be
484
+ # between 1 and 63 characters long (inclusive) b. consist of only lower-case
485
+ # ASCII letters, numbers, and dashes c. start with a lower-case letter d. end
486
+ # with a lower-case letter or number e. be unique within the set of Backups in
487
+ # this BackupPlan
488
+ # @param [String] fields
489
+ # Selector specifying which fields to include in a partial response.
490
+ # @param [String] quota_user
491
+ # Available to use for quota purposes for server-side applications. Can be any
492
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
493
+ # @param [Google::Apis::RequestOptions] options
494
+ # Request-specific options
495
+ #
496
+ # @yield [result, err] Result & error if block supplied
497
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningOperation] parsed result object
498
+ # @yieldparam err [StandardError] error object if request failed
499
+ #
500
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningOperation]
501
+ #
502
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
503
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
504
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
505
+ def create_project_location_backup_plan_backup(parent, backup_object = nil, backup_id: nil, fields: nil, quota_user: nil, options: nil, &block)
506
+ command = make_simple_command(:post, 'v1/{+parent}/backups', options)
507
+ command.request_representation = Google::Apis::GkebackupV1::Backup::Representation
508
+ command.request_object = backup_object
509
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningOperation::Representation
510
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningOperation
511
+ command.params['parent'] = parent unless parent.nil?
512
+ command.query['backupId'] = backup_id unless backup_id.nil?
513
+ command.query['fields'] = fields unless fields.nil?
514
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
515
+ execute_or_queue_command(command, &block)
516
+ end
517
+
518
+ # Deletes an existing Backup.
519
+ # @param [String] name
520
+ # Required. Name of the Backup resource. Format: projects/`project`/locations/`
521
+ # location`/backupPlans/`backup_plan`/backups/`backup`
522
+ # @param [String] etag
523
+ # etag, if provided, it must match the server's etag for the delete to happen.
524
+ # @param [Boolean] force
525
+ # If set to true, any volumeBackups below this backup will also be deleted.
526
+ # Otherwise, the request will only succeed if the backup has no volumeBackups.
527
+ # @param [String] fields
528
+ # Selector specifying which fields to include in a partial response.
529
+ # @param [String] quota_user
530
+ # Available to use for quota purposes for server-side applications. Can be any
531
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
532
+ # @param [Google::Apis::RequestOptions] options
533
+ # Request-specific options
534
+ #
535
+ # @yield [result, err] Result & error if block supplied
536
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningOperation] parsed result object
537
+ # @yieldparam err [StandardError] error object if request failed
538
+ #
539
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningOperation]
540
+ #
541
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
542
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
543
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
544
+ def delete_project_location_backup_plan_backup(name, etag: nil, force: nil, fields: nil, quota_user: nil, options: nil, &block)
545
+ command = make_simple_command(:delete, 'v1/{+name}', options)
546
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningOperation::Representation
547
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningOperation
548
+ command.params['name'] = name unless name.nil?
549
+ command.query['etag'] = etag unless etag.nil?
550
+ command.query['force'] = force unless force.nil?
551
+ command.query['fields'] = fields unless fields.nil?
552
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
553
+ execute_or_queue_command(command, &block)
554
+ end
555
+
556
+ # Retrieve the details of a single Backup.
557
+ # @param [String] name
558
+ # Required. Full name of the Backup resource. Format: projects/`project`/
559
+ # locations/`location`/backupPlans/`backup_plan`/backups/`backup`
560
+ # @param [String] fields
561
+ # Selector specifying which fields to include in a partial response.
562
+ # @param [String] quota_user
563
+ # Available to use for quota purposes for server-side applications. Can be any
564
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
565
+ # @param [Google::Apis::RequestOptions] options
566
+ # Request-specific options
567
+ #
568
+ # @yield [result, err] Result & error if block supplied
569
+ # @yieldparam result [Google::Apis::GkebackupV1::Backup] parsed result object
570
+ # @yieldparam err [StandardError] error object if request failed
571
+ #
572
+ # @return [Google::Apis::GkebackupV1::Backup]
573
+ #
574
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
575
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
576
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
577
+ def get_project_location_backup_plan_backup(name, fields: nil, quota_user: nil, options: nil, &block)
578
+ command = make_simple_command(:get, 'v1/{+name}', options)
579
+ command.response_representation = Google::Apis::GkebackupV1::Backup::Representation
580
+ command.response_class = Google::Apis::GkebackupV1::Backup
581
+ command.params['name'] = name unless name.nil?
582
+ command.query['fields'] = fields unless fields.nil?
583
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
584
+ execute_or_queue_command(command, &block)
585
+ end
586
+
587
+ # Gets the access control policy for a resource. Returns an empty policy if the
588
+ # resource exists and does not have a policy set.
589
+ # @param [String] resource
590
+ # REQUIRED: The resource for which the policy is being requested. See the
591
+ # operation documentation for the appropriate value for this field.
592
+ # @param [Fixnum] options_requested_policy_version
593
+ # Optional. The maximum policy version that will be used to format the policy.
594
+ # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
595
+ # rejected. Requests for policies with any conditional role bindings must
596
+ # specify version 3. Policies with no conditional role bindings may specify any
597
+ # valid value or leave the field unset. The policy in the response might use the
598
+ # policy version that you specified, or it might use a lower policy version. For
599
+ # example, if you specify version 3, but the policy has no conditional role
600
+ # bindings, the response uses version 1. To learn which resources support
601
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
602
+ # google.com/iam/help/conditions/resource-policies).
603
+ # @param [String] fields
604
+ # Selector specifying which fields to include in a partial response.
605
+ # @param [String] quota_user
606
+ # Available to use for quota purposes for server-side applications. Can be any
607
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
608
+ # @param [Google::Apis::RequestOptions] options
609
+ # Request-specific options
610
+ #
611
+ # @yield [result, err] Result & error if block supplied
612
+ # @yieldparam result [Google::Apis::GkebackupV1::Policy] parsed result object
613
+ # @yieldparam err [StandardError] error object if request failed
614
+ #
615
+ # @return [Google::Apis::GkebackupV1::Policy]
616
+ #
617
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
618
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
619
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
620
+ def get_project_location_backup_plan_backup_iam_policy(resource, options_requested_policy_version: nil, fields: nil, quota_user: nil, options: nil, &block)
621
+ command = make_simple_command(:get, 'v1/{+resource}:getIamPolicy', options)
622
+ command.response_representation = Google::Apis::GkebackupV1::Policy::Representation
623
+ command.response_class = Google::Apis::GkebackupV1::Policy
624
+ command.params['resource'] = resource unless resource.nil?
625
+ command.query['options.requestedPolicyVersion'] = options_requested_policy_version unless options_requested_policy_version.nil?
626
+ command.query['fields'] = fields unless fields.nil?
627
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
628
+ execute_or_queue_command(command, &block)
629
+ end
630
+
631
+ # Lists the Backups for a given BackupPlan.
632
+ # @param [String] parent
633
+ # Required. The BackupPlan that contains the Backups to list. Format: projects/`
634
+ # project`/locations/`location`/backupPlans/`backup_plan`
635
+ # @param [String] filter
636
+ # List filter.
637
+ # @param [String] order_by
638
+ # Sort results.
639
+ # @param [Fixnum] page_size
640
+ # The target number of results to return in a single response. If not specified,
641
+ # a default value will be chosen by the service. Note that the response may
642
+ # inclue a partial list and a caller should only rely on the response's
643
+ # next_page_token to determine if there are more instances left to be queried.
644
+ # @param [String] page_token
645
+ # The value of next_page_token received from a previous `ListBackups` call.
646
+ # Provide this to retrieve the subsequent page in a multi-page list of results.
647
+ # When paginating, all other parameters provided to `ListBackups` must match the
648
+ # call that provided the page token.
649
+ # @param [String] fields
650
+ # Selector specifying which fields to include in a partial response.
651
+ # @param [String] quota_user
652
+ # Available to use for quota purposes for server-side applications. Can be any
653
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
654
+ # @param [Google::Apis::RequestOptions] options
655
+ # Request-specific options
656
+ #
657
+ # @yield [result, err] Result & error if block supplied
658
+ # @yieldparam result [Google::Apis::GkebackupV1::ListBackupsResponse] parsed result object
659
+ # @yieldparam err [StandardError] error object if request failed
660
+ #
661
+ # @return [Google::Apis::GkebackupV1::ListBackupsResponse]
662
+ #
663
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
664
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
665
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
666
+ def list_project_location_backup_plan_backups(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
667
+ command = make_simple_command(:get, 'v1/{+parent}/backups', options)
668
+ command.response_representation = Google::Apis::GkebackupV1::ListBackupsResponse::Representation
669
+ command.response_class = Google::Apis::GkebackupV1::ListBackupsResponse
670
+ command.params['parent'] = parent unless parent.nil?
671
+ command.query['filter'] = filter unless filter.nil?
672
+ command.query['orderBy'] = order_by unless order_by.nil?
673
+ command.query['pageSize'] = page_size unless page_size.nil?
674
+ command.query['pageToken'] = page_token unless page_token.nil?
675
+ command.query['fields'] = fields unless fields.nil?
676
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
677
+ execute_or_queue_command(command, &block)
678
+ end
679
+
680
+ # Update a Backup.
681
+ # @param [String] name
682
+ # Output only. The fully qualified name of the Backup. projects/*/locations/*/
683
+ # backupPlans/*/backups/*
684
+ # @param [Google::Apis::GkebackupV1::Backup] backup_object
685
+ # @param [String] update_mask
686
+ # This is used to specify the fields to be overwritten in the Backup targeted
687
+ # for update. The values for each of these updated fields will be taken from the
688
+ # `backup_plan` provided with this request. Field names are relative to the root
689
+ # of the resource. If no `update_mask` is provided, all fields in `backup` will
690
+ # be written to the target Backup resource. Note that OUTPUT_ONLY and IMMUTABLE
691
+ # fields in `backup` are ignored and are not used to update the target Backup.
692
+ # @param [String] fields
693
+ # Selector specifying which fields to include in a partial response.
694
+ # @param [String] quota_user
695
+ # Available to use for quota purposes for server-side applications. Can be any
696
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
697
+ # @param [Google::Apis::RequestOptions] options
698
+ # Request-specific options
699
+ #
700
+ # @yield [result, err] Result & error if block supplied
701
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningOperation] parsed result object
702
+ # @yieldparam err [StandardError] error object if request failed
703
+ #
704
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningOperation]
705
+ #
706
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
707
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
708
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
709
+ def patch_project_location_backup_plan_backup(name, backup_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
710
+ command = make_simple_command(:patch, 'v1/{+name}', options)
711
+ command.request_representation = Google::Apis::GkebackupV1::Backup::Representation
712
+ command.request_object = backup_object
713
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningOperation::Representation
714
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningOperation
715
+ command.params['name'] = name unless name.nil?
716
+ command.query['updateMask'] = update_mask unless update_mask.nil?
717
+ command.query['fields'] = fields unless fields.nil?
718
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
719
+ execute_or_queue_command(command, &block)
720
+ end
721
+
722
+ # Sets the access control policy on the specified resource. Replaces any
723
+ # existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `
724
+ # PERMISSION_DENIED` errors.
725
+ # @param [String] resource
726
+ # REQUIRED: The resource for which the policy is being specified. See the
727
+ # operation documentation for the appropriate value for this field.
728
+ # @param [Google::Apis::GkebackupV1::SetIamPolicyRequest] set_iam_policy_request_object
729
+ # @param [String] fields
730
+ # Selector specifying which fields to include in a partial response.
731
+ # @param [String] quota_user
732
+ # Available to use for quota purposes for server-side applications. Can be any
733
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
734
+ # @param [Google::Apis::RequestOptions] options
735
+ # Request-specific options
736
+ #
737
+ # @yield [result, err] Result & error if block supplied
738
+ # @yieldparam result [Google::Apis::GkebackupV1::Policy] parsed result object
739
+ # @yieldparam err [StandardError] error object if request failed
740
+ #
741
+ # @return [Google::Apis::GkebackupV1::Policy]
742
+ #
743
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
744
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
745
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
746
+ def set_backup_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
747
+ command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options)
748
+ command.request_representation = Google::Apis::GkebackupV1::SetIamPolicyRequest::Representation
749
+ command.request_object = set_iam_policy_request_object
750
+ command.response_representation = Google::Apis::GkebackupV1::Policy::Representation
751
+ command.response_class = Google::Apis::GkebackupV1::Policy
752
+ command.params['resource'] = resource unless resource.nil?
753
+ command.query['fields'] = fields unless fields.nil?
754
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
755
+ execute_or_queue_command(command, &block)
756
+ end
757
+
758
+ # Returns permissions that a caller has on the specified resource. If the
759
+ # resource does not exist, this will return an empty set of permissions, not a `
760
+ # NOT_FOUND` error. Note: This operation is designed to be used for building
761
+ # permission-aware UIs and command-line tools, not for authorization checking.
762
+ # This operation may "fail open" without warning.
763
+ # @param [String] resource
764
+ # REQUIRED: The resource for which the policy detail is being requested. See the
765
+ # operation documentation for the appropriate value for this field.
766
+ # @param [Google::Apis::GkebackupV1::TestIamPermissionsRequest] test_iam_permissions_request_object
767
+ # @param [String] fields
768
+ # Selector specifying which fields to include in a partial response.
769
+ # @param [String] quota_user
770
+ # Available to use for quota purposes for server-side applications. Can be any
771
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
772
+ # @param [Google::Apis::RequestOptions] options
773
+ # Request-specific options
774
+ #
775
+ # @yield [result, err] Result & error if block supplied
776
+ # @yieldparam result [Google::Apis::GkebackupV1::TestIamPermissionsResponse] parsed result object
777
+ # @yieldparam err [StandardError] error object if request failed
778
+ #
779
+ # @return [Google::Apis::GkebackupV1::TestIamPermissionsResponse]
780
+ #
781
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
782
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
783
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
784
+ def test_backup_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
785
+ command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options)
786
+ command.request_representation = Google::Apis::GkebackupV1::TestIamPermissionsRequest::Representation
787
+ command.request_object = test_iam_permissions_request_object
788
+ command.response_representation = Google::Apis::GkebackupV1::TestIamPermissionsResponse::Representation
789
+ command.response_class = Google::Apis::GkebackupV1::TestIamPermissionsResponse
790
+ command.params['resource'] = resource unless resource.nil?
791
+ command.query['fields'] = fields unless fields.nil?
792
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
793
+ execute_or_queue_command(command, &block)
794
+ end
795
+
796
+ # Retrieve the details of a single VolumeBackup.
797
+ # @param [String] name
798
+ # Required. Full name of the VolumeBackup resource. Format: projects/`project`/
799
+ # locations/`location`/backupPlans/`backup_plan`/backups/`backup`/volumeBackups/`
800
+ # volume_backup`
801
+ # @param [String] fields
802
+ # Selector specifying which fields to include in a partial response.
803
+ # @param [String] quota_user
804
+ # Available to use for quota purposes for server-side applications. Can be any
805
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
806
+ # @param [Google::Apis::RequestOptions] options
807
+ # Request-specific options
808
+ #
809
+ # @yield [result, err] Result & error if block supplied
810
+ # @yieldparam result [Google::Apis::GkebackupV1::VolumeBackup] parsed result object
811
+ # @yieldparam err [StandardError] error object if request failed
812
+ #
813
+ # @return [Google::Apis::GkebackupV1::VolumeBackup]
814
+ #
815
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
816
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
817
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
818
+ def get_project_location_backup_plan_backup_volume_backup(name, fields: nil, quota_user: nil, options: nil, &block)
819
+ command = make_simple_command(:get, 'v1/{+name}', options)
820
+ command.response_representation = Google::Apis::GkebackupV1::VolumeBackup::Representation
821
+ command.response_class = Google::Apis::GkebackupV1::VolumeBackup
822
+ command.params['name'] = name unless name.nil?
823
+ command.query['fields'] = fields unless fields.nil?
824
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
825
+ execute_or_queue_command(command, &block)
826
+ end
827
+
828
+ # Gets the access control policy for a resource. Returns an empty policy if the
829
+ # resource exists and does not have a policy set.
830
+ # @param [String] resource
831
+ # REQUIRED: The resource for which the policy is being requested. See the
832
+ # operation documentation for the appropriate value for this field.
833
+ # @param [Fixnum] options_requested_policy_version
834
+ # Optional. The maximum policy version that will be used to format the policy.
835
+ # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
836
+ # rejected. Requests for policies with any conditional role bindings must
837
+ # specify version 3. Policies with no conditional role bindings may specify any
838
+ # valid value or leave the field unset. The policy in the response might use the
839
+ # policy version that you specified, or it might use a lower policy version. For
840
+ # example, if you specify version 3, but the policy has no conditional role
841
+ # bindings, the response uses version 1. To learn which resources support
842
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
843
+ # google.com/iam/help/conditions/resource-policies).
844
+ # @param [String] fields
845
+ # Selector specifying which fields to include in a partial response.
846
+ # @param [String] quota_user
847
+ # Available to use for quota purposes for server-side applications. Can be any
848
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
849
+ # @param [Google::Apis::RequestOptions] options
850
+ # Request-specific options
851
+ #
852
+ # @yield [result, err] Result & error if block supplied
853
+ # @yieldparam result [Google::Apis::GkebackupV1::Policy] parsed result object
854
+ # @yieldparam err [StandardError] error object if request failed
855
+ #
856
+ # @return [Google::Apis::GkebackupV1::Policy]
857
+ #
858
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
859
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
860
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
861
+ def get_project_location_backup_plan_backup_volume_backup_iam_policy(resource, options_requested_policy_version: nil, fields: nil, quota_user: nil, options: nil, &block)
862
+ command = make_simple_command(:get, 'v1/{+resource}:getIamPolicy', options)
863
+ command.response_representation = Google::Apis::GkebackupV1::Policy::Representation
864
+ command.response_class = Google::Apis::GkebackupV1::Policy
865
+ command.params['resource'] = resource unless resource.nil?
866
+ command.query['options.requestedPolicyVersion'] = options_requested_policy_version unless options_requested_policy_version.nil?
867
+ command.query['fields'] = fields unless fields.nil?
868
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
869
+ execute_or_queue_command(command, &block)
870
+ end
871
+
872
+ # Lists the VolumeBackups for a given Backup.
873
+ # @param [String] parent
874
+ # Required. The Backup that contains the VolumeBackups to list. Format: projects/
875
+ # `project`/locations/`location`/backupPlans/`backup_plan`/backups/`backup`
876
+ # @param [String] filter
877
+ # List filter.
878
+ # @param [String] order_by
879
+ # Sort results.
880
+ # @param [Fixnum] page_size
881
+ # The target number of results to return in a single response. If not specified,
882
+ # a default value will be chosen by the service. Note that the response may
883
+ # inclue a partial list and a caller should only rely on the response's
884
+ # next_page_token to determine if there are more instances left to be queried.
885
+ # @param [String] page_token
886
+ # The value of next_page_token received from a previous `ListVolumeBackups` call.
887
+ # Provide this to retrieve the subsequent page in a multi-page list of results.
888
+ # When paginating, all other parameters provided to `ListVolumeBackups` must
889
+ # match the call that provided the page token.
890
+ # @param [String] fields
891
+ # Selector specifying which fields to include in a partial response.
892
+ # @param [String] quota_user
893
+ # Available to use for quota purposes for server-side applications. Can be any
894
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
895
+ # @param [Google::Apis::RequestOptions] options
896
+ # Request-specific options
897
+ #
898
+ # @yield [result, err] Result & error if block supplied
899
+ # @yieldparam result [Google::Apis::GkebackupV1::ListVolumeBackupsResponse] parsed result object
900
+ # @yieldparam err [StandardError] error object if request failed
901
+ #
902
+ # @return [Google::Apis::GkebackupV1::ListVolumeBackupsResponse]
903
+ #
904
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
905
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
906
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
907
+ def list_project_location_backup_plan_backup_volume_backups(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
908
+ command = make_simple_command(:get, 'v1/{+parent}/volumeBackups', options)
909
+ command.response_representation = Google::Apis::GkebackupV1::ListVolumeBackupsResponse::Representation
910
+ command.response_class = Google::Apis::GkebackupV1::ListVolumeBackupsResponse
911
+ command.params['parent'] = parent unless parent.nil?
912
+ command.query['filter'] = filter unless filter.nil?
913
+ command.query['orderBy'] = order_by unless order_by.nil?
914
+ command.query['pageSize'] = page_size unless page_size.nil?
915
+ command.query['pageToken'] = page_token unless page_token.nil?
916
+ command.query['fields'] = fields unless fields.nil?
917
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
918
+ execute_or_queue_command(command, &block)
919
+ end
920
+
921
+ # Sets the access control policy on the specified resource. Replaces any
922
+ # existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `
923
+ # PERMISSION_DENIED` errors.
924
+ # @param [String] resource
925
+ # REQUIRED: The resource for which the policy is being specified. See the
926
+ # operation documentation for the appropriate value for this field.
927
+ # @param [Google::Apis::GkebackupV1::SetIamPolicyRequest] set_iam_policy_request_object
928
+ # @param [String] fields
929
+ # Selector specifying which fields to include in a partial response.
930
+ # @param [String] quota_user
931
+ # Available to use for quota purposes for server-side applications. Can be any
932
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
933
+ # @param [Google::Apis::RequestOptions] options
934
+ # Request-specific options
935
+ #
936
+ # @yield [result, err] Result & error if block supplied
937
+ # @yieldparam result [Google::Apis::GkebackupV1::Policy] parsed result object
938
+ # @yieldparam err [StandardError] error object if request failed
939
+ #
940
+ # @return [Google::Apis::GkebackupV1::Policy]
941
+ #
942
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
943
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
944
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
945
+ def set_volume_backup_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
946
+ command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options)
947
+ command.request_representation = Google::Apis::GkebackupV1::SetIamPolicyRequest::Representation
948
+ command.request_object = set_iam_policy_request_object
949
+ command.response_representation = Google::Apis::GkebackupV1::Policy::Representation
950
+ command.response_class = Google::Apis::GkebackupV1::Policy
951
+ command.params['resource'] = resource unless resource.nil?
952
+ command.query['fields'] = fields unless fields.nil?
953
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
954
+ execute_or_queue_command(command, &block)
955
+ end
956
+
957
+ # Returns permissions that a caller has on the specified resource. If the
958
+ # resource does not exist, this will return an empty set of permissions, not a `
959
+ # NOT_FOUND` error. Note: This operation is designed to be used for building
960
+ # permission-aware UIs and command-line tools, not for authorization checking.
961
+ # This operation may "fail open" without warning.
962
+ # @param [String] resource
963
+ # REQUIRED: The resource for which the policy detail is being requested. See the
964
+ # operation documentation for the appropriate value for this field.
965
+ # @param [Google::Apis::GkebackupV1::TestIamPermissionsRequest] test_iam_permissions_request_object
966
+ # @param [String] fields
967
+ # Selector specifying which fields to include in a partial response.
968
+ # @param [String] quota_user
969
+ # Available to use for quota purposes for server-side applications. Can be any
970
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
971
+ # @param [Google::Apis::RequestOptions] options
972
+ # Request-specific options
973
+ #
974
+ # @yield [result, err] Result & error if block supplied
975
+ # @yieldparam result [Google::Apis::GkebackupV1::TestIamPermissionsResponse] parsed result object
976
+ # @yieldparam err [StandardError] error object if request failed
977
+ #
978
+ # @return [Google::Apis::GkebackupV1::TestIamPermissionsResponse]
979
+ #
980
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
981
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
982
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
983
+ def test_volume_backup_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
984
+ command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options)
985
+ command.request_representation = Google::Apis::GkebackupV1::TestIamPermissionsRequest::Representation
986
+ command.request_object = test_iam_permissions_request_object
987
+ command.response_representation = Google::Apis::GkebackupV1::TestIamPermissionsResponse::Representation
988
+ command.response_class = Google::Apis::GkebackupV1::TestIamPermissionsResponse
989
+ command.params['resource'] = resource unless resource.nil?
990
+ command.query['fields'] = fields unless fields.nil?
991
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
992
+ execute_or_queue_command(command, &block)
993
+ end
994
+
995
+ # Starts asynchronous cancellation on a long-running operation. The server makes
996
+ # a best effort to cancel the operation, but success is not guaranteed. If the
997
+ # server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.
998
+ # Clients can use Operations.GetOperation or other methods to check whether the
999
+ # cancellation succeeded or whether the operation completed despite cancellation.
1000
+ # On successful cancellation, the operation is not deleted; instead, it becomes
1001
+ # an operation with an Operation.error value with a google.rpc.Status.code of 1,
1002
+ # corresponding to `Code.CANCELLED`.
1003
+ # @param [String] name
1004
+ # The name of the operation resource to be cancelled.
1005
+ # @param [Google::Apis::GkebackupV1::GoogleLongrunningCancelOperationRequest] google_longrunning_cancel_operation_request_object
1006
+ # @param [String] fields
1007
+ # Selector specifying which fields to include in a partial response.
1008
+ # @param [String] quota_user
1009
+ # Available to use for quota purposes for server-side applications. Can be any
1010
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1011
+ # @param [Google::Apis::RequestOptions] options
1012
+ # Request-specific options
1013
+ #
1014
+ # @yield [result, err] Result & error if block supplied
1015
+ # @yieldparam result [Google::Apis::GkebackupV1::Empty] parsed result object
1016
+ # @yieldparam err [StandardError] error object if request failed
1017
+ #
1018
+ # @return [Google::Apis::GkebackupV1::Empty]
1019
+ #
1020
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1021
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1022
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1023
+ def cancel_project_location_operation(name, google_longrunning_cancel_operation_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1024
+ command = make_simple_command(:post, 'v1/{+name}:cancel', options)
1025
+ command.request_representation = Google::Apis::GkebackupV1::GoogleLongrunningCancelOperationRequest::Representation
1026
+ command.request_object = google_longrunning_cancel_operation_request_object
1027
+ command.response_representation = Google::Apis::GkebackupV1::Empty::Representation
1028
+ command.response_class = Google::Apis::GkebackupV1::Empty
1029
+ command.params['name'] = name unless name.nil?
1030
+ command.query['fields'] = fields unless fields.nil?
1031
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1032
+ execute_or_queue_command(command, &block)
1033
+ end
1034
+
1035
+ # Gets the latest state of a long-running operation. Clients can use this method
1036
+ # to poll the operation result at intervals as recommended by the API service.
1037
+ # @param [String] name
1038
+ # The name of the operation resource.
1039
+ # @param [String] fields
1040
+ # Selector specifying which fields to include in a partial response.
1041
+ # @param [String] quota_user
1042
+ # Available to use for quota purposes for server-side applications. Can be any
1043
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1044
+ # @param [Google::Apis::RequestOptions] options
1045
+ # Request-specific options
1046
+ #
1047
+ # @yield [result, err] Result & error if block supplied
1048
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningOperation] parsed result object
1049
+ # @yieldparam err [StandardError] error object if request failed
1050
+ #
1051
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningOperation]
1052
+ #
1053
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1054
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1055
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1056
+ def get_project_location_operation(name, fields: nil, quota_user: nil, options: nil, &block)
1057
+ command = make_simple_command(:get, 'v1/{+name}', options)
1058
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningOperation::Representation
1059
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningOperation
1060
+ command.params['name'] = name unless name.nil?
1061
+ command.query['fields'] = fields unless fields.nil?
1062
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1063
+ execute_or_queue_command(command, &block)
1064
+ end
1065
+
1066
+ # Lists operations that match the specified filter in the request. If the server
1067
+ # doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name`
1068
+ # binding allows API services to override the binding to use different resource
1069
+ # name schemes, such as `users/*/operations`. To override the binding, API
1070
+ # services can add a binding such as `"/v1/`name=users/*`/operations"` to their
1071
+ # service configuration. For backwards compatibility, the default name includes
1072
+ # the operations collection id, however overriding users must ensure the name
1073
+ # binding is the parent resource, without the operations collection id.
1074
+ # @param [String] name
1075
+ # The name of the operation's parent resource.
1076
+ # @param [String] filter
1077
+ # The standard list filter.
1078
+ # @param [Fixnum] page_size
1079
+ # The standard list page size.
1080
+ # @param [String] page_token
1081
+ # The standard list page token.
1082
+ # @param [String] fields
1083
+ # Selector specifying which fields to include in a partial response.
1084
+ # @param [String] quota_user
1085
+ # Available to use for quota purposes for server-side applications. Can be any
1086
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1087
+ # @param [Google::Apis::RequestOptions] options
1088
+ # Request-specific options
1089
+ #
1090
+ # @yield [result, err] Result & error if block supplied
1091
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningListOperationsResponse] parsed result object
1092
+ # @yieldparam err [StandardError] error object if request failed
1093
+ #
1094
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningListOperationsResponse]
1095
+ #
1096
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1097
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1098
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1099
+ def list_project_location_operations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
1100
+ command = make_simple_command(:get, 'v1/{+name}/operations', options)
1101
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningListOperationsResponse::Representation
1102
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningListOperationsResponse
1103
+ command.params['name'] = name unless name.nil?
1104
+ command.query['filter'] = filter unless filter.nil?
1105
+ command.query['pageSize'] = page_size unless page_size.nil?
1106
+ command.query['pageToken'] = page_token unless page_token.nil?
1107
+ command.query['fields'] = fields unless fields.nil?
1108
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1109
+ execute_or_queue_command(command, &block)
1110
+ end
1111
+
1112
+ # Creates a new RestorePlan in a given location.
1113
+ # @param [String] parent
1114
+ # Required. The location within which to create the RestorePlan. Format:
1115
+ # projects/`project`/locations/`location`
1116
+ # @param [Google::Apis::GkebackupV1::RestorePlan] restore_plan_object
1117
+ # @param [String] restore_plan_id
1118
+ # Required. The client-provided short name for the RestorePlan resource. This
1119
+ # name must: a. be between 1 and 63 characters long (inclusive) b. consist of
1120
+ # only lower-case ASCII letters, numbers, and dashes c. start with a lower-case
1121
+ # letter d. end with a lower-case letter or number e. be unique within the set
1122
+ # of RestorePlans in this location
1123
+ # @param [String] fields
1124
+ # Selector specifying which fields to include in a partial response.
1125
+ # @param [String] quota_user
1126
+ # Available to use for quota purposes for server-side applications. Can be any
1127
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1128
+ # @param [Google::Apis::RequestOptions] options
1129
+ # Request-specific options
1130
+ #
1131
+ # @yield [result, err] Result & error if block supplied
1132
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningOperation] parsed result object
1133
+ # @yieldparam err [StandardError] error object if request failed
1134
+ #
1135
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningOperation]
1136
+ #
1137
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1138
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1139
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1140
+ def create_project_location_restore_plan(parent, restore_plan_object = nil, restore_plan_id: nil, fields: nil, quota_user: nil, options: nil, &block)
1141
+ command = make_simple_command(:post, 'v1/{+parent}/restorePlans', options)
1142
+ command.request_representation = Google::Apis::GkebackupV1::RestorePlan::Representation
1143
+ command.request_object = restore_plan_object
1144
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningOperation::Representation
1145
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningOperation
1146
+ command.params['parent'] = parent unless parent.nil?
1147
+ command.query['restorePlanId'] = restore_plan_id unless restore_plan_id.nil?
1148
+ command.query['fields'] = fields unless fields.nil?
1149
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1150
+ execute_or_queue_command(command, &block)
1151
+ end
1152
+
1153
+ # Deletes an existing RestorePlan.
1154
+ # @param [String] name
1155
+ # Required. Fully qualified RestorePlan name. Format: projects/`project`/
1156
+ # locations/`location`/restorePlans/`restore_plan`
1157
+ # @param [String] etag
1158
+ # If provided, this value must match the value currently assigned to the target
1159
+ # resource.
1160
+ # @param [Boolean] force
1161
+ # If set to true, any restores below this restorePlan will also be deleted.
1162
+ # Otherwise, the request will only succeed if the restorePlan has no restores.
1163
+ # @param [String] fields
1164
+ # Selector specifying which fields to include in a partial response.
1165
+ # @param [String] quota_user
1166
+ # Available to use for quota purposes for server-side applications. Can be any
1167
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1168
+ # @param [Google::Apis::RequestOptions] options
1169
+ # Request-specific options
1170
+ #
1171
+ # @yield [result, err] Result & error if block supplied
1172
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningOperation] parsed result object
1173
+ # @yieldparam err [StandardError] error object if request failed
1174
+ #
1175
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningOperation]
1176
+ #
1177
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1178
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1179
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1180
+ def delete_project_location_restore_plan(name, etag: nil, force: nil, fields: nil, quota_user: nil, options: nil, &block)
1181
+ command = make_simple_command(:delete, 'v1/{+name}', options)
1182
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningOperation::Representation
1183
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningOperation
1184
+ command.params['name'] = name unless name.nil?
1185
+ command.query['etag'] = etag unless etag.nil?
1186
+ command.query['force'] = force unless force.nil?
1187
+ command.query['fields'] = fields unless fields.nil?
1188
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1189
+ execute_or_queue_command(command, &block)
1190
+ end
1191
+
1192
+ # Retrieve the details of a single RestorePlan.
1193
+ # @param [String] name
1194
+ # Required. Fully qualified RestorePlan name. Format: projects/`project`/
1195
+ # locations/`location`/restorePlans/`restore_plan`
1196
+ # @param [String] fields
1197
+ # Selector specifying which fields to include in a partial response.
1198
+ # @param [String] quota_user
1199
+ # Available to use for quota purposes for server-side applications. Can be any
1200
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1201
+ # @param [Google::Apis::RequestOptions] options
1202
+ # Request-specific options
1203
+ #
1204
+ # @yield [result, err] Result & error if block supplied
1205
+ # @yieldparam result [Google::Apis::GkebackupV1::RestorePlan] parsed result object
1206
+ # @yieldparam err [StandardError] error object if request failed
1207
+ #
1208
+ # @return [Google::Apis::GkebackupV1::RestorePlan]
1209
+ #
1210
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1211
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1212
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1213
+ def get_project_location_restore_plan(name, fields: nil, quota_user: nil, options: nil, &block)
1214
+ command = make_simple_command(:get, 'v1/{+name}', options)
1215
+ command.response_representation = Google::Apis::GkebackupV1::RestorePlan::Representation
1216
+ command.response_class = Google::Apis::GkebackupV1::RestorePlan
1217
+ command.params['name'] = name unless name.nil?
1218
+ command.query['fields'] = fields unless fields.nil?
1219
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1220
+ execute_or_queue_command(command, &block)
1221
+ end
1222
+
1223
+ # Gets the access control policy for a resource. Returns an empty policy if the
1224
+ # resource exists and does not have a policy set.
1225
+ # @param [String] resource
1226
+ # REQUIRED: The resource for which the policy is being requested. See the
1227
+ # operation documentation for the appropriate value for this field.
1228
+ # @param [Fixnum] options_requested_policy_version
1229
+ # Optional. The maximum policy version that will be used to format the policy.
1230
+ # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
1231
+ # rejected. Requests for policies with any conditional role bindings must
1232
+ # specify version 3. Policies with no conditional role bindings may specify any
1233
+ # valid value or leave the field unset. The policy in the response might use the
1234
+ # policy version that you specified, or it might use a lower policy version. For
1235
+ # example, if you specify version 3, but the policy has no conditional role
1236
+ # bindings, the response uses version 1. To learn which resources support
1237
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
1238
+ # google.com/iam/help/conditions/resource-policies).
1239
+ # @param [String] fields
1240
+ # Selector specifying which fields to include in a partial response.
1241
+ # @param [String] quota_user
1242
+ # Available to use for quota purposes for server-side applications. Can be any
1243
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1244
+ # @param [Google::Apis::RequestOptions] options
1245
+ # Request-specific options
1246
+ #
1247
+ # @yield [result, err] Result & error if block supplied
1248
+ # @yieldparam result [Google::Apis::GkebackupV1::Policy] parsed result object
1249
+ # @yieldparam err [StandardError] error object if request failed
1250
+ #
1251
+ # @return [Google::Apis::GkebackupV1::Policy]
1252
+ #
1253
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1254
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1255
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1256
+ def get_project_location_restore_plan_iam_policy(resource, options_requested_policy_version: nil, fields: nil, quota_user: nil, options: nil, &block)
1257
+ command = make_simple_command(:get, 'v1/{+resource}:getIamPolicy', options)
1258
+ command.response_representation = Google::Apis::GkebackupV1::Policy::Representation
1259
+ command.response_class = Google::Apis::GkebackupV1::Policy
1260
+ command.params['resource'] = resource unless resource.nil?
1261
+ command.query['options.requestedPolicyVersion'] = options_requested_policy_version unless options_requested_policy_version.nil?
1262
+ command.query['fields'] = fields unless fields.nil?
1263
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1264
+ execute_or_queue_command(command, &block)
1265
+ end
1266
+
1267
+ # Lists RestorePlans in a given location.
1268
+ # @param [String] parent
1269
+ # Required. The location that contains the RestorePlans to list. Format:
1270
+ # projects/`project`/locations/`location`
1271
+ # @param [String] filter
1272
+ # List filter.
1273
+ # @param [String] order_by
1274
+ # Sort results.
1275
+ # @param [Fixnum] page_size
1276
+ # The target number of results to return in a single response. If not specified,
1277
+ # a default value will be chosen by the service. Note that the response may
1278
+ # inclue a partial list and a caller should only rely on the response's
1279
+ # next_page_token to determine if there are more instances left to be queried.
1280
+ # @param [String] page_token
1281
+ # The value of next_page_token received from a previous `ListRestorePlans` call.
1282
+ # Provide this to retrieve the subsequent page in a multi-page list of results.
1283
+ # When paginating, all other parameters provided to `ListRestorePlans` must
1284
+ # match the call that provided the page token.
1285
+ # @param [String] fields
1286
+ # Selector specifying which fields to include in a partial response.
1287
+ # @param [String] quota_user
1288
+ # Available to use for quota purposes for server-side applications. Can be any
1289
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1290
+ # @param [Google::Apis::RequestOptions] options
1291
+ # Request-specific options
1292
+ #
1293
+ # @yield [result, err] Result & error if block supplied
1294
+ # @yieldparam result [Google::Apis::GkebackupV1::ListRestorePlansResponse] parsed result object
1295
+ # @yieldparam err [StandardError] error object if request failed
1296
+ #
1297
+ # @return [Google::Apis::GkebackupV1::ListRestorePlansResponse]
1298
+ #
1299
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1300
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1301
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1302
+ def list_project_location_restore_plans(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
1303
+ command = make_simple_command(:get, 'v1/{+parent}/restorePlans', options)
1304
+ command.response_representation = Google::Apis::GkebackupV1::ListRestorePlansResponse::Representation
1305
+ command.response_class = Google::Apis::GkebackupV1::ListRestorePlansResponse
1306
+ command.params['parent'] = parent unless parent.nil?
1307
+ command.query['filter'] = filter unless filter.nil?
1308
+ command.query['orderBy'] = order_by unless order_by.nil?
1309
+ command.query['pageSize'] = page_size unless page_size.nil?
1310
+ command.query['pageToken'] = page_token unless page_token.nil?
1311
+ command.query['fields'] = fields unless fields.nil?
1312
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1313
+ execute_or_queue_command(command, &block)
1314
+ end
1315
+
1316
+ # Update a RestorePlan.
1317
+ # @param [String] name
1318
+ # Output only. [Output Only] The full name of the RestorePlan resource. Format:
1319
+ # projects/*/locations/*/restorePlans/*
1320
+ # @param [Google::Apis::GkebackupV1::RestorePlan] restore_plan_object
1321
+ # @param [String] update_mask
1322
+ # This is used to specify the fields to be overwritten in the RestorePlan
1323
+ # targeted for update. The values for each of these updated fields will be taken
1324
+ # from the `restore_plan` provided with this request. Field names are relative
1325
+ # to the root of the resource. If no `update_mask` is provided, all fields in `
1326
+ # restore_plan` will be written to the target RestorePlan resource. Note that
1327
+ # OUTPUT_ONLY and IMMUTABLE fields in `restore_plan` are ignored and are not
1328
+ # used to update the target RestorePlan.
1329
+ # @param [String] fields
1330
+ # Selector specifying which fields to include in a partial response.
1331
+ # @param [String] quota_user
1332
+ # Available to use for quota purposes for server-side applications. Can be any
1333
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1334
+ # @param [Google::Apis::RequestOptions] options
1335
+ # Request-specific options
1336
+ #
1337
+ # @yield [result, err] Result & error if block supplied
1338
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningOperation] parsed result object
1339
+ # @yieldparam err [StandardError] error object if request failed
1340
+ #
1341
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningOperation]
1342
+ #
1343
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1344
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1345
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1346
+ def patch_project_location_restore_plan(name, restore_plan_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
1347
+ command = make_simple_command(:patch, 'v1/{+name}', options)
1348
+ command.request_representation = Google::Apis::GkebackupV1::RestorePlan::Representation
1349
+ command.request_object = restore_plan_object
1350
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningOperation::Representation
1351
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningOperation
1352
+ command.params['name'] = name unless name.nil?
1353
+ command.query['updateMask'] = update_mask unless update_mask.nil?
1354
+ command.query['fields'] = fields unless fields.nil?
1355
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1356
+ execute_or_queue_command(command, &block)
1357
+ end
1358
+
1359
+ # Sets the access control policy on the specified resource. Replaces any
1360
+ # existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `
1361
+ # PERMISSION_DENIED` errors.
1362
+ # @param [String] resource
1363
+ # REQUIRED: The resource for which the policy is being specified. See the
1364
+ # operation documentation for the appropriate value for this field.
1365
+ # @param [Google::Apis::GkebackupV1::SetIamPolicyRequest] set_iam_policy_request_object
1366
+ # @param [String] fields
1367
+ # Selector specifying which fields to include in a partial response.
1368
+ # @param [String] quota_user
1369
+ # Available to use for quota purposes for server-side applications. Can be any
1370
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1371
+ # @param [Google::Apis::RequestOptions] options
1372
+ # Request-specific options
1373
+ #
1374
+ # @yield [result, err] Result & error if block supplied
1375
+ # @yieldparam result [Google::Apis::GkebackupV1::Policy] parsed result object
1376
+ # @yieldparam err [StandardError] error object if request failed
1377
+ #
1378
+ # @return [Google::Apis::GkebackupV1::Policy]
1379
+ #
1380
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1381
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1382
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1383
+ def set_restore_plan_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1384
+ command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options)
1385
+ command.request_representation = Google::Apis::GkebackupV1::SetIamPolicyRequest::Representation
1386
+ command.request_object = set_iam_policy_request_object
1387
+ command.response_representation = Google::Apis::GkebackupV1::Policy::Representation
1388
+ command.response_class = Google::Apis::GkebackupV1::Policy
1389
+ command.params['resource'] = resource unless resource.nil?
1390
+ command.query['fields'] = fields unless fields.nil?
1391
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1392
+ execute_or_queue_command(command, &block)
1393
+ end
1394
+
1395
+ # Returns permissions that a caller has on the specified resource. If the
1396
+ # resource does not exist, this will return an empty set of permissions, not a `
1397
+ # NOT_FOUND` error. Note: This operation is designed to be used for building
1398
+ # permission-aware UIs and command-line tools, not for authorization checking.
1399
+ # This operation may "fail open" without warning.
1400
+ # @param [String] resource
1401
+ # REQUIRED: The resource for which the policy detail is being requested. See the
1402
+ # operation documentation for the appropriate value for this field.
1403
+ # @param [Google::Apis::GkebackupV1::TestIamPermissionsRequest] test_iam_permissions_request_object
1404
+ # @param [String] fields
1405
+ # Selector specifying which fields to include in a partial response.
1406
+ # @param [String] quota_user
1407
+ # Available to use for quota purposes for server-side applications. Can be any
1408
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1409
+ # @param [Google::Apis::RequestOptions] options
1410
+ # Request-specific options
1411
+ #
1412
+ # @yield [result, err] Result & error if block supplied
1413
+ # @yieldparam result [Google::Apis::GkebackupV1::TestIamPermissionsResponse] parsed result object
1414
+ # @yieldparam err [StandardError] error object if request failed
1415
+ #
1416
+ # @return [Google::Apis::GkebackupV1::TestIamPermissionsResponse]
1417
+ #
1418
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1419
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1420
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1421
+ def test_restore_plan_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1422
+ command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options)
1423
+ command.request_representation = Google::Apis::GkebackupV1::TestIamPermissionsRequest::Representation
1424
+ command.request_object = test_iam_permissions_request_object
1425
+ command.response_representation = Google::Apis::GkebackupV1::TestIamPermissionsResponse::Representation
1426
+ command.response_class = Google::Apis::GkebackupV1::TestIamPermissionsResponse
1427
+ command.params['resource'] = resource unless resource.nil?
1428
+ command.query['fields'] = fields unless fields.nil?
1429
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1430
+ execute_or_queue_command(command, &block)
1431
+ end
1432
+
1433
+ # Creates a new Restore for the given RestorePlan.
1434
+ # @param [String] parent
1435
+ # Required. The RestorePlan within which to create the Restore. Format: projects/
1436
+ # `project`/locations/`location`/restorePlans/`restore_plan`
1437
+ # @param [Google::Apis::GkebackupV1::Restore] restore_object
1438
+ # @param [String] restore_id
1439
+ # Required. The client-provided short name for the Restore resource. This name
1440
+ # must: a. be between 1 and 63 characters long (inclusive) b. consist of only
1441
+ # lower-case ASCII letters, numbers, and dashes c. start with a lower-case
1442
+ # letter d. end with a lower-case letter or number e. be unique within the set
1443
+ # of Restores in this RestorePlan.
1444
+ # @param [String] fields
1445
+ # Selector specifying which fields to include in a partial response.
1446
+ # @param [String] quota_user
1447
+ # Available to use for quota purposes for server-side applications. Can be any
1448
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1449
+ # @param [Google::Apis::RequestOptions] options
1450
+ # Request-specific options
1451
+ #
1452
+ # @yield [result, err] Result & error if block supplied
1453
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningOperation] parsed result object
1454
+ # @yieldparam err [StandardError] error object if request failed
1455
+ #
1456
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningOperation]
1457
+ #
1458
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1459
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1460
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1461
+ def create_project_location_restore_plan_restore(parent, restore_object = nil, restore_id: nil, fields: nil, quota_user: nil, options: nil, &block)
1462
+ command = make_simple_command(:post, 'v1/{+parent}/restores', options)
1463
+ command.request_representation = Google::Apis::GkebackupV1::Restore::Representation
1464
+ command.request_object = restore_object
1465
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningOperation::Representation
1466
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningOperation
1467
+ command.params['parent'] = parent unless parent.nil?
1468
+ command.query['restoreId'] = restore_id unless restore_id.nil?
1469
+ command.query['fields'] = fields unless fields.nil?
1470
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1471
+ execute_or_queue_command(command, &block)
1472
+ end
1473
+
1474
+ # Deletes an existing Restore.
1475
+ # @param [String] name
1476
+ # Required. Full name of the Restore Format: projects/`project`/locations/`
1477
+ # location`/restorePlans/`restore_plan`/restores/`restore`
1478
+ # @param [String] etag
1479
+ # etag, if provided, it must match the server's etag for delete to happen.
1480
+ # @param [Boolean] force
1481
+ # If set to true, any volumeRestores below this restore will also be deleted.
1482
+ # Otherwise, the request will only succeed if the restore has no volumeRestores.
1483
+ # @param [String] fields
1484
+ # Selector specifying which fields to include in a partial response.
1485
+ # @param [String] quota_user
1486
+ # Available to use for quota purposes for server-side applications. Can be any
1487
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1488
+ # @param [Google::Apis::RequestOptions] options
1489
+ # Request-specific options
1490
+ #
1491
+ # @yield [result, err] Result & error if block supplied
1492
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningOperation] parsed result object
1493
+ # @yieldparam err [StandardError] error object if request failed
1494
+ #
1495
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningOperation]
1496
+ #
1497
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1498
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1499
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1500
+ def delete_project_location_restore_plan_restore(name, etag: nil, force: nil, fields: nil, quota_user: nil, options: nil, &block)
1501
+ command = make_simple_command(:delete, 'v1/{+name}', options)
1502
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningOperation::Representation
1503
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningOperation
1504
+ command.params['name'] = name unless name.nil?
1505
+ command.query['etag'] = etag unless etag.nil?
1506
+ command.query['force'] = force unless force.nil?
1507
+ command.query['fields'] = fields unless fields.nil?
1508
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1509
+ execute_or_queue_command(command, &block)
1510
+ end
1511
+
1512
+ # Retrieves the details of a single Restore.
1513
+ # @param [String] name
1514
+ # Required. Name of the restore resource. Format: projects/`project`/locations/`
1515
+ # location`/restorePlans/`restore_plan`/restores/`restore`
1516
+ # @param [String] fields
1517
+ # Selector specifying which fields to include in a partial response.
1518
+ # @param [String] quota_user
1519
+ # Available to use for quota purposes for server-side applications. Can be any
1520
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1521
+ # @param [Google::Apis::RequestOptions] options
1522
+ # Request-specific options
1523
+ #
1524
+ # @yield [result, err] Result & error if block supplied
1525
+ # @yieldparam result [Google::Apis::GkebackupV1::Restore] parsed result object
1526
+ # @yieldparam err [StandardError] error object if request failed
1527
+ #
1528
+ # @return [Google::Apis::GkebackupV1::Restore]
1529
+ #
1530
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1531
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1532
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1533
+ def get_project_location_restore_plan_restore(name, fields: nil, quota_user: nil, options: nil, &block)
1534
+ command = make_simple_command(:get, 'v1/{+name}', options)
1535
+ command.response_representation = Google::Apis::GkebackupV1::Restore::Representation
1536
+ command.response_class = Google::Apis::GkebackupV1::Restore
1537
+ command.params['name'] = name unless name.nil?
1538
+ command.query['fields'] = fields unless fields.nil?
1539
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1540
+ execute_or_queue_command(command, &block)
1541
+ end
1542
+
1543
+ # Gets the access control policy for a resource. Returns an empty policy if the
1544
+ # resource exists and does not have a policy set.
1545
+ # @param [String] resource
1546
+ # REQUIRED: The resource for which the policy is being requested. See the
1547
+ # operation documentation for the appropriate value for this field.
1548
+ # @param [Fixnum] options_requested_policy_version
1549
+ # Optional. The maximum policy version that will be used to format the policy.
1550
+ # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
1551
+ # rejected. Requests for policies with any conditional role bindings must
1552
+ # specify version 3. Policies with no conditional role bindings may specify any
1553
+ # valid value or leave the field unset. The policy in the response might use the
1554
+ # policy version that you specified, or it might use a lower policy version. For
1555
+ # example, if you specify version 3, but the policy has no conditional role
1556
+ # bindings, the response uses version 1. To learn which resources support
1557
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
1558
+ # google.com/iam/help/conditions/resource-policies).
1559
+ # @param [String] fields
1560
+ # Selector specifying which fields to include in a partial response.
1561
+ # @param [String] quota_user
1562
+ # Available to use for quota purposes for server-side applications. Can be any
1563
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1564
+ # @param [Google::Apis::RequestOptions] options
1565
+ # Request-specific options
1566
+ #
1567
+ # @yield [result, err] Result & error if block supplied
1568
+ # @yieldparam result [Google::Apis::GkebackupV1::Policy] parsed result object
1569
+ # @yieldparam err [StandardError] error object if request failed
1570
+ #
1571
+ # @return [Google::Apis::GkebackupV1::Policy]
1572
+ #
1573
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1574
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1575
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1576
+ def get_project_location_restore_plan_restore_iam_policy(resource, options_requested_policy_version: nil, fields: nil, quota_user: nil, options: nil, &block)
1577
+ command = make_simple_command(:get, 'v1/{+resource}:getIamPolicy', options)
1578
+ command.response_representation = Google::Apis::GkebackupV1::Policy::Representation
1579
+ command.response_class = Google::Apis::GkebackupV1::Policy
1580
+ command.params['resource'] = resource unless resource.nil?
1581
+ command.query['options.requestedPolicyVersion'] = options_requested_policy_version unless options_requested_policy_version.nil?
1582
+ command.query['fields'] = fields unless fields.nil?
1583
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1584
+ execute_or_queue_command(command, &block)
1585
+ end
1586
+
1587
+ # Lists the Restores for a given RestorePlan.
1588
+ # @param [String] parent
1589
+ # Required. The RestorePlan that contains the Restores to list. Format: projects/
1590
+ # `project`/locations/`location`/restorePlans/`restore_plan`
1591
+ # @param [String] filter
1592
+ # List filter.
1593
+ # @param [String] order_by
1594
+ # Sort results.
1595
+ # @param [Fixnum] page_size
1596
+ # The target number of results to return in a single response. If not specified,
1597
+ # a default value will be chosen by the service. Note that the response may
1598
+ # inclue a partial list and a caller should only rely on the response's
1599
+ # next_page_token to determine if there are more instances left to be queried.
1600
+ # @param [String] page_token
1601
+ # The value of next_page_token received from a previous `ListRestores` call.
1602
+ # Provide this to retrieve the subsequent page in a multi-page list of results.
1603
+ # When paginating, all other parameters provided to `ListRestores` must match
1604
+ # the call that provided the page token.
1605
+ # @param [String] fields
1606
+ # Selector specifying which fields to include in a partial response.
1607
+ # @param [String] quota_user
1608
+ # Available to use for quota purposes for server-side applications. Can be any
1609
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1610
+ # @param [Google::Apis::RequestOptions] options
1611
+ # Request-specific options
1612
+ #
1613
+ # @yield [result, err] Result & error if block supplied
1614
+ # @yieldparam result [Google::Apis::GkebackupV1::ListRestoresResponse] parsed result object
1615
+ # @yieldparam err [StandardError] error object if request failed
1616
+ #
1617
+ # @return [Google::Apis::GkebackupV1::ListRestoresResponse]
1618
+ #
1619
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1620
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1621
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1622
+ def list_project_location_restore_plan_restores(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
1623
+ command = make_simple_command(:get, 'v1/{+parent}/restores', options)
1624
+ command.response_representation = Google::Apis::GkebackupV1::ListRestoresResponse::Representation
1625
+ command.response_class = Google::Apis::GkebackupV1::ListRestoresResponse
1626
+ command.params['parent'] = parent unless parent.nil?
1627
+ command.query['filter'] = filter unless filter.nil?
1628
+ command.query['orderBy'] = order_by unless order_by.nil?
1629
+ command.query['pageSize'] = page_size unless page_size.nil?
1630
+ command.query['pageToken'] = page_token unless page_token.nil?
1631
+ command.query['fields'] = fields unless fields.nil?
1632
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1633
+ execute_or_queue_command(command, &block)
1634
+ end
1635
+
1636
+ # Update a Restore.
1637
+ # @param [String] name
1638
+ # Output only. The full name of the Restore resource. Format: projects/*/
1639
+ # locations/*/restorePlans/*/restores/*
1640
+ # @param [Google::Apis::GkebackupV1::Restore] restore_object
1641
+ # @param [String] update_mask
1642
+ # This is used to specify the fields to be overwritten in the Restore targeted
1643
+ # for update. The values for each of these updated fields will be taken from the
1644
+ # `restore` provided with this request. Field names are relative to the root of
1645
+ # the resource. If no `update_mask` is provided, all fields in `restore` will be
1646
+ # written to the target Restore resource. Note that OUTPUT_ONLY and IMMUTABLE
1647
+ # fields in `restore` are ignored and are not used to update the target Restore.
1648
+ # @param [String] fields
1649
+ # Selector specifying which fields to include in a partial response.
1650
+ # @param [String] quota_user
1651
+ # Available to use for quota purposes for server-side applications. Can be any
1652
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1653
+ # @param [Google::Apis::RequestOptions] options
1654
+ # Request-specific options
1655
+ #
1656
+ # @yield [result, err] Result & error if block supplied
1657
+ # @yieldparam result [Google::Apis::GkebackupV1::GoogleLongrunningOperation] parsed result object
1658
+ # @yieldparam err [StandardError] error object if request failed
1659
+ #
1660
+ # @return [Google::Apis::GkebackupV1::GoogleLongrunningOperation]
1661
+ #
1662
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1663
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1664
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1665
+ def patch_project_location_restore_plan_restore(name, restore_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
1666
+ command = make_simple_command(:patch, 'v1/{+name}', options)
1667
+ command.request_representation = Google::Apis::GkebackupV1::Restore::Representation
1668
+ command.request_object = restore_object
1669
+ command.response_representation = Google::Apis::GkebackupV1::GoogleLongrunningOperation::Representation
1670
+ command.response_class = Google::Apis::GkebackupV1::GoogleLongrunningOperation
1671
+ command.params['name'] = name unless name.nil?
1672
+ command.query['updateMask'] = update_mask unless update_mask.nil?
1673
+ command.query['fields'] = fields unless fields.nil?
1674
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1675
+ execute_or_queue_command(command, &block)
1676
+ end
1677
+
1678
+ # Sets the access control policy on the specified resource. Replaces any
1679
+ # existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `
1680
+ # PERMISSION_DENIED` errors.
1681
+ # @param [String] resource
1682
+ # REQUIRED: The resource for which the policy is being specified. See the
1683
+ # operation documentation for the appropriate value for this field.
1684
+ # @param [Google::Apis::GkebackupV1::SetIamPolicyRequest] set_iam_policy_request_object
1685
+ # @param [String] fields
1686
+ # Selector specifying which fields to include in a partial response.
1687
+ # @param [String] quota_user
1688
+ # Available to use for quota purposes for server-side applications. Can be any
1689
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1690
+ # @param [Google::Apis::RequestOptions] options
1691
+ # Request-specific options
1692
+ #
1693
+ # @yield [result, err] Result & error if block supplied
1694
+ # @yieldparam result [Google::Apis::GkebackupV1::Policy] parsed result object
1695
+ # @yieldparam err [StandardError] error object if request failed
1696
+ #
1697
+ # @return [Google::Apis::GkebackupV1::Policy]
1698
+ #
1699
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1700
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1701
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1702
+ def set_restore_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1703
+ command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options)
1704
+ command.request_representation = Google::Apis::GkebackupV1::SetIamPolicyRequest::Representation
1705
+ command.request_object = set_iam_policy_request_object
1706
+ command.response_representation = Google::Apis::GkebackupV1::Policy::Representation
1707
+ command.response_class = Google::Apis::GkebackupV1::Policy
1708
+ command.params['resource'] = resource unless resource.nil?
1709
+ command.query['fields'] = fields unless fields.nil?
1710
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1711
+ execute_or_queue_command(command, &block)
1712
+ end
1713
+
1714
+ # Returns permissions that a caller has on the specified resource. If the
1715
+ # resource does not exist, this will return an empty set of permissions, not a `
1716
+ # NOT_FOUND` error. Note: This operation is designed to be used for building
1717
+ # permission-aware UIs and command-line tools, not for authorization checking.
1718
+ # This operation may "fail open" without warning.
1719
+ # @param [String] resource
1720
+ # REQUIRED: The resource for which the policy detail is being requested. See the
1721
+ # operation documentation for the appropriate value for this field.
1722
+ # @param [Google::Apis::GkebackupV1::TestIamPermissionsRequest] test_iam_permissions_request_object
1723
+ # @param [String] fields
1724
+ # Selector specifying which fields to include in a partial response.
1725
+ # @param [String] quota_user
1726
+ # Available to use for quota purposes for server-side applications. Can be any
1727
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1728
+ # @param [Google::Apis::RequestOptions] options
1729
+ # Request-specific options
1730
+ #
1731
+ # @yield [result, err] Result & error if block supplied
1732
+ # @yieldparam result [Google::Apis::GkebackupV1::TestIamPermissionsResponse] parsed result object
1733
+ # @yieldparam err [StandardError] error object if request failed
1734
+ #
1735
+ # @return [Google::Apis::GkebackupV1::TestIamPermissionsResponse]
1736
+ #
1737
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1738
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1739
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1740
+ def test_restore_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1741
+ command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options)
1742
+ command.request_representation = Google::Apis::GkebackupV1::TestIamPermissionsRequest::Representation
1743
+ command.request_object = test_iam_permissions_request_object
1744
+ command.response_representation = Google::Apis::GkebackupV1::TestIamPermissionsResponse::Representation
1745
+ command.response_class = Google::Apis::GkebackupV1::TestIamPermissionsResponse
1746
+ command.params['resource'] = resource unless resource.nil?
1747
+ command.query['fields'] = fields unless fields.nil?
1748
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1749
+ execute_or_queue_command(command, &block)
1750
+ end
1751
+
1752
+ # Retrieve the details of a single VolumeRestore.
1753
+ # @param [String] name
1754
+ # Required. Full name of the VolumeRestore resource. Format: projects/`project`/
1755
+ # locations/`location`/restorePlans/`restore_plan`/restores/`restore`/
1756
+ # volumeRestores/`volume_restore`
1757
+ # @param [String] fields
1758
+ # Selector specifying which fields to include in a partial response.
1759
+ # @param [String] quota_user
1760
+ # Available to use for quota purposes for server-side applications. Can be any
1761
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1762
+ # @param [Google::Apis::RequestOptions] options
1763
+ # Request-specific options
1764
+ #
1765
+ # @yield [result, err] Result & error if block supplied
1766
+ # @yieldparam result [Google::Apis::GkebackupV1::VolumeRestore] parsed result object
1767
+ # @yieldparam err [StandardError] error object if request failed
1768
+ #
1769
+ # @return [Google::Apis::GkebackupV1::VolumeRestore]
1770
+ #
1771
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1772
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1773
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1774
+ def get_project_location_restore_plan_restore_volume_restore(name, fields: nil, quota_user: nil, options: nil, &block)
1775
+ command = make_simple_command(:get, 'v1/{+name}', options)
1776
+ command.response_representation = Google::Apis::GkebackupV1::VolumeRestore::Representation
1777
+ command.response_class = Google::Apis::GkebackupV1::VolumeRestore
1778
+ command.params['name'] = name unless name.nil?
1779
+ command.query['fields'] = fields unless fields.nil?
1780
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1781
+ execute_or_queue_command(command, &block)
1782
+ end
1783
+
1784
+ # Gets the access control policy for a resource. Returns an empty policy if the
1785
+ # resource exists and does not have a policy set.
1786
+ # @param [String] resource
1787
+ # REQUIRED: The resource for which the policy is being requested. See the
1788
+ # operation documentation for the appropriate value for this field.
1789
+ # @param [Fixnum] options_requested_policy_version
1790
+ # Optional. The maximum policy version that will be used to format the policy.
1791
+ # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
1792
+ # rejected. Requests for policies with any conditional role bindings must
1793
+ # specify version 3. Policies with no conditional role bindings may specify any
1794
+ # valid value or leave the field unset. The policy in the response might use the
1795
+ # policy version that you specified, or it might use a lower policy version. For
1796
+ # example, if you specify version 3, but the policy has no conditional role
1797
+ # bindings, the response uses version 1. To learn which resources support
1798
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
1799
+ # google.com/iam/help/conditions/resource-policies).
1800
+ # @param [String] fields
1801
+ # Selector specifying which fields to include in a partial response.
1802
+ # @param [String] quota_user
1803
+ # Available to use for quota purposes for server-side applications. Can be any
1804
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1805
+ # @param [Google::Apis::RequestOptions] options
1806
+ # Request-specific options
1807
+ #
1808
+ # @yield [result, err] Result & error if block supplied
1809
+ # @yieldparam result [Google::Apis::GkebackupV1::Policy] parsed result object
1810
+ # @yieldparam err [StandardError] error object if request failed
1811
+ #
1812
+ # @return [Google::Apis::GkebackupV1::Policy]
1813
+ #
1814
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1815
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1816
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1817
+ def get_project_location_restore_plan_restore_volume_restore_iam_policy(resource, options_requested_policy_version: nil, fields: nil, quota_user: nil, options: nil, &block)
1818
+ command = make_simple_command(:get, 'v1/{+resource}:getIamPolicy', options)
1819
+ command.response_representation = Google::Apis::GkebackupV1::Policy::Representation
1820
+ command.response_class = Google::Apis::GkebackupV1::Policy
1821
+ command.params['resource'] = resource unless resource.nil?
1822
+ command.query['options.requestedPolicyVersion'] = options_requested_policy_version unless options_requested_policy_version.nil?
1823
+ command.query['fields'] = fields unless fields.nil?
1824
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1825
+ execute_or_queue_command(command, &block)
1826
+ end
1827
+
1828
+ # Lists the VolumeRestores for a given Restore.
1829
+ # @param [String] parent
1830
+ # Required. The Restore that contains the VolumeRestores to list. Format:
1831
+ # projects/`project`/locations/`location`/restorePlans/`restore_plan`/restores/`
1832
+ # restore`
1833
+ # @param [String] filter
1834
+ # List filter.
1835
+ # @param [String] order_by
1836
+ # Sort results.
1837
+ # @param [Fixnum] page_size
1838
+ # The target number of results to return in a single response. If not specified,
1839
+ # a default value will be chosen by the service. Note that the response may
1840
+ # inclue a partial list and a caller should only rely on the response's
1841
+ # next_page_token to determine if there are more instances left to be queried.
1842
+ # @param [String] page_token
1843
+ # The value of next_page_token received from a previous `ListVolumeRestores`
1844
+ # call. Provide this to retrieve the subsequent page in a multi-page list of
1845
+ # results. When paginating, all other parameters provided to `ListVolumeRestores`
1846
+ # must match the call that provided the page token.
1847
+ # @param [String] fields
1848
+ # Selector specifying which fields to include in a partial response.
1849
+ # @param [String] quota_user
1850
+ # Available to use for quota purposes for server-side applications. Can be any
1851
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1852
+ # @param [Google::Apis::RequestOptions] options
1853
+ # Request-specific options
1854
+ #
1855
+ # @yield [result, err] Result & error if block supplied
1856
+ # @yieldparam result [Google::Apis::GkebackupV1::ListVolumeRestoresResponse] parsed result object
1857
+ # @yieldparam err [StandardError] error object if request failed
1858
+ #
1859
+ # @return [Google::Apis::GkebackupV1::ListVolumeRestoresResponse]
1860
+ #
1861
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1862
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1863
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1864
+ def list_project_location_restore_plan_restore_volume_restores(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
1865
+ command = make_simple_command(:get, 'v1/{+parent}/volumeRestores', options)
1866
+ command.response_representation = Google::Apis::GkebackupV1::ListVolumeRestoresResponse::Representation
1867
+ command.response_class = Google::Apis::GkebackupV1::ListVolumeRestoresResponse
1868
+ command.params['parent'] = parent unless parent.nil?
1869
+ command.query['filter'] = filter unless filter.nil?
1870
+ command.query['orderBy'] = order_by unless order_by.nil?
1871
+ command.query['pageSize'] = page_size unless page_size.nil?
1872
+ command.query['pageToken'] = page_token unless page_token.nil?
1873
+ command.query['fields'] = fields unless fields.nil?
1874
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1875
+ execute_or_queue_command(command, &block)
1876
+ end
1877
+
1878
+ # Sets the access control policy on the specified resource. Replaces any
1879
+ # existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `
1880
+ # PERMISSION_DENIED` errors.
1881
+ # @param [String] resource
1882
+ # REQUIRED: The resource for which the policy is being specified. See the
1883
+ # operation documentation for the appropriate value for this field.
1884
+ # @param [Google::Apis::GkebackupV1::SetIamPolicyRequest] set_iam_policy_request_object
1885
+ # @param [String] fields
1886
+ # Selector specifying which fields to include in a partial response.
1887
+ # @param [String] quota_user
1888
+ # Available to use for quota purposes for server-side applications. Can be any
1889
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1890
+ # @param [Google::Apis::RequestOptions] options
1891
+ # Request-specific options
1892
+ #
1893
+ # @yield [result, err] Result & error if block supplied
1894
+ # @yieldparam result [Google::Apis::GkebackupV1::Policy] parsed result object
1895
+ # @yieldparam err [StandardError] error object if request failed
1896
+ #
1897
+ # @return [Google::Apis::GkebackupV1::Policy]
1898
+ #
1899
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1900
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1901
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1902
+ def set_volume_restore_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1903
+ command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options)
1904
+ command.request_representation = Google::Apis::GkebackupV1::SetIamPolicyRequest::Representation
1905
+ command.request_object = set_iam_policy_request_object
1906
+ command.response_representation = Google::Apis::GkebackupV1::Policy::Representation
1907
+ command.response_class = Google::Apis::GkebackupV1::Policy
1908
+ command.params['resource'] = resource unless resource.nil?
1909
+ command.query['fields'] = fields unless fields.nil?
1910
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1911
+ execute_or_queue_command(command, &block)
1912
+ end
1913
+
1914
+ # Returns permissions that a caller has on the specified resource. If the
1915
+ # resource does not exist, this will return an empty set of permissions, not a `
1916
+ # NOT_FOUND` error. Note: This operation is designed to be used for building
1917
+ # permission-aware UIs and command-line tools, not for authorization checking.
1918
+ # This operation may "fail open" without warning.
1919
+ # @param [String] resource
1920
+ # REQUIRED: The resource for which the policy detail is being requested. See the
1921
+ # operation documentation for the appropriate value for this field.
1922
+ # @param [Google::Apis::GkebackupV1::TestIamPermissionsRequest] test_iam_permissions_request_object
1923
+ # @param [String] fields
1924
+ # Selector specifying which fields to include in a partial response.
1925
+ # @param [String] quota_user
1926
+ # Available to use for quota purposes for server-side applications. Can be any
1927
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1928
+ # @param [Google::Apis::RequestOptions] options
1929
+ # Request-specific options
1930
+ #
1931
+ # @yield [result, err] Result & error if block supplied
1932
+ # @yieldparam result [Google::Apis::GkebackupV1::TestIamPermissionsResponse] parsed result object
1933
+ # @yieldparam err [StandardError] error object if request failed
1934
+ #
1935
+ # @return [Google::Apis::GkebackupV1::TestIamPermissionsResponse]
1936
+ #
1937
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1938
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1939
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1940
+ def test_volume_restore_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1941
+ command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options)
1942
+ command.request_representation = Google::Apis::GkebackupV1::TestIamPermissionsRequest::Representation
1943
+ command.request_object = test_iam_permissions_request_object
1944
+ command.response_representation = Google::Apis::GkebackupV1::TestIamPermissionsResponse::Representation
1945
+ command.response_class = Google::Apis::GkebackupV1::TestIamPermissionsResponse
1946
+ command.params['resource'] = resource unless resource.nil?
1947
+ command.query['fields'] = fields unless fields.nil?
1948
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1949
+ execute_or_queue_command(command, &block)
1950
+ end
1951
+
1952
+ protected
1953
+
1954
+ def apply_command_defaults(command)
1955
+ command.query['key'] = key unless key.nil?
1956
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1957
+ end
1958
+ end
1959
+ end
1960
+ end
1961
+ end