Package no.digipost.concurrent
Class CompletionHandler
- java.lang.Object
-
- no.digipost.concurrent.CompletionHandler
-
public final class CompletionHandler extends Object
Convenience utility to build various handler functions which will be called with either the first argument set to a value of any type, or the second argument as a Throwable indicating an error. Usable forCompletableFuture.whenComplete(BiConsumer),CompletableFuture.handle(BiFunction), or any of their async variants.The built handling functions will always prioritize exception instances in case it is (erroneously) invoked with both a result value and an exception.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceCompletionHandler.ConsumerBuilder<R>static interfaceCompletionHandler.FunctionBuilder<R,U>
-
Field Summary
Fields Modifier and Type Field Description static CompletionHandler.ConsumerBuilder<Object>doNothingOnSuccess
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <R> CompletionHandler.ConsumerBuilder<R>onSuccess(Runnable runOnSuccess)static <R> CompletionHandler.ConsumerBuilder<R>onSuccess(Consumer<R> resultConsumer)static <R,U>
CompletionHandler.FunctionBuilder<R,U>onSuccess(Function<R,U> resultMapper)static <R,U>
CompletionHandler.FunctionBuilder<R,U>onSuccess(Supplier<U> getOnSuccess)static <R,U>
CompletionHandler.FunctionBuilder<R,U>onSuccess(U successValue)
-
-
-
Field Detail
-
doNothingOnSuccess
public static final CompletionHandler.ConsumerBuilder<Object> doNothingOnSuccess
-
-
Method Detail
-
onSuccess
public static <R> CompletionHandler.ConsumerBuilder<R> onSuccess(Runnable runOnSuccess)
-
onSuccess
public static <R> CompletionHandler.ConsumerBuilder<R> onSuccess(Consumer<R> resultConsumer)
-
onSuccess
public static <R,U> CompletionHandler.FunctionBuilder<R,U> onSuccess(U successValue)
-
onSuccess
public static <R,U> CompletionHandler.FunctionBuilder<R,U> onSuccess(Supplier<U> getOnSuccess)
-
onSuccess
public static <R,U> CompletionHandler.FunctionBuilder<R,U> onSuccess(Function<R,U> resultMapper)
-
-