public HttpMessageResult GetHttpMessageResult() { if (_httpMessageResult == null) { _httpMessageResult = _getHttpMessageResult(); } return(_httpMessageResult); }
public HttpResult_v5(bool success, int statusCode, HttpMessageResult httpMessageResult, bool loadFromWeb = false, bool loadFromCache = false) { _success = success; _statusCode = statusCode; _httpMessageResult = httpMessageResult; _loadFromWeb = loadFromWeb; _loadFromCache = loadFromCache; }
//private async Task<bool> Load() private async Task Load() { _urlCachePath = _httpCacheManager._urlCache.GetUrlPathResult(_request, _request.CacheSubDirectory); string cacheFile = _urlCachePath.Path; if (_request.ReloadFromWeb || !zFile.Exists(cacheFile)) { // cache file dont exists, create 2 cache files : file with content response, file with request response //TraceLevel.WriteLine(1, $"Load from web \"{_httpRequest.Url}\" ({_httpRequest.Method})"); //Http_v3 http2 = CreateHttp(httpRequest); //http2.LoadToFile(urlPath); //http2.SaveRequest(zpath.PathSetExtension(urlPath, ".request.json")); using (Http_v5 http = new Http_v5(_request, _httpCacheManager._httpManager)) { zfile.CreateFileDirectory(cacheFile); HttpResult_v5 result = await http.LoadToFile(cacheFile); //if (result.Success) //{ _httpMessageResult = http.GetHttpMessageResult(); _httpMessageResult.CacheFile = _urlCachePath.SubPath; _httpMessageResult.zSave(zpath.PathSetExtension(cacheFile, ".request.json"), jsonIndent: true); _success = result.Success; _loadFromWeb = true; //return true; //} //else // return false; } //trace = true; } else { // cache file exists, load request from cache file _loadFromCache = true; TraceLevel.WriteLine(1, "Load from cache \"{0}\"", _urlCachePath.Path); string requestFile = zpath.PathSetExtension(cacheFile, ".request.json"); if (!zFile.Exists(requestFile)) { throw new PBException($"request file not found \"{requestFile}\""); } _httpMessageResult = zMongo.ReadFileAs <HttpMessageResult>(requestFile); _success = _httpMessageResult.Response.StatusCode == 200; //return true; } }