com.azure.resourcemanager.netapp.models.Volumes Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-resourcemanager-netapp Show documentation
Show all versions of azure-resourcemanager-netapp Show documentation
This package contains Microsoft Azure SDK for NetAppFiles Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Microsoft NetApp Files Azure Resource Provider specification. Package tag package-2024-03.
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.
package com.azure.resourcemanager.netapp.models;
import com.azure.core.http.rest.PagedIterable;
import com.azure.core.http.rest.Response;
import com.azure.core.util.Context;
/**
* Resource collection API of Volumes.
*/
public interface Volumes {
/**
* Describe all volumes
*
* List all volumes within the capacity pool.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return list of volume resources as paginated response with {@link PagedIterable}.
*/
PagedIterable list(String resourceGroupName, String accountName, String poolName);
/**
* Describe all volumes
*
* List all volumes within the capacity pool.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return list of volume resources as paginated response with {@link PagedIterable}.
*/
PagedIterable list(String resourceGroupName, String accountName, String poolName, Context context);
/**
* Describe a volume
*
* Get the details of the specified volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the details of the specified volume along with {@link Response}.
*/
Response getWithResponse(String resourceGroupName, String accountName, String poolName, String volumeName,
Context context);
/**
* Describe a volume
*
* Get the details of the specified volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the details of the specified volume.
*/
Volume get(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Delete a volume
*
* Delete the specified volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void delete(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Delete a volume
*
* Delete the specified volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param forceDelete An option to force delete the volume. Will cleanup resources connected to the particular
* volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void delete(String resourceGroupName, String accountName, String poolName, String volumeName, Boolean forceDelete,
Context context);
/**
* Populate Availability Zone
*
* This operation will populate availability zone information for a volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return volume resource.
*/
Volume populateAvailabilityZone(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Populate Availability Zone
*
* This operation will populate availability zone information for a volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return volume resource.
*/
Volume populateAvailabilityZone(String resourceGroupName, String accountName, String poolName, String volumeName,
Context context);
/**
* Revert a volume to one of its snapshots
*
* Revert a volume to the snapshot specified in the body.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body Object for snapshot to revert supplied in the body of the operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void revert(String resourceGroupName, String accountName, String poolName, String volumeName, VolumeRevert body);
/**
* Revert a volume to one of its snapshots
*
* Revert a volume to the snapshot specified in the body.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body Object for snapshot to revert supplied in the body of the operation.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void revert(String resourceGroupName, String accountName, String poolName, String volumeName, VolumeRevert body,
Context context);
/**
* Reset cifs password
*
* Reset cifs password from volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void resetCifsPassword(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Reset cifs password
*
* Reset cifs password from volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void resetCifsPassword(String resourceGroupName, String accountName, String poolName, String volumeName,
Context context);
/**
* Split clone from parent volume
*
* Split operation to convert clone volume to an independent volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void splitCloneFromParent(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Split clone from parent volume
*
* Split operation to convert clone volume to an independent volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void splitCloneFromParent(String resourceGroupName, String accountName, String poolName, String volumeName,
Context context);
/**
* Break file locks
*
* Break all the file locks on a volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void breakFileLocks(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Break file locks
*
* Break all the file locks on a volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body Optional body to provide the ability to clear file locks with selected options.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void breakFileLocks(String resourceGroupName, String accountName, String poolName, String volumeName,
BreakFileLocksRequest body, Context context);
/**
* Get Group Id List for LDAP User
*
* Returns the list of group Ids for a specific LDAP User.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body Returns group Id list for a specific LDAP user.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return group Id list for Ldap user.
*/
GetGroupIdListForLdapUserResponse listGetGroupIdListForLdapUser(String resourceGroupName, String accountName,
String poolName, String volumeName, GetGroupIdListForLdapUserRequest body);
/**
* Get Group Id List for LDAP User
*
* Returns the list of group Ids for a specific LDAP User.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body Returns group Id list for a specific LDAP user.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return group Id list for Ldap user.
*/
GetGroupIdListForLdapUserResponse listGetGroupIdListForLdapUser(String resourceGroupName, String accountName,
String poolName, String volumeName, GetGroupIdListForLdapUserRequest body, Context context);
/**
* Lists Quota Report for the volume
*
* Returns report of quotas for the volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return quota Report for volume.
*/
ListQuotaReportResponse listQuotaReport(String resourceGroupName, String accountName, String poolName,
String volumeName);
/**
* Lists Quota Report for the volume
*
* Returns report of quotas for the volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return quota Report for volume.
*/
ListQuotaReportResponse listQuotaReport(String resourceGroupName, String accountName, String poolName,
String volumeName, Context context);
/**
* Break volume replication
*
* Break the replication connection on the destination volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void breakReplication(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Break volume replication
*
* Break the replication connection on the destination volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body Optional body to force break the replication.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void breakReplication(String resourceGroupName, String accountName, String poolName, String volumeName,
BreakReplicationRequest body, Context context);
/**
* Re-establish volume replication
*
* Re-establish a previously deleted replication between 2 volumes that have a common ad-hoc or policy-based
* snapshots.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body body for the id of the source volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void reestablishReplication(String resourceGroupName, String accountName, String poolName, String volumeName,
ReestablishReplicationRequest body);
/**
* Re-establish volume replication
*
* Re-establish a previously deleted replication between 2 volumes that have a common ad-hoc or policy-based
* snapshots.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body body for the id of the source volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void reestablishReplication(String resourceGroupName, String accountName, String poolName, String volumeName,
ReestablishReplicationRequest body, Context context);
/**
* Get volume replication status
*
* Get the status of the replication.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the status of the replication along with {@link Response}.
*/
Response replicationStatusWithResponse(String resourceGroupName, String accountName,
String poolName, String volumeName, Context context);
/**
* Get volume replication status
*
* Get the status of the replication.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the status of the replication.
*/
ReplicationStatus replicationStatus(String resourceGroupName, String accountName, String poolName,
String volumeName);
/**
* List replications for volume
*
* List all replications for a specified volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return list Replications as paginated response with {@link PagedIterable}.
*/
PagedIterable listReplications(String resourceGroupName, String accountName, String poolName,
String volumeName);
/**
* List replications for volume
*
* List all replications for a specified volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return list Replications as paginated response with {@link PagedIterable}.
*/
PagedIterable listReplications(String resourceGroupName, String accountName, String poolName,
String volumeName, Context context);
/**
* Resync volume replication
*
* Resync the connection on the destination volume. If the operation is ran on the source volume it will
* reverse-resync the connection and sync from destination to source.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void resyncReplication(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Resync volume replication
*
* Resync the connection on the destination volume. If the operation is ran on the source volume it will
* reverse-resync the connection and sync from destination to source.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void resyncReplication(String resourceGroupName, String accountName, String poolName, String volumeName,
Context context);
/**
* Delete volume replication
*
* Delete the replication connection on the destination volume, and send release to the source replication.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void deleteReplication(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Delete volume replication
*
* Delete the replication connection on the destination volume, and send release to the source replication.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void deleteReplication(String resourceGroupName, String accountName, String poolName, String volumeName,
Context context);
/**
* Authorize source volume replication
*
* Authorize the replication connection on the source volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body Authorize request object supplied in the body of the operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void authorizeReplication(String resourceGroupName, String accountName, String poolName, String volumeName,
AuthorizeRequest body);
/**
* Authorize source volume replication
*
* Authorize the replication connection on the source volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body Authorize request object supplied in the body of the operation.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void authorizeReplication(String resourceGroupName, String accountName, String poolName, String volumeName,
AuthorizeRequest body, Context context);
/**
* ReInitialize volume replication
*
* Re-Initializes the replication connection on the destination volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void reInitializeReplication(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* ReInitialize volume replication
*
* Re-Initializes the replication connection on the destination volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void reInitializeReplication(String resourceGroupName, String accountName, String poolName, String volumeName,
Context context);
/**
* Start Cluster peering
*
* Starts peering the external cluster for this migration volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body Cluster peer request object supplied in the body of the operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return information about cluster peering process.
*/
ClusterPeerCommandResponse peerExternalCluster(String resourceGroupName, String accountName, String poolName,
String volumeName, PeerClusterForVolumeMigrationRequest body);
/**
* Start Cluster peering
*
* Starts peering the external cluster for this migration volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body Cluster peer request object supplied in the body of the operation.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return information about cluster peering process.
*/
ClusterPeerCommandResponse peerExternalCluster(String resourceGroupName, String accountName, String poolName,
String volumeName, PeerClusterForVolumeMigrationRequest body, Context context);
/**
* Start migration process
*
* Starts SVM peering and returns a command to be run on the external ONTAP to accept it. Once the SVM have been
* peered a SnapMirror will be created.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return information about svm peering process.
*/
SvmPeerCommandResponse authorizeExternalReplication(String resourceGroupName, String accountName, String poolName,
String volumeName);
/**
* Start migration process
*
* Starts SVM peering and returns a command to be run on the external ONTAP to accept it. Once the SVM have been
* peered a SnapMirror will be created.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return information about svm peering process.
*/
SvmPeerCommandResponse authorizeExternalReplication(String resourceGroupName, String accountName, String poolName,
String volumeName, Context context);
/**
* Finalize migration process
*
* Finalizes the migration of an external volume by releasing the replication and breaking the external cluster
* peering if no other migration is active.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void finalizeExternalReplication(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Finalize migration process
*
* Finalizes the migration of an external volume by releasing the replication and breaking the external cluster
* peering if no other migration is active.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void finalizeExternalReplication(String resourceGroupName, String accountName, String poolName, String volumeName,
Context context);
/**
* Perform a replication transfer
*
* Performs an adhoc replication transfer on a volume with volumeType Migration.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void performReplicationTransfer(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Perform a replication transfer
*
* Performs an adhoc replication transfer on a volume with volumeType Migration.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void performReplicationTransfer(String resourceGroupName, String accountName, String poolName, String volumeName,
Context context);
/**
* Change pool for volume
*
* Moves volume to another pool.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body Move volume to the pool supplied in the body of the operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void poolChange(String resourceGroupName, String accountName, String poolName, String volumeName,
PoolChangeRequest body);
/**
* Change pool for volume
*
* Moves volume to another pool.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body Move volume to the pool supplied in the body of the operation.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void poolChange(String resourceGroupName, String accountName, String poolName, String volumeName,
PoolChangeRequest body, Context context);
/**
* Relocate volume
*
* Relocates volume to a new stamp.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void relocate(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Relocate volume
*
* Relocates volume to a new stamp.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param body Relocate volume request.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void relocate(String resourceGroupName, String accountName, String poolName, String volumeName,
RelocateVolumeRequest body, Context context);
/**
* Finalize volume relocation
*
* Finalizes the relocation of the volume and cleans up the old volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void finalizeRelocation(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Finalize volume relocation
*
* Finalizes the relocation of the volume and cleans up the old volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void finalizeRelocation(String resourceGroupName, String accountName, String poolName, String volumeName,
Context context);
/**
* Revert volume relocation
*
* Reverts the volume relocation process, cleans up the new volume and starts using the former-existing volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void revertRelocation(String resourceGroupName, String accountName, String poolName, String volumeName);
/**
* Revert volume relocation
*
* Reverts the volume relocation process, cleans up the new volume and starts using the former-existing volume.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param accountName The name of the NetApp account.
* @param poolName The name of the capacity pool.
* @param volumeName The name of the volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void revertRelocation(String resourceGroupName, String accountName, String poolName, String volumeName,
Context context);
/**
* Describe a volume
*
* Get the details of the specified volume.
*
* @param id the resource ID.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the details of the specified volume along with {@link Response}.
*/
Volume getById(String id);
/**
* Describe a volume
*
* Get the details of the specified volume.
*
* @param id the resource ID.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the details of the specified volume along with {@link Response}.
*/
Response getByIdWithResponse(String id, Context context);
/**
* Delete a volume
*
* Delete the specified volume.
*
* @param id the resource ID.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void deleteById(String id);
/**
* Delete a volume
*
* Delete the specified volume.
*
* @param id the resource ID.
* @param forceDelete An option to force delete the volume. Will cleanup resources connected to the particular
* volume.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
void deleteByIdWithResponse(String id, Boolean forceDelete, Context context);
/**
* Begins definition for a new Volume resource.
*
* @param name resource name.
* @return the first stage of the new Volume definition.
*/
Volume.DefinitionStages.Blank define(String name);
}