/// <summary>
 /// Create or update a function for a stream analytics job. The raw
 /// json content will be used.
 /// </summary>
 /// <param name='operations'>
 /// Reference to the
 /// Microsoft.Azure.Management.StreamAnalytics.IFunctionOperations.
 /// </param>
 /// <param name='resourceGroupName'>
 /// Required. The resource group name of the stream analytics job.
 /// </param>
 /// <param name='jobName'>
 /// Required. The name of the stream analytics job.
 /// </param>
 /// <param name='functionName'>
 /// Required. The name of the function for the stream analytics job.
 /// </param>
 /// <param name='parameters'>
 /// Required. The parameters required to create or update a function
 /// for a stream analytics job.
 /// </param>
 /// <returns>
 /// The response of the function create or update operation.
 /// </returns>
 public static Task <FunctionCreateOrUpdateResponse> CreateOrUpdateWithRawJsonContentAsync(this IFunctionOperations operations, string resourceGroupName, string jobName, string functionName, FunctionCreateOrUpdateWithRawJsonContentParameters parameters)
 {
     return(operations.CreateOrUpdateWithRawJsonContentAsync(resourceGroupName, jobName, functionName, parameters, CancellationToken.None));
 }
 /// <summary>
 /// Create or update a function for a stream analytics job. The raw
 /// json content will be used.
 /// </summary>
 /// <param name='operations'>
 /// Reference to the
 /// Microsoft.Azure.Management.StreamAnalytics.IFunctionOperations.
 /// </param>
 /// <param name='resourceGroupName'>
 /// Required. The resource group name of the stream analytics job.
 /// </param>
 /// <param name='jobName'>
 /// Required. The name of the stream analytics job.
 /// </param>
 /// <param name='functionName'>
 /// Required. The name of the function for the stream analytics job.
 /// </param>
 /// <param name='parameters'>
 /// Required. The parameters required to create or update a function
 /// for a stream analytics job.
 /// </param>
 /// <returns>
 /// The response of the function create or update operation.
 /// </returns>
 public static FunctionCreateOrUpdateResponse CreateOrUpdateWithRawJsonContent(this IFunctionOperations operations, string resourceGroupName, string jobName, string functionName, FunctionCreateOrUpdateWithRawJsonContentParameters parameters)
 {
     return(Task.Factory.StartNew((object s) =>
     {
         return ((IFunctionOperations)s).CreateOrUpdateWithRawJsonContentAsync(resourceGroupName, jobName, functionName, parameters);
     }
                                  , operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult());
 }