@UnstableApi
    static <T> StreamMessage<T> of(CompletableFuture<? extends Publisher<? extends T>> future) {
        requireNonNull(future, "stage");
        return createStreamMessageFrom(future);
    }
Creates a new {@link StreamMessage} that delegates to the {@link StreamMessage} produced by the specified
{@link CompletableFuture}. If the specified {@link CompletableFuture} fails, the returned
{@link StreamMessage} will be closed with the same cause as well.

@param future the {@link CompletableFuture} which will produce the actual {@link StreamMessage}
core/src/main/java/com/linecorp/armeria/common/stream/StreamMessage.java