Interface SegmentPublisherSupplier<R>
- All Known Subinterfaces:
SegmentAwarePublisherSupplier<R>
public interface SegmentPublisherSupplier<R>
A
Publisher
that also notifies in a thread safe manner when a segment has sent all values upstream. To more
specifically detail the guarantee, the accept
method of the provided IntConsumer
will be invoked
serially inline with onNext
, onError
, onComplete
and will only be invoked after all values
from the given segment have already been notified via {@code onNext). Note that there is no guarantee that the previous
values was from the given segment, only that all have been notified prior.
<p>
If segment completion is not needed, use the {@link Publisher#subscribe(Subscriber)} or provided
{@link #EMPTY_CONSUMER} as the argument to the {@link #subscribe(Subscriber, IntConsumer)} method. This allows
implementors to optimize for the case when segment completion is not needed as this may require additional overhead.
@param <R> value type-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic interface
Wrapper around an element returned that can either be a value or a segment completion. -
Method Summary
Modifier and TypeMethodDescriptionorg.reactivestreams.Publisher<R>
org.reactivestreams.Publisher<SegmentPublisherSupplier.Notification<R>>
-
Method Details
-
publisherWithoutSegments
org.reactivestreams.Publisher<R> publisherWithoutSegments() -
publisherWithSegments
org.reactivestreams.Publisher<SegmentPublisherSupplier.Notification<R>> publisherWithSegments()
-