@Override protected CompletionStage<HttpResponse> executeDelegate(final HttpRequest httpRequest) throws Throwable { final HttpUriRequest realHttpRequest = toApacheRequest(httpRequest); final CompletableFuture<org.apache.http.HttpResponse> apacheResponseFuture = new CompletableFuture<>(); apacheHttpClient.execute(realHttpRequest, new CompletableFutureCallbackAdapter<>(apacheResponseFuture)); return apacheResponseFuture.thenApply(apacheResponse -> convertApacheToSphereResponse(apacheResponse, httpRequest)); }