google-cloud-netapp-v1 2.12.2 → 2.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1627,6 +1627,192 @@ module Google
1627
1627
  raise ::Google::Cloud::Error.from_error(e)
1628
1628
  end
1629
1629
 
1630
+ ##
1631
+ # Splits a clone volume from its source volume.
1632
+ # This operation will only work for volumes which have clone_details
1633
+ # set(clones).
1634
+ # For volumes that are not clones, this operation will return an error.
1635
+ #
1636
+ # @overload start_split(request, options = nil)
1637
+ # Pass arguments to `start_split` via a request object, either of type
1638
+ # {::Google::Cloud::NetApp::V1::StartSplitRequest} or an equivalent Hash.
1639
+ #
1640
+ # @param request [::Google::Cloud::NetApp::V1::StartSplitRequest, ::Hash]
1641
+ # A request object representing the call parameters. Required. To specify no
1642
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1643
+ # @param options [::Gapic::CallOptions, ::Hash]
1644
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1645
+ #
1646
+ # @overload start_split(name: nil)
1647
+ # Pass arguments to `start_split` via keyword arguments. Note that at
1648
+ # least one keyword argument is required. To specify no parameters, or to keep all
1649
+ # the default parameter values, pass an empty Hash as a request object (see above).
1650
+ #
1651
+ # @param name [::String]
1652
+ # Required. The full name of the clone volume to be split from its source.
1653
+ # Format: projects/\\{project_number}/locations/\\{location}/volumes/\\{volume_id}
1654
+ #
1655
+ # @yield [response, operation] Access the result along with the RPC operation
1656
+ # @yieldparam response [::Gapic::Operation]
1657
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1658
+ #
1659
+ # @return [::Gapic::Operation]
1660
+ #
1661
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1662
+ #
1663
+ # @example Basic example
1664
+ # require "google/cloud/netapp/v1"
1665
+ #
1666
+ # # Create a client object. The client can be reused for multiple calls.
1667
+ # client = Google::Cloud::NetApp::V1::NetApp::Client.new
1668
+ #
1669
+ # # Create a request. To set request fields, pass in keyword arguments.
1670
+ # request = Google::Cloud::NetApp::V1::StartSplitRequest.new
1671
+ #
1672
+ # # Call the start_split method.
1673
+ # result = client.start_split request
1674
+ #
1675
+ # # The returned object is of type Gapic::Operation. You can use it to
1676
+ # # check the status of an operation, cancel it, or wait for results.
1677
+ # # Here is how to wait for a response.
1678
+ # result.wait_until_done! timeout: 60
1679
+ # if result.response?
1680
+ # p result.response
1681
+ # else
1682
+ # puts "No response received."
1683
+ # end
1684
+ #
1685
+ def start_split request, options = nil
1686
+ raise ::ArgumentError, "request must be provided" if request.nil?
1687
+
1688
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::StartSplitRequest
1689
+
1690
+ # Converts hash and nil to an options object
1691
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1692
+
1693
+ # Customize the options with defaults
1694
+ metadata = @config.rpcs.start_split.metadata.to_h
1695
+
1696
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
1697
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1698
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1699
+ gapic_version: ::Google::Cloud::NetApp::V1::VERSION
1700
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
1701
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1702
+
1703
+ header_params = {}
1704
+ if request.name
1705
+ header_params["name"] = request.name
1706
+ end
1707
+
1708
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1709
+ metadata[:"x-goog-request-params"] ||= request_params_header
1710
+
1711
+ options.apply_defaults timeout: @config.rpcs.start_split.timeout,
1712
+ metadata: metadata,
1713
+ retry_policy: @config.rpcs.start_split.retry_policy
1714
+
1715
+ options.apply_defaults timeout: @config.timeout,
1716
+ metadata: @config.metadata,
1717
+ retry_policy: @config.retry_policy
1718
+
1719
+ @net_app_stub.call_rpc :start_split, request, options: options do |response, operation|
1720
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1721
+ yield response, operation if block_given?
1722
+ throw :response, response
1723
+ end
1724
+ rescue ::GRPC::BadStatus => e
1725
+ raise ::Google::Cloud::Error.from_error(e)
1726
+ end
1727
+
1728
+ ##
1729
+ # Retrieves the current state, progress, and details of a split operation for
1730
+ # a volume. This method is relevant when the volume is a clone. For volumes
1731
+ # that are not clones, this method will return an error.
1732
+ #
1733
+ # @overload get_split_status(request, options = nil)
1734
+ # Pass arguments to `get_split_status` via a request object, either of type
1735
+ # {::Google::Cloud::NetApp::V1::GetSplitStatusRequest} or an equivalent Hash.
1736
+ #
1737
+ # @param request [::Google::Cloud::NetApp::V1::GetSplitStatusRequest, ::Hash]
1738
+ # A request object representing the call parameters. Required. To specify no
1739
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1740
+ # @param options [::Gapic::CallOptions, ::Hash]
1741
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1742
+ #
1743
+ # @overload get_split_status(name: nil)
1744
+ # Pass arguments to `get_split_status` via keyword arguments. Note that at
1745
+ # least one keyword argument is required. To specify no parameters, or to keep all
1746
+ # the default parameter values, pass an empty Hash as a request object (see above).
1747
+ #
1748
+ # @param name [::String]
1749
+ # Required. The full name of the volume.
1750
+ # Format: projects/\\{project_number}/locations/\\{location}/volumes/\\{volume_id}
1751
+ #
1752
+ # @yield [response, operation] Access the result along with the RPC operation
1753
+ # @yieldparam response [::Google::Cloud::NetApp::V1::SplitStatus]
1754
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1755
+ #
1756
+ # @return [::Google::Cloud::NetApp::V1::SplitStatus]
1757
+ #
1758
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1759
+ #
1760
+ # @example Basic example
1761
+ # require "google/cloud/netapp/v1"
1762
+ #
1763
+ # # Create a client object. The client can be reused for multiple calls.
1764
+ # client = Google::Cloud::NetApp::V1::NetApp::Client.new
1765
+ #
1766
+ # # Create a request. To set request fields, pass in keyword arguments.
1767
+ # request = Google::Cloud::NetApp::V1::GetSplitStatusRequest.new
1768
+ #
1769
+ # # Call the get_split_status method.
1770
+ # result = client.get_split_status request
1771
+ #
1772
+ # # The returned object is of type Google::Cloud::NetApp::V1::SplitStatus.
1773
+ # p result
1774
+ #
1775
+ def get_split_status request, options = nil
1776
+ raise ::ArgumentError, "request must be provided" if request.nil?
1777
+
1778
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::GetSplitStatusRequest
1779
+
1780
+ # Converts hash and nil to an options object
1781
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1782
+
1783
+ # Customize the options with defaults
1784
+ metadata = @config.rpcs.get_split_status.metadata.to_h
1785
+
1786
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
1787
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1788
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1789
+ gapic_version: ::Google::Cloud::NetApp::V1::VERSION
1790
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
1791
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1792
+
1793
+ header_params = {}
1794
+ if request.name
1795
+ header_params["name"] = request.name
1796
+ end
1797
+
1798
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1799
+ metadata[:"x-goog-request-params"] ||= request_params_header
1800
+
1801
+ options.apply_defaults timeout: @config.rpcs.get_split_status.timeout,
1802
+ metadata: metadata,
1803
+ retry_policy: @config.rpcs.get_split_status.retry_policy
1804
+
1805
+ options.apply_defaults timeout: @config.timeout,
1806
+ metadata: @config.metadata,
1807
+ retry_policy: @config.retry_policy
1808
+
1809
+ @net_app_stub.call_rpc :get_split_status, request, options: options do |response, operation|
1810
+ yield response, operation if block_given?
1811
+ end
1812
+ rescue ::GRPC::BadStatus => e
1813
+ raise ::Google::Cloud::Error.from_error(e)
1814
+ end
1815
+
1630
1816
  ##
1631
1817
  # Establish volume peering. This is used to establish cluster and svm
1632
1818
  # peerings between the GCNV and OnPrem clusters.
@@ -1656,7 +1842,7 @@ module Google
1656
1842
  # Required. Name of the user's local source vserver svm to be peered with the
1657
1843
  # destination vserver svm.
1658
1844
  # @param peer_ip_addresses [::Array<::String>]
1659
- # Optional. List of IPv4 ip addresses to be used for peering.
1845
+ # Optional. List of IPv4 IP addresses to be used for peering.
1660
1846
  # @param peer_volume_name [::String]
1661
1847
  # Required. Name of the user's local source volume to be peered with the
1662
1848
  # destination volume.
@@ -6873,7 +7059,7 @@ module Google
6873
7059
  end
6874
7060
 
6875
7061
  ##
6876
- # `ExecuteOntapPost` dispatches the ONTAP `POST` request to the
7062
+ # `ExecuteOntapPost` sends the ONTAP `POST` request to the
6877
7063
  # `StoragePool` cluster.
6878
7064
  #
6879
7065
  # @overload execute_ontap_post(request, options = nil)
@@ -6904,7 +7090,7 @@ module Google
6904
7090
  # }
6905
7091
  # ```
6906
7092
  # @param ontap_path [::String]
6907
- # Required. The resource path of the ONTAP resource.
7093
+ # Required. The path of the ONTAP resource.
6908
7094
  # Format:
6909
7095
  # `projects/{project_number}/locations/{location_id}/storagePools/{storage_pool_id}/ontap/{ontap_resource_path}`.
6910
7096
  # For example:
@@ -6975,7 +7161,7 @@ module Google
6975
7161
  end
6976
7162
 
6977
7163
  ##
6978
- # `ExecuteOntapGet` dispatches the ONTAP `GET` request to the
7164
+ # `ExecuteOntapGet` sends the ONTAP `GET` request to the
6979
7165
  # `StoragePool` cluster.
6980
7166
  #
6981
7167
  # @overload execute_ontap_get(request, options = nil)
@@ -7065,7 +7251,7 @@ module Google
7065
7251
  end
7066
7252
 
7067
7253
  ##
7068
- # `ExecuteOntapDelete` dispatches the ONTAP `DELETE` request to the
7254
+ # `ExecuteOntapDelete` sends the ONTAP `DELETE` request to the
7069
7255
  # `StoragePool` cluster.
7070
7256
  #
7071
7257
  # @overload execute_ontap_delete(request, options = nil)
@@ -7155,7 +7341,7 @@ module Google
7155
7341
  end
7156
7342
 
7157
7343
  ##
7158
- # `ExecuteOntapPatch` dispatches the ONTAP `PATCH` request to the
7344
+ # `ExecuteOntapPatch` sends the ONTAP `PATCH` request to the
7159
7345
  # `StoragePool` cluster.
7160
7346
  #
7161
7347
  # @overload execute_ontap_patch(request, options = nil)
@@ -7256,6 +7442,313 @@ module Google
7256
7442
  raise ::Google::Cloud::Error.from_error(e)
7257
7443
  end
7258
7444
 
7445
+ ##
7446
+ # Restores a backup to an ONTAP-mode volume.
7447
+ #
7448
+ # @overload restore_volume(request, options = nil)
7449
+ # Pass arguments to `restore_volume` via a request object, either of type
7450
+ # {::Google::Cloud::NetApp::V1::RestoreVolumeRequest} or an equivalent Hash.
7451
+ #
7452
+ # @param request [::Google::Cloud::NetApp::V1::RestoreVolumeRequest, ::Hash]
7453
+ # A request object representing the call parameters. Required. To specify no
7454
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
7455
+ # @param options [::Gapic::CallOptions, ::Hash]
7456
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
7457
+ #
7458
+ # @overload restore_volume(backup_source: nil, ontap_volume_target: nil, name: nil)
7459
+ # Pass arguments to `restore_volume` via keyword arguments. Note that at
7460
+ # least one keyword argument is required. To specify no parameters, or to keep all
7461
+ # the default parameter values, pass an empty Hash as a request object (see above).
7462
+ #
7463
+ # @param backup_source [::Google::Cloud::NetApp::V1::BackupSource, ::Hash]
7464
+ # The backup source of the restore operation.
7465
+ # @param ontap_volume_target [::Google::Cloud::NetApp::V1::OntapVolumeTarget, ::Hash]
7466
+ # The ONTAP volume target of the restore operation.
7467
+ # @param name [::String]
7468
+ # Required. The resource name of the ONTAP mode storage pool, in the format
7469
+ # of `projects/{project}/locations/{location}/storagePools/{storage_pool}`
7470
+ #
7471
+ # @yield [response, operation] Access the result along with the RPC operation
7472
+ # @yieldparam response [::Gapic::Operation]
7473
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
7474
+ #
7475
+ # @return [::Gapic::Operation]
7476
+ #
7477
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
7478
+ #
7479
+ # @example Basic example
7480
+ # require "google/cloud/netapp/v1"
7481
+ #
7482
+ # # Create a client object. The client can be reused for multiple calls.
7483
+ # client = Google::Cloud::NetApp::V1::NetApp::Client.new
7484
+ #
7485
+ # # Create a request. To set request fields, pass in keyword arguments.
7486
+ # request = Google::Cloud::NetApp::V1::RestoreVolumeRequest.new
7487
+ #
7488
+ # # Call the restore_volume method.
7489
+ # result = client.restore_volume request
7490
+ #
7491
+ # # The returned object is of type Gapic::Operation. You can use it to
7492
+ # # check the status of an operation, cancel it, or wait for results.
7493
+ # # Here is how to wait for a response.
7494
+ # result.wait_until_done! timeout: 60
7495
+ # if result.response?
7496
+ # p result.response
7497
+ # else
7498
+ # puts "No response received."
7499
+ # end
7500
+ #
7501
+ def restore_volume request, options = nil
7502
+ raise ::ArgumentError, "request must be provided" if request.nil?
7503
+
7504
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::RestoreVolumeRequest
7505
+
7506
+ # Converts hash and nil to an options object
7507
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
7508
+
7509
+ # Customize the options with defaults
7510
+ metadata = @config.rpcs.restore_volume.metadata.to_h
7511
+
7512
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
7513
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
7514
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
7515
+ gapic_version: ::Google::Cloud::NetApp::V1::VERSION
7516
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
7517
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
7518
+
7519
+ header_params = {}
7520
+ if request.name
7521
+ header_params["name"] = request.name
7522
+ end
7523
+
7524
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
7525
+ metadata[:"x-goog-request-params"] ||= request_params_header
7526
+
7527
+ options.apply_defaults timeout: @config.rpcs.restore_volume.timeout,
7528
+ metadata: metadata,
7529
+ retry_policy: @config.rpcs.restore_volume.retry_policy
7530
+
7531
+ options.apply_defaults timeout: @config.timeout,
7532
+ metadata: @config.metadata,
7533
+ retry_policy: @config.retry_policy
7534
+
7535
+ @net_app_stub.call_rpc :restore_volume, request, options: options do |response, operation|
7536
+ response = ::Gapic::Operation.new response, @operations_client, options: options
7537
+ yield response, operation if block_given?
7538
+ throw :response, response
7539
+ end
7540
+ rescue ::GRPC::BadStatus => e
7541
+ raise ::Google::Cloud::Error.from_error(e)
7542
+ end
7543
+
7544
+ ##
7545
+ # Lists backup configurations for all volumes in an ONTAP-mode Storage Pool.
7546
+ #
7547
+ # @overload list_backup_configs(request, options = nil)
7548
+ # Pass arguments to `list_backup_configs` via a request object, either of type
7549
+ # {::Google::Cloud::NetApp::V1::ListBackupConfigsRequest} or an equivalent Hash.
7550
+ #
7551
+ # @param request [::Google::Cloud::NetApp::V1::ListBackupConfigsRequest, ::Hash]
7552
+ # A request object representing the call parameters. Required. To specify no
7553
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
7554
+ # @param options [::Gapic::CallOptions, ::Hash]
7555
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
7556
+ #
7557
+ # @overload list_backup_configs(parent: nil, page_size: nil, page_token: nil, order_by: nil, filter: nil)
7558
+ # Pass arguments to `list_backup_configs` via keyword arguments. Note that at
7559
+ # least one keyword argument is required. To specify no parameters, or to keep all
7560
+ # the default parameter values, pass an empty Hash as a request object (see above).
7561
+ #
7562
+ # @param parent [::String]
7563
+ # Required. The ONTAP StoragePool for which to retrieve backup configuration
7564
+ # information, in the format
7565
+ # `projects/{project}/locations/{location}/storagePools/{storage_pool}`.
7566
+ # @param page_size [::Integer]
7567
+ # Optional. The maximum number of items to return. The service may return
7568
+ # fewer than this value. The maximum value is 1000; values above 1000 will be
7569
+ # coerced to 1000. If unspecified or set to 0, a default of 50 will be used.
7570
+ # @param page_token [::String]
7571
+ # Optional. The next_page_token value to use if there are additional
7572
+ # results to retrieve for this list request.
7573
+ # @param order_by [::String]
7574
+ # Optional. Sort results. Supported values are "volume_id" or ""
7575
+ # @param filter [::String]
7576
+ # Optional. The standard list filter.
7577
+ #
7578
+ # @yield [response, operation] Access the result along with the RPC operation
7579
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::NetApp::V1::VolumeBackupConfig>]
7580
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
7581
+ #
7582
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::NetApp::V1::VolumeBackupConfig>]
7583
+ #
7584
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
7585
+ #
7586
+ # @example Basic example
7587
+ # require "google/cloud/netapp/v1"
7588
+ #
7589
+ # # Create a client object. The client can be reused for multiple calls.
7590
+ # client = Google::Cloud::NetApp::V1::NetApp::Client.new
7591
+ #
7592
+ # # Create a request. To set request fields, pass in keyword arguments.
7593
+ # request = Google::Cloud::NetApp::V1::ListBackupConfigsRequest.new
7594
+ #
7595
+ # # Call the list_backup_configs method.
7596
+ # result = client.list_backup_configs request
7597
+ #
7598
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
7599
+ # # over elements, and API calls will be issued to fetch pages as needed.
7600
+ # result.each do |item|
7601
+ # # Each element is of type ::Google::Cloud::NetApp::V1::VolumeBackupConfig.
7602
+ # p item
7603
+ # end
7604
+ #
7605
+ def list_backup_configs request, options = nil
7606
+ raise ::ArgumentError, "request must be provided" if request.nil?
7607
+
7608
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::ListBackupConfigsRequest
7609
+
7610
+ # Converts hash and nil to an options object
7611
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
7612
+
7613
+ # Customize the options with defaults
7614
+ metadata = @config.rpcs.list_backup_configs.metadata.to_h
7615
+
7616
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
7617
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
7618
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
7619
+ gapic_version: ::Google::Cloud::NetApp::V1::VERSION
7620
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
7621
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
7622
+
7623
+ header_params = {}
7624
+ if request.parent
7625
+ header_params["parent"] = request.parent
7626
+ end
7627
+
7628
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
7629
+ metadata[:"x-goog-request-params"] ||= request_params_header
7630
+
7631
+ options.apply_defaults timeout: @config.rpcs.list_backup_configs.timeout,
7632
+ metadata: metadata,
7633
+ retry_policy: @config.rpcs.list_backup_configs.retry_policy
7634
+
7635
+ options.apply_defaults timeout: @config.timeout,
7636
+ metadata: @config.metadata,
7637
+ retry_policy: @config.retry_policy
7638
+
7639
+ @net_app_stub.call_rpc :list_backup_configs, request, options: options do |response, operation|
7640
+ response = ::Gapic::PagedEnumerable.new @net_app_stub, :list_backup_configs, request, response, operation, options
7641
+ yield response, operation if block_given?
7642
+ throw :response, response
7643
+ end
7644
+ rescue ::GRPC::BadStatus => e
7645
+ raise ::Google::Cloud::Error.from_error(e)
7646
+ end
7647
+
7648
+ ##
7649
+ # Updates the backup configuration for an ONTAP-mode volume.
7650
+ #
7651
+ # @overload update_backup_config(request, options = nil)
7652
+ # Pass arguments to `update_backup_config` via a request object, either of type
7653
+ # {::Google::Cloud::NetApp::V1::UpdateBackupConfigRequest} or an equivalent Hash.
7654
+ #
7655
+ # @param request [::Google::Cloud::NetApp::V1::UpdateBackupConfigRequest, ::Hash]
7656
+ # A request object representing the call parameters. Required. To specify no
7657
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
7658
+ # @param options [::Gapic::CallOptions, ::Hash]
7659
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
7660
+ #
7661
+ # @overload update_backup_config(name: nil, volume_uuid: nil, backup_config: nil, update_mask: nil)
7662
+ # Pass arguments to `update_backup_config` via keyword arguments. Note that at
7663
+ # least one keyword argument is required. To specify no parameters, or to keep all
7664
+ # the default parameter values, pass an empty Hash as a request object (see above).
7665
+ #
7666
+ # @param name [::String]
7667
+ # Required. The resource name of the StoragePool, in the format:
7668
+ # projects/\\{projectNumber}/locations/\\{locationId}/storagePools/\\{poolId}
7669
+ # @param volume_uuid [::String]
7670
+ # Required. The UUID of the ONTAP-mode volume.
7671
+ # @param backup_config [::Google::Cloud::NetApp::V1::BackupConfig, ::Hash]
7672
+ # Required. Backup configuration to apply.
7673
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
7674
+ # Required. Field mask is used to specify the fields to be overwritten in the
7675
+ # BackupConfig for the Volume.
7676
+ # The fields specified in the update_mask are relative to the resource, not
7677
+ # the full request. A field will be overwritten if it is in the mask.
7678
+ #
7679
+ # @yield [response, operation] Access the result along with the RPC operation
7680
+ # @yieldparam response [::Gapic::Operation]
7681
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
7682
+ #
7683
+ # @return [::Gapic::Operation]
7684
+ #
7685
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
7686
+ #
7687
+ # @example Basic example
7688
+ # require "google/cloud/netapp/v1"
7689
+ #
7690
+ # # Create a client object. The client can be reused for multiple calls.
7691
+ # client = Google::Cloud::NetApp::V1::NetApp::Client.new
7692
+ #
7693
+ # # Create a request. To set request fields, pass in keyword arguments.
7694
+ # request = Google::Cloud::NetApp::V1::UpdateBackupConfigRequest.new
7695
+ #
7696
+ # # Call the update_backup_config method.
7697
+ # result = client.update_backup_config request
7698
+ #
7699
+ # # The returned object is of type Gapic::Operation. You can use it to
7700
+ # # check the status of an operation, cancel it, or wait for results.
7701
+ # # Here is how to wait for a response.
7702
+ # result.wait_until_done! timeout: 60
7703
+ # if result.response?
7704
+ # p result.response
7705
+ # else
7706
+ # puts "No response received."
7707
+ # end
7708
+ #
7709
+ def update_backup_config request, options = nil
7710
+ raise ::ArgumentError, "request must be provided" if request.nil?
7711
+
7712
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::UpdateBackupConfigRequest
7713
+
7714
+ # Converts hash and nil to an options object
7715
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
7716
+
7717
+ # Customize the options with defaults
7718
+ metadata = @config.rpcs.update_backup_config.metadata.to_h
7719
+
7720
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
7721
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
7722
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
7723
+ gapic_version: ::Google::Cloud::NetApp::V1::VERSION
7724
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
7725
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
7726
+
7727
+ header_params = {}
7728
+ if request.name
7729
+ header_params["name"] = request.name
7730
+ end
7731
+
7732
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
7733
+ metadata[:"x-goog-request-params"] ||= request_params_header
7734
+
7735
+ options.apply_defaults timeout: @config.rpcs.update_backup_config.timeout,
7736
+ metadata: metadata,
7737
+ retry_policy: @config.rpcs.update_backup_config.retry_policy
7738
+
7739
+ options.apply_defaults timeout: @config.timeout,
7740
+ metadata: @config.metadata,
7741
+ retry_policy: @config.retry_policy
7742
+
7743
+ @net_app_stub.call_rpc :update_backup_config, request, options: options do |response, operation|
7744
+ response = ::Gapic::Operation.new response, @operations_client, options: options
7745
+ yield response, operation if block_given?
7746
+ throw :response, response
7747
+ end
7748
+ rescue ::GRPC::BadStatus => e
7749
+ raise ::Google::Cloud::Error.from_error(e)
7750
+ end
7751
+
7259
7752
  ##
7260
7753
  # Configuration class for the NetApp API.
7261
7754
  #
@@ -7507,6 +8000,16 @@ module Google
7507
8000
  #
7508
8001
  attr_reader :revert_volume
7509
8002
  ##
8003
+ # RPC-specific configuration for `start_split`
8004
+ # @return [::Gapic::Config::Method]
8005
+ #
8006
+ attr_reader :start_split
8007
+ ##
8008
+ # RPC-specific configuration for `get_split_status`
8009
+ # @return [::Gapic::Config::Method]
8010
+ #
8011
+ attr_reader :get_split_status
8012
+ ##
7510
8013
  # RPC-specific configuration for `establish_volume_peering`
7511
8014
  # @return [::Gapic::Config::Method]
7512
8015
  #
@@ -7796,6 +8299,21 @@ module Google
7796
8299
  # @return [::Gapic::Config::Method]
7797
8300
  #
7798
8301
  attr_reader :execute_ontap_patch
8302
+ ##
8303
+ # RPC-specific configuration for `restore_volume`
8304
+ # @return [::Gapic::Config::Method]
8305
+ #
8306
+ attr_reader :restore_volume
8307
+ ##
8308
+ # RPC-specific configuration for `list_backup_configs`
8309
+ # @return [::Gapic::Config::Method]
8310
+ #
8311
+ attr_reader :list_backup_configs
8312
+ ##
8313
+ # RPC-specific configuration for `update_backup_config`
8314
+ # @return [::Gapic::Config::Method]
8315
+ #
8316
+ attr_reader :update_backup_config
7799
8317
 
7800
8318
  # @private
7801
8319
  def initialize parent_rpcs = nil
@@ -7825,6 +8343,10 @@ module Google
7825
8343
  @delete_volume = ::Gapic::Config::Method.new delete_volume_config
7826
8344
  revert_volume_config = parent_rpcs.revert_volume if parent_rpcs.respond_to? :revert_volume
7827
8345
  @revert_volume = ::Gapic::Config::Method.new revert_volume_config
8346
+ start_split_config = parent_rpcs.start_split if parent_rpcs.respond_to? :start_split
8347
+ @start_split = ::Gapic::Config::Method.new start_split_config
8348
+ get_split_status_config = parent_rpcs.get_split_status if parent_rpcs.respond_to? :get_split_status
8349
+ @get_split_status = ::Gapic::Config::Method.new get_split_status_config
7828
8350
  establish_volume_peering_config = parent_rpcs.establish_volume_peering if parent_rpcs.respond_to? :establish_volume_peering
7829
8351
  @establish_volume_peering = ::Gapic::Config::Method.new establish_volume_peering_config
7830
8352
  list_snapshots_config = parent_rpcs.list_snapshots if parent_rpcs.respond_to? :list_snapshots
@@ -7941,6 +8463,12 @@ module Google
7941
8463
  @execute_ontap_delete = ::Gapic::Config::Method.new execute_ontap_delete_config
7942
8464
  execute_ontap_patch_config = parent_rpcs.execute_ontap_patch if parent_rpcs.respond_to? :execute_ontap_patch
7943
8465
  @execute_ontap_patch = ::Gapic::Config::Method.new execute_ontap_patch_config
8466
+ restore_volume_config = parent_rpcs.restore_volume if parent_rpcs.respond_to? :restore_volume
8467
+ @restore_volume = ::Gapic::Config::Method.new restore_volume_config
8468
+ list_backup_configs_config = parent_rpcs.list_backup_configs if parent_rpcs.respond_to? :list_backup_configs
8469
+ @list_backup_configs = ::Gapic::Config::Method.new list_backup_configs_config
8470
+ update_backup_config_config = parent_rpcs.update_backup_config if parent_rpcs.respond_to? :update_backup_config
8471
+ @update_backup_config = ::Gapic::Config::Method.new update_backup_config_config
7944
8472
 
7945
8473
  yield self if block_given?
7946
8474
  end
@@ -102,6 +102,27 @@ module Google
102
102
  "projects/#{project}/locations/#{location}/backupVaults/#{backup_vault}"
103
103
  end
104
104
 
105
+ ##
106
+ # Create a fully-qualified CryptoKey resource string.
107
+ #
108
+ # The resource will be in the following format:
109
+ #
110
+ # `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`
111
+ #
112
+ # @param project [String]
113
+ # @param location [String]
114
+ # @param key_ring [String]
115
+ # @param crypto_key [String]
116
+ #
117
+ # @return [::String]
118
+ def crypto_key_path project:, location:, key_ring:, crypto_key:
119
+ raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
120
+ raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
121
+ raise ::ArgumentError, "key_ring cannot contain /" if key_ring.to_s.include? "/"
122
+
123
+ "projects/#{project}/locations/#{location}/keyRings/#{key_ring}/cryptoKeys/#{crypto_key}"
124
+ end
125
+
105
126
  ##
106
127
  # Create a fully-qualified HostGroup resource string.
107
128
  #