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.Object
Group to configure the action to execute when the observedUni
sends aUniSubscription
. The downstream don't have a subscription yet. It will be passed once the configured action completes.Example:
uni.onSubscription().invoke(sub -> System.out.println("subscribed")); // Delay the subscription by 1 second (or until an asynchronous action completes) uni.onSubscription().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 newUni
invoking the given @{code action} when thesubscription
event is received.Uni<T>
call(java.util.function.Supplier<Uni<?>> action)
Produces a newUni
invoking the given @{code action} when thesubscription
event is received.Uni<T>
invoke(java.lang.Runnable callback)
Produces a newUni
invoking the given callback when thesubscription
is received.Uni<T>
invoke(java.util.function.Consumer<? super UniSubscription> callback)
Produces a newUni
invoking the given callback when thesubscription
is received.
-
-
-
Method Detail
-
invoke
@CheckReturnValue public Uni<T> invoke(java.util.function.Consumer<? super UniSubscription> callback)
Produces a newUni
invoking the given callback when thesubscription
is 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
@CheckReturnValue public Uni<T> invoke(java.lang.Runnable callback)
Produces a newUni
invoking the given callback when thesubscription
is 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
@CheckReturnValue public Uni<T> call(java.util.function.Function<? super UniSubscription,Uni<?>> action)
Produces a newUni
invoking the given @{code action} when thesubscription
event is received.Unlike
invoke(Consumer)
, the passed function returns aUni
. When the producedUni
sends the subscription, the function is called. The subscription event is passed downstream only when theUni
completes. If the producedUni
fails or if the function throws an exception, the failure is propagated downstream.- Parameters:
action
- the callback, must not benull
- Returns:
- the new
Uni
-
call
@CheckReturnValue public Uni<T> call(java.util.function.Supplier<Uni<?>> action)
Produces a newUni
invoking the given @{code action} when thesubscription
event is received.Unlike
invoke(Consumer)
, the passed function returns aUni
. When the producedUni
sends the subscription, the function is called. The subscription event is passed downstream only when theUni
completes. If the producedUni
fails or if the function throws an exception, the failure is propagated downstream.- Parameters:
action
- the callback, must not benull
- Returns:
- the new
Uni
-
-