Interface MultiSubscriber<T>

  • Type Parameters:
    T - the type of item.
    All Superinterfaces:
    org.reactivestreams.Subscriber<T>
    All Known Subinterfaces:
    CancellableSubscriber<T>
    All Known Implementing Classes:
    SerializedSubscriber, Subscribers.CallbackBasedSubscriber, SwitchableSubscriptionSubscriber

    public interface MultiSubscriber<T>
    extends org.reactivestreams.Subscriber<T>
    A Subscriber receiving calls to Subscriber.onSubscribe(Subscription) once after passing an instance of Subscriber to Publisher.subscribe(Subscriber).

    No further events will be received until Subscription.request(long) is called.

    After signaling demand:

    • One or more invocations of onItem(Object) up to the maximum number defined by Subscription.request(long)
    • Single invocation of onFailure(Throwable) or onCompletion() which signals a terminal state after which no further events will be sent.

    Demand can be signaled via Subscription.request(long) whenever the Subscriber instance is capable of handling more. This interface bridges the Mutiny model and the Reactive Streams model.

    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      default void onComplete()
      Successful terminal state.
      void onCompletion()
      Method called when the upstream emits a completion terminal event.
      default void onError​(java.lang.Throwable t)
      Failed terminal state.
      void onFailure​(java.lang.Throwable failure)
      Method called when the upstream emits a failure terminal event.
      void onItem​(T item)
      Method called when the upstream emits an item event, in response to to requests to Subscription.request(long).
      default void onNext​(T t)
      Data notification sent by the Publisher in response to requests to Subscription.request(long).
      • Methods inherited from interface org.reactivestreams.Subscriber

        onSubscribe
    • Method Detail

      • onItem

        void onItem​(T item)
        Method called when the upstream emits an item event, in response to to requests to Subscription.request(long).
        Parameters:
        item - the item, must not be null.
      • onFailure

        void onFailure​(java.lang.Throwable failure)
        Method called when the upstream emits a failure terminal event.

        No further events will be sent even if Subscription.request(long) is invoked again.

        Parameters:
        failure - the failure, must not be null.
      • onCompletion

        void onCompletion()
        Method called when the upstream emits a completion terminal event.

        No further events will be sent even if Subscription.request(long) is invoked again.

      • onNext

        default void onNext​(T t)
        Data notification sent by the Publisher in response to requests to Subscription.request(long). Delegates to onItem(Object)
        Specified by:
        onNext in interface org.reactivestreams.Subscriber<T>
        Parameters:
        t - the element signaled
      • onError

        default void onError​(java.lang.Throwable t)
        Failed terminal state.

        No further events will be sent even if Subscription.request(long) is invoked again. Delegates to onFailure(Throwable)

        Specified by:
        onError in interface org.reactivestreams.Subscriber<T>
        Parameters:
        t - the throwable signaled
      • onComplete

        default void onComplete()
        Successful terminal state.

        No further events will be sent even if Subscription.request(long) is invoked again. Delegates to onCompletion()

        Specified by:
        onComplete in interface org.reactivestreams.Subscriber<T>