public async Task <Result <ReportPreCacheResponse> > ReportPreCache(ReportPreCacheRequest request) { const string api = "api/Factory/ReportPreCache"; NameValueCollection query = HttpUtility.ParseQueryString(string.Empty); query["clear"] = request.Clear.ToString(); query["clean"] = request.Clean.ToString(); if (request.Passcode != null) { query["passcode"] = request.Passcode; } Result <ReportPreCacheResponse> result = await _owner.GetAsync <Request, ReportPreCacheResponse>(api, query); return(result); }
public ReportPreCacheResponse ReportPreCache([FromUri] ReportPreCacheRequest request) { if (request == null) { throw new ArgumentNullException("request"); } string passToCheck = ServiceHelper.GetSettingValue(ServiceHelper.Key_Access_Passcode); if (!string.IsNullOrWhiteSpace(passToCheck) && request.Passcode != passToCheck) { throw new ServiceException("Pre-cache cannot be reported - passcode is incorrect", HttpStatusCode.Unauthorized); } if (!PreCacheHelper.PreCacheExists) { // Return an empty report return(new ReportPreCacheResponse()); } var cache = ServiceHelper.Cache; return(PreCacheHelper.ReportDocuments(cache, request.Clean)); }