/// <summary>
 /// Link source control to website (do not forget to setup the token,
 /// and if needed token secret, for the specific source control type
 /// used).
 /// </summary>
 /// <param name='operations'>
 /// Reference to the
 /// Microsoft.Azure.Management.WebSites.IWebSiteOperations.
 /// </param>
 /// <param name='resourceGroupName'>
 /// Required. The name of the resource group
 /// </param>
 /// <param name='webSiteName'>
 /// Required. The name of the web site
 /// </param>
 /// <param name='slotName'>
 /// Optional. The name of the slot of the website
 /// </param>
 /// <param name='parameters'>
 /// Required. The update site source control parameters.
 /// </param>
 /// <returns>
 /// The link site to source control operation response.
 /// </returns>
 public static Task<SiteSourceControlUpdateResponse> UpdateSiteSourceControlAsync(this IWebSiteOperations operations, string resourceGroupName, string webSiteName, string slotName, SiteSourceControlUpdateParameters parameters)
 {
     return operations.UpdateSiteSourceControlAsync(resourceGroupName, webSiteName, slotName, parameters, CancellationToken.None);
 }
 /// <summary>
 /// Link source control to website (do not forget to setup the token,
 /// and if needed token secret, for the specific source control type
 /// used).
 /// </summary>
 /// <param name='operations'>
 /// Reference to the
 /// Microsoft.Azure.Management.WebSites.IWebSiteOperations.
 /// </param>
 /// <param name='resourceGroupName'>
 /// Required. The name of the resource group
 /// </param>
 /// <param name='webSiteName'>
 /// Required. The name of the web site
 /// </param>
 /// <param name='slotName'>
 /// Optional. The name of the slot of the website
 /// </param>
 /// <param name='parameters'>
 /// Required. The update site source control parameters.
 /// </param>
 /// <returns>
 /// The link site to source control operation response.
 /// </returns>
 public static SiteSourceControlUpdateResponse UpdateSiteSourceControl(this IWebSiteOperations operations, string resourceGroupName, string webSiteName, string slotName, SiteSourceControlUpdateParameters parameters)
 {
     return Task.Factory.StartNew((object s) => 
     {
         return ((IWebSiteOperations)s).UpdateSiteSourceControlAsync(resourceGroupName, webSiteName, slotName, parameters);
     }
     , operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult();
 }