- Type Parameters:
T- type of the values returned
- All Superinterfaces:
FtHandlerTyped<T>
Fallback allows the user to execute an alternative function in case the provided supplier fails.
In case you call the FtHandlerTyped.invokeMulti(java.util.function.Supplier) method, the following restriction applies:
- In case at least one record was sent (one
onNextwas called), the fallback will not trigger.
Multi and a Single.
If none is provided, the method is executed without fallback.-
Nested Class Summary
Nested Classes -
Method Summary
Static MethodsModifier and TypeMethodDescriptionstatic <T> Fallback.Builder<T>builder()A builder to customizeFallback.static <T> Fallback<T>create(Function<Throwable, ? extends CompletionStage<T>> fallback) Create a fallback for aSingleorCompletionStage.static <T> Fallback<T>createMulti(Function<Throwable, ? extends Flow.Publisher<T>> fallback) Create a fallback for aMultiorFlow.Publisher.Methods inherited from interface io.helidon.faulttolerance.FtHandlerTyped
invoke, invokeMulti
-
Method Details
-
builder
A builder to customizeFallback.- Type Parameters:
T- type of the values returned by the failing method- Returns:
- a new builder
-
create
Create a fallback for aSingleorCompletionStage.- Type Parameters:
T- type of the result- Parameters:
fallback- fallback supplier to obtain the alternative result- Returns:
- a new fallback
-
createMulti
Create a fallback for aMultiorFlow.Publisher.- Type Parameters:
T- type of the result- Parameters:
fallback- fallback supplier to obtain the alternative result- Returns:
- a new fallback
-