Package io.servicetalk.concurrent.api
Interface PublisherToSingleOperator<T,R>
- Type Parameters:
T
- Type of items emitted by thePublisher
this operator is applied.R
- Type of items emitted by this operator.
- All Superinterfaces:
Function<SingleSource.Subscriber<? super R>,
PublisherSource.Subscriber<? super T>>
public interface PublisherToSingleOperator<T,R>
extends Function<SingleSource.Subscriber<? super R>,PublisherSource.Subscriber<? super T>>
An operator contract for a
Publisher
to Single
conversion.
Logically an operator sits between a Publisher
and a PublisherSource.Subscriber
and hence it has two
responsibilities:
- Subscribe to the
Publisher
on which this operator is applied. - Accept a
SingleSource.Subscriber
which is converted to aPublisherSource.Subscriber
that subscribes to this operator.
Function
that takes a SingleSource.Subscriber
and returns a
PublisherSource.Subscriber
. The SingleSource.Subscriber
that is passed to this Function
is
the one that has subscribed to the Single
operator. The PublisherSource.Subscriber
that is returned
by this Function
is the one that should be used to subscribe to the Publisher
on which this operator
is applied.-
Method Summary
Modifier and TypeMethodDescriptionPublisherSource.Subscriber<? super T>
apply
(SingleSource.Subscriber<? super R> subscriber) Implementation of this operator.
-
Method Details
-
apply
Implementation of this operator. SeePublisherToSingleOperator
for definition of an operator.- Specified by:
apply
in interfaceFunction<T,
R> - Parameters:
subscriber
-SingleSource.Subscriber
that subscribed to this operator.- Returns:
PublisherSource.Subscriber
that is used to subscribe to thePublisher
that this operator is applied to.
-