The management lock properties.
 /// <summary>
 /// Create or update a management lock at the resource group level.
 /// </summary>
 /// <param name='operations'>
 /// Reference to the
 /// Microsoft.Azure.Management.Internal.Resources.IManagementLockOperations.
 /// </param>
 /// <param name='resourceGroupName'>
 /// Required. The resource group name.
 /// </param>
 /// <param name='lockName'>
 /// Required. The lock name.
 /// </param>
 /// <param name='parameters'>
 /// Required. The management lock parameters.
 /// </param>
 /// <returns>
 /// Management lock information.
 /// </returns>
 public static ManagementLockReturnResult CreateOrUpdateAtResourceGroupLevel(this IManagementLockOperations operations, string resourceGroupName, string lockName, ManagementLockProperties parameters)
 {
     return Task.Factory.StartNew((object s) =>
     {
         return ((IManagementLockOperations)s).CreateOrUpdateAtResourceGroupLevelAsync(resourceGroupName, lockName, parameters);
     }
     , operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult();
 }
 /// <summary>
 /// Create or update a management lock at the resource group level.
 /// </summary>
 /// <param name='operations'>
 /// Reference to the
 /// Microsoft.Azure.Management.Internal.Resources.IManagementLockOperations.
 /// </param>
 /// <param name='resourceGroupName'>
 /// Required. The resource group name.
 /// </param>
 /// <param name='lockName'>
 /// Required. The lock name.
 /// </param>
 /// <param name='parameters'>
 /// Required. The management lock parameters.
 /// </param>
 /// <returns>
 /// Management lock information.
 /// </returns>
 public static Task<ManagementLockReturnResult> CreateOrUpdateAtResourceGroupLevelAsync(this IManagementLockOperations operations, string resourceGroupName, string lockName, ManagementLockProperties parameters)
 {
     return operations.CreateOrUpdateAtResourceGroupLevelAsync(resourceGroupName, lockName, parameters, CancellationToken.None);
 }