google-apis-gkebackup_v1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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