@Override
    public CompletableFuture<Response> execute(
        Request request, Options options, Optional<C> requestContext) {
      final CompletableFuture<Response> result = new CompletableFuture<>();
      try {
        result.complete(client.execute(request, options));
      } catch (final Exception e) {
        result.completeExceptionally(e);
      }

      return result;
    }
A synchronous implementation of {@link AsyncClient}

@param <C> - unused context; synchronous clients handle context internally
core/src/main/java/feign/AsyncClient.java