/// <summary>
 /// Gets the repositories available from the source code host
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='sourceHost'>
 /// The source host. Possible values include: 'github', 'bitbucket', 'vsts'
 /// </param>
 /// <param name='ownerName'>
 /// The name of the owner
 /// </param>
 /// <param name='appName'>
 /// The name of the application
 /// </param>
 /// <param name='vstsAccountName'>
 /// Filter repositories only for specified account and project, "vstsProjectId"
 /// is required
 /// </param>
 /// <param name='vstsProjectId'>
 /// Filter repositories only for specified account and project,
 /// "vstsAccountName" is required
 /// </param>
 /// <param name='form'>
 /// The selected form of the object. Possible values include: 'lite', 'full'
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <IList <SourceRepository> > ListAsync(this IRepositories operations, string sourceHost, string ownerName, string appName, string vstsAccountName = default(string), string vstsProjectId = default(string), string form = default(string), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.ListWithHttpMessagesAsync(sourceHost, ownerName, appName, vstsAccountName, vstsProjectId, form, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }