Package io.smallrye.mutiny.helpers
Class MultiEmitterProcessor<T>
- java.lang.Object
-
- io.smallrye.mutiny.helpers.MultiEmitterProcessor<T>
-
- All Implemented Interfaces:
MultiEmitter<T>,org.reactivestreams.Processor<T,T>,org.reactivestreams.Publisher<T>,org.reactivestreams.Subscriber<T>
public class MultiEmitterProcessor<T> extends java.lang.Object implements org.reactivestreams.Processor<T,T>, MultiEmitter<T>
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcomplete()Emits acompletionevent downstream indicating that no more item will be sent.static <T> MultiEmitterProcessor<T>create()MultiEmitter<T>emit(T item)Emits anitemevent downstream.voidfail(java.lang.Throwable failure)Emits afailureevent downstream with the given exception.booleanisCancelled()voidonComplete()voidonError(java.lang.Throwable failure)voidonNext(T item)voidonSubscribe(org.reactivestreams.Subscription subscription)MultiEmitter<T>onTermination(java.lang.Runnable onTermination)Attaches a @{code termination} event handler invoked when the downstreamSubscriptionis cancelled, or when the emitter has emitted either acompletionorfailureevent.longrequested()voidsubscribe(org.reactivestreams.Subscriber<? super T> subscriber)Multi<T>toMulti()
-
-
-
Method Detail
-
create
public static <T> MultiEmitterProcessor<T> create()
-
emit
public MultiEmitter<T> emit(T item)
Description copied from interface:MultiEmitterEmits anitemevent downstream.Calling this method after a failure or a completion events has no effect.
- Specified by:
emitin interfaceMultiEmitter<T>- Parameters:
item- the item, must not benull- Returns:
- this emitter, so firing item events can be chained.
-
fail
public void fail(java.lang.Throwable failure)
Description copied from interface:MultiEmitterEmits afailureevent downstream with the given exception.Calling this method multiple times or after the
MultiEmitter.complete()method has no effect.- Specified by:
failin interfaceMultiEmitter<T>- Parameters:
failure- the exception, must not benull
-
complete
public void complete()
Description copied from interface:MultiEmitterEmits acompletionevent downstream indicating that no more item will be sent.Calling this method multiple times or after the
MultiEmitter.fail(Throwable)method has no effect.- Specified by:
completein interfaceMultiEmitter<T>
-
onTermination
public MultiEmitter<T> onTermination(java.lang.Runnable onTermination)
Description copied from interface:MultiEmitterAttaches a @{code termination} event handler invoked when the downstreamSubscriptionis cancelled, or when the emitter has emitted either acompletionorfailureevent.This method allows cleanup resources once the emitter can be disposed (has reached a terminal state).
If the registration of the
onTerminationcallback is done after the termination, it invokes the callback immediately.- Specified by:
onTerminationin interfaceMultiEmitter<T>- Parameters:
onTermination- the action to run on termination, must not benull- Returns:
- this emitter
-
isCancelled
public boolean isCancelled()
- Specified by:
isCancelledin interfaceMultiEmitter<T>- Returns:
trueif the downstream cancelled the stream or the emitter was terminated (with a completion or failure events).
-
requested
public long requested()
- Specified by:
requestedin interfaceMultiEmitter<T>- Returns:
- the current outstanding request amount.
-
subscribe
public void subscribe(org.reactivestreams.Subscriber<? super T> subscriber)
- Specified by:
subscribein interfaceorg.reactivestreams.Publisher<T>
-
onSubscribe
public void onSubscribe(org.reactivestreams.Subscription subscription)
- Specified by:
onSubscribein interfaceorg.reactivestreams.Subscriber<T>
-
onNext
public void onNext(T item)
- Specified by:
onNextin interfaceorg.reactivestreams.Subscriber<T>
-
onError
public void onError(java.lang.Throwable failure)
- Specified by:
onErrorin interfaceorg.reactivestreams.Subscriber<T>
-
onComplete
public void onComplete()
- Specified by:
onCompletein interfaceorg.reactivestreams.Subscriber<T>
-
-