public async Task <IEnumerable <ReleaseInfo> > PerformQuery(TorznabQuery query) { query = FixQuery(query); var seasons = await GetSeasons(query); var episodes = await GetEpisodes(query, seasons); await downloadGenerator.AddDownloadLinks(episodes); if (seasons.Count() > 0) { episodes.ForEach(e => e.TitleOriginal = seasons.First().Title); } return(episodes); }
public async Task <IEnumerable <ReleaseInfo> > PerformQuery(TorznabQuery query) { var html = await requester.MakeRequest(NewTorrentsUri); var episodesAndSeasonsUri = rssScraper.Extract(html); Task.WaitAll(episodesAndSeasonsUri.ToList().Select(async epAndSeasonUri => { var episode = epAndSeasonUri.Key; var seasonUri = epAndSeasonUri.Value; await AddMejorTorrentIDs(episode, seasonUri); }).ToArray()); var episodes = episodesAndSeasonsUri.Select(epAndSeason => epAndSeason.Key).ToList(); await downloadGenerator.AddDownloadLinks(episodes); return(episodes); }