corda / net.corda.core.concurrent / CordaFuture

CordaFuture

interface CordaFuture<V> : Future<V>

Same as Future with additional methods to provide some of the features of java.util.concurrent.CompletableFuture while minimising the API surface area. In Kotlin, to avoid compile errors, whenever CordaFuture is used in a parameter or extension method receiver type, its type parameter should be specified with out variance.

Functions

then

Run the given callback when this future is done, on the completion thread. If the completion thread is problematic for you e.g. deadlock, you can submit to an executor manually. If callback fails, its throwable is logged.

abstract fun <W> then(callback: (CordaFuture<V>) -> W): Unit

toCompletableFuture

abstract fun toCompletableFuture(): CompletableFuture<V>

Extension Functions

toObservable

fun <A> CordaFuture<out A>.toObservable(): Observable<A>