@Override
  public CompletableFuture<Response> execute(
      Request request, Options options, Optional<Object> requestContext) {
    HttpRequest httpRequest;
    try {
      httpRequest = newRequestBuilder(request, options).build();
    } catch (URISyntaxException e) {
      throw new IllegalArgumentException("Invalid uri " + request.url(), e);
    }

    HttpClient clientForRequest = getOrCreateClient(options);
    CompletableFuture<HttpResponse<InputStream>> future =
        clientForRequest.sendAsync(httpRequest, HttpResponse.BodyHandlers.ofInputStream());
    return future.thenApply(httpResponse -> toFeignResponse(request, httpResponse));
  }
Creates the new Http2Client using following defaults:

<ul>
  <li>Connect Timeout: 10 seconds, as {@link Request.Options#Options()} uses
  <li>Follow all 3xx redirects
  <li>HTTP 2
</ul>

@see Request.Options#Options()
java11/src/main/java/feign/http2client/Http2Client.java