public async Task <IList <SiteResponse> > Execute(JsonOptions options) { if (!_validator.Validate(options)) { throw new ArgumentException("Request is not valid"); } var requests = CreateRequests(options); var response = new List <SiteResponse>(); foreach (var request in requests) { var siteResponse = await _calculator.Calculate(request); response.Add(siteResponse); } return(response); }
private IList <SiteRequest> CreateRequests(JsonOptions options) { return(JsonConvert.DeserializeObject <IList <SiteRequest> >(options.Input)); }
public bool Validate(JsonOptions request) { return(true); }