Class UniOnSubscribe<T>
- java.lang.Object
-
- io.smallrye.mutiny.groups.UniOnSubscribe<T>
-
- Type Parameters:
T- the type of item
public class UniOnSubscribe<T> extends java.lang.ObjectGroup to configure the action to execute when the observedUnisends aUniSubscription. The downstream don't have a subscription yet. It will be passed once the configured action completes.Example:
uni.onSubscribe().invoke(sub -> System.out.println("subscribed")); // Delay the subscription by 1 second (or until an asynchronous action completes) uni.onSubscribe().call(sub -> Uni.createFrom(1).onItem().delayIt().by(Duration.ofSecond(1)));
-
-
Constructor Summary
Constructors Constructor Description UniOnSubscribe(Uni<T> upstream)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Uni<T>call(java.util.function.Function<? super UniSubscription,Uni<?>> action)Produces a newUniinvoking the given @{code action} when thesubscriptionevent is received.Uni<T>call(java.util.function.Supplier<Uni<?>> action)Produces a newUniinvoking the given @{code action} when thesubscriptionevent is received.Uni<T>invoke(java.lang.Runnable callback)Produces a newUniinvoking the given callback when thesubscriptionis received.Uni<T>invoke(java.util.function.Consumer<? super UniSubscription> callback)Produces a newUniinvoking the given callback when thesubscriptionis received.
-
-
-
Method Detail
-
invoke
public Uni<T> invoke(java.util.function.Consumer<? super UniSubscription> callback)
Produces a newUniinvoking the given callback when thesubscriptionis received.The callback in invoked before passing a subscription event downstream. If the callback throws an exception, the downstream receives a subscription and the failure immediately.
- Parameters:
callback- the callback, must not benull.- Returns:
- the new
Uni
-
invoke
public Uni<T> invoke(java.lang.Runnable callback)
Produces a newUniinvoking the given callback when thesubscriptionis received.The callback in invoked before passing a subscription event downstream. If the callback throws an exception, the downstream receives a subscription and the failure immediately.
- Parameters:
callback- the callback, must not benull.- Returns:
- the new
Uni
-
call
public Uni<T> call(java.util.function.Function<? super UniSubscription,Uni<?>> action)
Produces a newUniinvoking the given @{code action} when thesubscriptionevent is received.Unlike
invoke(Consumer), the passed function returns aUni. When the producedUnisends the subscription, the function is called. The subscription event is passed downstream only when theUnicompletes. If the producedUnifails or if the function throws an exception, the failure is propagated downstream.- Parameters:
action- the callback, must not benull- Returns:
- the new
Uni
-
call
public Uni<T> call(java.util.function.Supplier<Uni<?>> action)
Produces a newUniinvoking the given @{code action} when thesubscriptionevent is received.Unlike
invoke(Consumer), the passed function returns aUni. When the producedUnisends the subscription, the function is called. The subscription event is passed downstream only when theUnicompletes. If the producedUnifails or if the function throws an exception, the failure is propagated downstream.- Parameters:
action- the callback, must not benull- Returns:
- the new
Uni
-
-