code: public static HttpResponse createResponse(Request<?> request,
                                          HttpRequestBase method,
                                          org.apache.http.HttpResponse apacheHttpResponse,
                                          HttpContext context) throws IOException {
          HttpResponse httpResponse = new HttpResponse(request, method, context);
  
          if (apacheHttpResponse.getEntity() != null) {
              httpResponse.setContent(apacheHttpResponse.getEntity().getContent());
          }
  
          httpResponse.setStatusCode(apacheHttpResponse.getStatusLine().getStatusCode());
          httpResponse.setStatusText(apacheHttpResponse.getStatusLine().getReasonPhrase());
          for (Header header : apacheHttpResponse.getAllHeaders()) {
              httpResponse.addHeader(header.getName(), header.getValue());
          }
  
          return httpResponse;
      }
docs: Creates and initializes an HttpResponse object suitable to be passed to an HTTP response
  handler object.
  
  @param request Marshalled request object.
  @param method  The HTTP method that was invoked to get the response.
  @param context The HTTP context associated with the request and response.
  @return The new, initialized HttpResponse object ready to be passed to an HTTP response
  handler object.
  @throws IOException If there were any problems getting any response information from the
  HttpClient method object.