/// <summary> /// writes parsed URLs to output /// </summary> public void Convert() { var urls = provider.GetUrls(); var parsed = urls.Select(u => { var result = parser.Parse(u); if (result == null) { logger.Log(u); } return(result); }); writer.WriteUrls(parsed); }
public async Task <int> GetResourcesLength() { // Make a list of web addresses. List <string> urlList = _urlProvider.GetUrls(); // Create a query. IEnumerable <Task <int> > downloadTasksQuery = from url in urlList select ProcessURLAsync(url); // Use ToArray to execute the query and start the download tasks. Task <int>[] downloadTasks = downloadTasksQuery.ToArray(); // Await the completion of all the running tasks. int[] lengths = await Task.WhenAll(downloadTasks); //Sum up the total lengths int total = lengths.Sum(); return(total); }