            (java.util Locale)
            (org.apache.http HttpEntity HeaderIterator HttpHost HttpRequest
                             HttpEntityEnclosingRequest HttpResponse)
+           (org.apache.http.client HttpRequestRetryHandler)
            (org.apache.http.client.methods HttpDelete HttpGet HttpPost HttpPut
                                            HttpOptions HttpPatch
                                            HttpHead

      (.addHeader http-req "Connection" "close"))
    (when cookie-store
      (.setCookieStore context cookie-store))
    (if multipart
      (.setEntity ^HttpEntityEnclosingRequest http-req
                  (mp/create-multipart-entity multipart))


(defn request
  [{:keys [body
           conn-mgr
           cookie-store
           multipart
           query-string
           retry-handler
           request-method
           scheme
           server-name
           server-port
           uri]
    :as req}]
  (let [scheme (name scheme)
