Package io.servicetalk.concurrent.api
Interface PublisherOperator<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:
java.util.function.Function<PublisherSource.Subscriber<? super R>,PublisherSource.Subscriber<? super T>>
public interface PublisherOperator<T,R> extends java.util.function.Function<PublisherSource.Subscriber<? super R>,PublisherSource.Subscriber<? super T>>
An operator contract for aPublisher
. Logically an operator sits between aPublisher
and aPublisherSource.Subscriber
and hence it has two responsibilities:- Subscribe to the
Publisher
on which this operator is applied. - Accept a
PublisherSource.Subscriber
that subscribes to this operator.
Function
that takes aPublisherSource.Subscriber
and returns aPublisherSource.Subscriber
. ThePublisherSource.Subscriber
that is passed to thisFunction
is the one that has subscribed to this operator. ThePublisherSource.Subscriber
that is returned by thisFunction
is the one that should be used to subscribe to thePublisher
on which this operator is applied.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description PublisherSource.Subscriber<? super T>
apply(PublisherSource.Subscriber<? super R> subscriber)
Implementation of this operator.
-
-
-
Method Detail
-
apply
PublisherSource.Subscriber<? super T> apply(PublisherSource.Subscriber<? super R> subscriber)
Implementation of this operator. SeePublisherOperator
for definition of an operator.- Specified by:
apply
in interfacejava.util.function.Function<T,R>
- Parameters:
subscriber
-PublisherSource.Subscriber
that subscribed to this operator.- Returns:
PublisherSource.Subscriber
that is used to subscribe to thePublisher
that this operator is applied to.
-
-