public async Task <ResponseItem[]> CrawlAsync(RequestItem[] items) { if (items == null) { throw new ArgumentNullException(nameof(items)); } if (items.Length == 0) { return(new ResponseItem[0]); } var responseItems = new List <ResponseItem>(); foreach (var item in items) { ResponseItem responseItem; try { RequestItem.EnsureItem(item); responseItem = await this.InternalCrawlAsync(item); } catch (ArgumentNullException ex) { responseItem = new ResponseItem(item) { Exception = ex }; } responseItems.Add(responseItem); } return(responseItems.ToArray()); }
public async Task <ResponseItem> CrawlAsync(RequestItem item) { try { RequestItem.EnsureItem(item); } catch (ArgumentNullException ex) { return(new ResponseItem(item) { Exception = ex }); } return(await InternalCrawlAsync(item)); }
public ResponseItem(RequestItem requestItem) { RequestItem.EnsureItem(requestItem); this.Requestitem = requestItem; }