/// <summary>
 /// Creates or updates the 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='iscsiServer'>
 /// The iscsi server.
 /// </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 <ISCSIServer> BeginCreateOrUpdateAsync(this IIscsiServersOperations operations, string deviceName, string iscsiServerName, ISCSIServer iscsiServer, string resourceGroupName, string managerName, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.BeginCreateOrUpdateWithHttpMessagesAsync(deviceName, iscsiServerName, iscsiServer, resourceGroupName, managerName, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Retrieves all the iscsi 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 <ISCSIServer> > ListByDeviceAsync(this IIscsiServersOperations 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 server metrics
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='deviceName'>
 /// The devie 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>
 /// <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 IIscsiServersOperations operations, string deviceName, string iscsiServerName, string resourceGroupName, string managerName, ODataQuery <MetricFilter> odataQuery = default(ODataQuery <MetricFilter>), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.ListMetricsWithHttpMessagesAsync(deviceName, iscsiServerName, resourceGroupName, managerName, odataQuery, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Returns the properties of the specified iscsi server 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='resourceGroupName'>
 /// The resource group name
 /// </param>
 /// <param name='managerName'>
 /// The manager name
 /// </param>
 public static ISCSIServer Get(this IIscsiServersOperations operations, string deviceName, string iscsiServerName, string resourceGroupName, string managerName)
 {
     return(operations.GetAsync(deviceName, iscsiServerName, resourceGroupName, managerName).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Backup the iscsi server now.
 /// </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>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task BeginBackupNowAsync(this IIscsiServersOperations operations, string deviceName, string iscsiServerName, string resourceGroupName, string managerName, CancellationToken cancellationToken = default(CancellationToken))
 {
     (await operations.BeginBackupNowWithHttpMessagesAsync(deviceName, iscsiServerName, resourceGroupName, managerName, null, cancellationToken).ConfigureAwait(false)).Dispose();
 }
 /// <summary>
 /// Backup the iscsi server now.
 /// </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 void BeginBackupNow(this IIscsiServersOperations operations, string deviceName, string iscsiServerName, string resourceGroupName, string managerName)
 {
     operations.BeginBackupNowAsync(deviceName, iscsiServerName, resourceGroupName, managerName).GetAwaiter().GetResult();
 }
 /// <summary>
 /// Creates or updates the 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='iscsiServer'>
 /// The iscsi server.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resource group name
 /// </param>
 /// <param name='managerName'>
 /// The manager name
 /// </param>
 public static ISCSIServer BeginCreateOrUpdate(this IIscsiServersOperations operations, string deviceName, string iscsiServerName, ISCSIServer iscsiServer, string resourceGroupName, string managerName)
 {
     return(operations.BeginCreateOrUpdateAsync(deviceName, iscsiServerName, iscsiServer, resourceGroupName, managerName).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Retrieves all the iscsi 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>
 public static IEnumerable <ISCSIServer> ListByDevice(this IIscsiServersOperations operations, string deviceName, string resourceGroupName, string managerName)
 {
     return(operations.ListByDeviceAsync(deviceName, resourceGroupName, managerName).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Retrieves metric definitions for all metrics aggregated at iscsi server.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='deviceName'>
 /// The devie 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 <MetricDefinition> ListMetricDefinition(this IIscsiServersOperations operations, string deviceName, string iscsiServerName, string resourceGroupName, string managerName)
 {
     return(operations.ListMetricDefinitionAsync(deviceName, iscsiServerName, resourceGroupName, managerName).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Gets the iscsi server metrics
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='deviceName'>
 /// The devie 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>
 /// <param name='odataQuery'>
 /// OData parameters to apply to the operation.
 /// </param>
 public static IEnumerable <Metrics> ListMetrics(this IIscsiServersOperations operations, string deviceName, string iscsiServerName, string resourceGroupName, string managerName, ODataQuery <MetricFilter> odataQuery = default(ODataQuery <MetricFilter>))
 {
     return(operations.ListMetricsAsync(deviceName, iscsiServerName, resourceGroupName, managerName, odataQuery).GetAwaiter().GetResult());
 }