When starting out with either Completes<T> or CompletableFuture<T> and then transitioning to the other in the same pipeline, you can't get back to Completes<T> from CompletableFuture<T> because CompletableFuture<T> only returns CompletableFuture<T> instances.
This is a problem where with vlingo-http, for example, a RequestHandler must return a Completes<T> rather than CompletableFuture<T>.
The solution is for Completes<T> to support both Completes<T> and CompletableFuture<T> as parameters to the various forms of andThen() and andThenTo().
In time we may also choose to support CompletableFuture<T> for vlingo-httpRequest/Response.
P.S. We can't expect CompletableFuture<T> to support Completes<T> ever, so it's on us to support CompletableFuture<T>.
When starting out with either
Completes<T>
orCompletableFuture<T>
and then transitioning to the other in the same pipeline, you can't get back toCompletes<T>
fromCompletableFuture<T>
becauseCompletableFuture<T>
only returnsCompletableFuture<T>
instances.This is a problem where with
vlingo-http
, for example, aRequestHandler
must return aCompletes<T>
rather thanCompletableFuture<T>
.The solution is for
Completes<T>
to support bothCompletes<T>
andCompletableFuture<T>
as parameters to the various forms ofandThen()
andandThenTo()
.In time we may also choose to support
CompletableFuture<T>
forvlingo-http
Request
/Response
.P.S. We can't expect
CompletableFuture<T>
to supportCompletes<T>
ever, so it's on us to supportCompletableFuture<T>
.