/// <summary>
 /// Use this method to update existing IoT Security solution tags or user
 /// defined resources. To update other fields use the CreateOrUpdate method.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The name of the resource group within the user's subscription. The name is
 /// case insensitive.
 /// </param>
 /// <param name='solutionName'>
 /// The name of the IoT Security solution.
 /// </param>
 /// <param name='updateIotSecuritySolutionData'>
 /// The security solution data
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <IoTSecuritySolutionModel> UpdateAsync(this IIotSecuritySolutionOperations operations, string resourceGroupName, string solutionName, UpdateIotSecuritySolutionData updateIotSecuritySolutionData, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.UpdateWithHttpMessagesAsync(resourceGroupName, solutionName, updateIotSecuritySolutionData, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Use this method to get the list IoT Security solutions organized by
 /// resource group.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The name of the resource group within the user's subscription. The name is
 /// case insensitive.
 /// </param>
 /// <param name='filter'>
 /// Filter the IoT Security solution with OData syntax. Supports filtering by
 /// iotHubs.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <IPage <IoTSecuritySolutionModel> > ListByResourceGroupAsync(this IIotSecuritySolutionOperations operations, string resourceGroupName, string filter = default(string), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.ListByResourceGroupWithHttpMessagesAsync(resourceGroupName, filter, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Use this method to get the list IoT Security solutions organized by
 /// resource group.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The name of the resource group within the user's subscription. The name is
 /// case insensitive.
 /// </param>
 /// <param name='filter'>
 /// Filter the IoT Security solution with OData syntax. Supports filtering by
 /// iotHubs.
 /// </param>
 public static IPage <IoTSecuritySolutionModel> ListByResourceGroup(this IIotSecuritySolutionOperations operations, string resourceGroupName, string filter = default(string))
 {
     return(operations.ListByResourceGroupAsync(resourceGroupName, filter).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Use this method to get the list IoT Security solutions organized by
 /// resource group.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='nextPageLink'>
 /// The NextLink from the previous successful call to List operation.
 /// </param>
 public static IPage <IoTSecuritySolutionModel> ListByResourceGroupNext(this IIotSecuritySolutionOperations operations, string nextPageLink)
 {
     return(operations.ListByResourceGroupNextAsync(nextPageLink).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Use this method to get the list of IoT Security solutions by subscription.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='filter'>
 /// Filter the IoT Security solution with OData syntax. Supports filtering by
 /// iotHubs.
 /// </param>
 public static IPage <IoTSecuritySolutionModel> ListBySubscription(this IIotSecuritySolutionOperations operations, string filter = default(string))
 {
     return(operations.ListBySubscriptionAsync(filter).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Use this method to get the list of IoT Security solutions by subscription.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='nextPageLink'>
 /// The NextLink from the previous successful call to List operation.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <IPage <IoTSecuritySolutionModel> > ListBySubscriptionNextAsync(this IIotSecuritySolutionOperations operations, string nextPageLink, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.ListBySubscriptionNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Use this method to delete yours IoT Security solution
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The name of the resource group within the user's subscription. The name is
 /// case insensitive.
 /// </param>
 /// <param name='solutionName'>
 /// The name of the IoT Security solution.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task DeleteAsync(this IIotSecuritySolutionOperations operations, string resourceGroupName, string solutionName, CancellationToken cancellationToken = default(CancellationToken))
 {
     (await operations.DeleteWithHttpMessagesAsync(resourceGroupName, solutionName, null, cancellationToken).ConfigureAwait(false)).Dispose();
 }
 /// <summary>
 /// Use this method to delete yours IoT Security solution
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The name of the resource group within the user's subscription. The name is
 /// case insensitive.
 /// </param>
 /// <param name='solutionName'>
 /// The name of the IoT Security solution.
 /// </param>
 public static void Delete(this IIotSecuritySolutionOperations operations, string resourceGroupName, string solutionName)
 {
     operations.DeleteAsync(resourceGroupName, solutionName).GetAwaiter().GetResult();
 }
 /// <summary>
 /// Use this method to update existing IoT Security solution tags or user
 /// defined resources. To update other fields use the CreateOrUpdate method.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The name of the resource group within the user's subscription. The name is
 /// case insensitive.
 /// </param>
 /// <param name='solutionName'>
 /// The name of the IoT Security solution.
 /// </param>
 /// <param name='updateIotSecuritySolutionData'>
 /// The security solution data
 /// </param>
 public static IoTSecuritySolutionModel Update(this IIotSecuritySolutionOperations operations, string resourceGroupName, string solutionName, UpdateIotSecuritySolutionData updateIotSecuritySolutionData)
 {
     return(operations.UpdateAsync(resourceGroupName, solutionName, updateIotSecuritySolutionData).GetAwaiter().GetResult());
 }
 /// <summary>
 /// User this method to get details of a specific IoT Security solution based
 /// on solution name
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The name of the resource group within the user's subscription. The name is
 /// case insensitive.
 /// </param>
 /// <param name='solutionName'>
 /// The name of the IoT Security solution.
 /// </param>
 public static IoTSecuritySolutionModel Get(this IIotSecuritySolutionOperations operations, string resourceGroupName, string solutionName)
 {
     return(operations.GetAsync(resourceGroupName, solutionName).GetAwaiter().GetResult());
 }