private static HttpResponse GenerateHttpResponse(HttpWebRequest httpWebRequest) { var httpResponse = new HttpResponse(); try { HttpWebResponse httpWebResponse = GenerateHttpWebResponse(httpWebRequest); MapResponses(httpWebResponse, httpResponse); } catch (Exception exception) { httpResponse.Error = exception; } return httpResponse; }
private static void MapResponses(HttpWebResponse httpWebResponse, HttpResponse httpResponse) { using (httpWebResponse) { httpResponse.ResponseUri = httpWebResponse.ResponseUri; httpResponse.StatusCode = httpWebResponse.StatusCode; httpResponse.StatusDescription = httpWebResponse.StatusDescription; httpResponse.ContentType = httpWebResponse.ContentType; httpResponse.ContentLength = httpWebResponse.ContentLength; httpResponse.ContentEncoding = httpWebResponse.ContentEncoding; httpResponse.Content = GetContentFrom(httpWebResponse); foreach (string headerName in httpWebResponse.Headers.AllKeys) { string headerValue = httpWebResponse.Headers[headerName]; httpResponse.Headers.Add(new HttpHeader { Name = headerName, Value = headerValue }); } } }