/// <summary>
 /// Creates or updates the iscsi disk.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='deviceName'>
 /// The device name.
 /// </param>
 /// <param name='iscsiServerName'>
 /// The iscsi server name.
 /// </param>
 /// <param name='diskName'>
 /// The disk name.
 /// </param>
 /// <param name='iscsiDisk'>
 /// The iscsi disk.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name
 /// </param>
 /// <param name='managerName'>
 /// The manager name
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <ISCSIDisk> BeginCreateOrUpdateAsync(this IIscsiDisksOperations operations, string deviceName, string iscsiServerName, string diskName, ISCSIDisk iscsiDisk, string resourceGroupName, string managerName, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.BeginCreateOrUpdateWithHttpMessagesAsync(deviceName, iscsiServerName, diskName, iscsiDisk, resourceGroupName, managerName, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Retrieves all the iscsi disks in a device.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='deviceName'>
 /// The device name.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name
 /// </param>
 /// <param name='managerName'>
 /// The manager name
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <IEnumerable <ISCSIDisk> > ListByDeviceAsync(this IIscsiDisksOperations operations, string deviceName, string resourceGroupName, string managerName, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.ListByDeviceWithHttpMessagesAsync(deviceName, resourceGroupName, managerName, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Gets the iscsi disk metrics
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='deviceName'>
 /// The device name.
 /// </param>
 /// <param name='iscsiServerName'>
 /// The iscsi server name.
 /// </param>
 /// <param name='diskName'>
 /// The iscsi disk name.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name
 /// </param>
 /// <param name='managerName'>
 /// The manager name
 /// </param>
 /// <param name='odataQuery'>
 /// OData parameters to apply to the operation.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <IEnumerable <Metrics> > ListMetricsAsync(this IIscsiDisksOperations operations, string deviceName, string iscsiServerName, string diskName, string resourceGroupName, string managerName, ODataQuery <MetricFilter> odataQuery = default(ODataQuery <MetricFilter>), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.ListMetricsWithHttpMessagesAsync(deviceName, iscsiServerName, diskName, resourceGroupName, managerName, odataQuery, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Retrieves all the disks in a iscsi server.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='deviceName'>
 /// The device name.
 /// </param>
 /// <param name='iscsiServerName'>
 /// The iscsi server name.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name
 /// </param>
 /// <param name='managerName'>
 /// The manager name
 /// </param>
 public static IEnumerable <ISCSIDisk> ListByIscsiServer(this IIscsiDisksOperations operations, string deviceName, string iscsiServerName, string resourceGroupName, string managerName)
 {
     return(operations.ListByIscsiServerAsync(deviceName, iscsiServerName, resourceGroupName, managerName).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Deletes the iscsi disk.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='deviceName'>
 /// The device name.
 /// </param>
 /// <param name='iscsiServerName'>
 /// The iscsi server name.
 /// </param>
 /// <param name='diskName'>
 /// The disk name.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name
 /// </param>
 /// <param name='managerName'>
 /// The manager name
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task BeginDeleteAsync(this IIscsiDisksOperations operations, string deviceName, string iscsiServerName, string diskName, string resourceGroupName, string managerName, CancellationToken cancellationToken = default(CancellationToken))
 {
     (await operations.BeginDeleteWithHttpMessagesAsync(deviceName, iscsiServerName, diskName, resourceGroupName, managerName, null, cancellationToken).ConfigureAwait(false)).Dispose();
 }
 /// <summary>
 /// Deletes the iscsi disk.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='deviceName'>
 /// The device name.
 /// </param>
 /// <param name='iscsiServerName'>
 /// The iscsi server name.
 /// </param>
 /// <param name='diskName'>
 /// The disk name.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name
 /// </param>
 /// <param name='managerName'>
 /// The manager name
 /// </param>
 public static void BeginDelete(this IIscsiDisksOperations operations, string deviceName, string iscsiServerName, string diskName, string resourceGroupName, string managerName)
 {
     operations.BeginDeleteAsync(deviceName, iscsiServerName, diskName, resourceGroupName, managerName).GetAwaiter().GetResult();
 }
 /// <summary>
 /// Creates or updates the iscsi disk.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='deviceName'>
 /// The device name.
 /// </param>
 /// <param name='iscsiServerName'>
 /// The iscsi server name.
 /// </param>
 /// <param name='diskName'>
 /// The disk name.
 /// </param>
 /// <param name='iscsiDisk'>
 /// The iscsi disk.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name
 /// </param>
 /// <param name='managerName'>
 /// The manager name
 /// </param>
 public static ISCSIDisk BeginCreateOrUpdate(this IIscsiDisksOperations operations, string deviceName, string iscsiServerName, string diskName, ISCSIDisk iscsiDisk, string resourceGroupName, string managerName)
 {
     return(operations.BeginCreateOrUpdateAsync(deviceName, iscsiServerName, diskName, iscsiDisk, resourceGroupName, managerName).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Retrieves metric definitions for all metric aggregated at the iscsi disk.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='deviceName'>
 /// The device name.
 /// </param>
 /// <param name='iscsiServerName'>
 /// The iscsi server name.
 /// </param>
 /// <param name='diskName'>
 /// The iscsi disk name.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name
 /// </param>
 /// <param name='managerName'>
 /// The manager name
 /// </param>
 public static IEnumerable <MetricDefinition> ListMetricDefinition(this IIscsiDisksOperations operations, string deviceName, string iscsiServerName, string diskName, string resourceGroupName, string managerName)
 {
     return(operations.ListMetricDefinitionAsync(deviceName, iscsiServerName, diskName, resourceGroupName, managerName).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Gets the iscsi disk metrics
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='deviceName'>
 /// The device name.
 /// </param>
 /// <param name='iscsiServerName'>
 /// The iscsi server name.
 /// </param>
 /// <param name='diskName'>
 /// The iscsi disk name.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name
 /// </param>
 /// <param name='managerName'>
 /// The manager name
 /// </param>
 /// <param name='odataQuery'>
 /// OData parameters to apply to the operation.
 /// </param>
 public static IEnumerable <Metrics> ListMetrics(this IIscsiDisksOperations operations, string deviceName, string iscsiServerName, string diskName, string resourceGroupName, string managerName, ODataQuery <MetricFilter> odataQuery = default(ODataQuery <MetricFilter>))
 {
     return(operations.ListMetricsAsync(deviceName, iscsiServerName, diskName, resourceGroupName, managerName, odataQuery).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Returns the properties of the specified iscsi disk name.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='deviceName'>
 /// The device name.
 /// </param>
 /// <param name='iscsiServerName'>
 /// The iscsi server name.
 /// </param>
 /// <param name='diskName'>
 /// The disk name.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name
 /// </param>
 /// <param name='managerName'>
 /// The manager name
 /// </param>
 public static ISCSIDisk Get(this IIscsiDisksOperations operations, string deviceName, string iscsiServerName, string diskName, string resourceGroupName, string managerName)
 {
     return(operations.GetAsync(deviceName, iscsiServerName, diskName, resourceGroupName, managerName).GetAwaiter().GetResult());
 }