static HttpResponse delayed(Supplier<? extends HttpResponse> responseSupplier,
                                Duration delay,
                                ScheduledExecutorService executor) {
        requireNonNull(responseSupplier, "responseSupplier");
        requireNonNull(delay, "delay");
        requireNonNull(executor, "executor");
        final DeferredHttpResponse res = new DeferredHttpResponse();
        executor.schedule(() -> {
            try {
                res.delegate(responseSupplier.get());
            } catch (Throwable ex) {
                res.abort(ex);
            }
        }, delay.toNanos(), TimeUnit.NANOSECONDS);
        return res;
    }
Invokes the specified {@link Supplier} and creates a new HTTP response that
delegates to the provided {@link HttpResponse} {@link Supplier},
beginning publishing after {@code delay} has passed from the provided {@link ScheduledExecutorService}.
core/src/main/java/com/linecorp/armeria/common/HttpResponse.java