Class FlowableSamplePublisher.SamplePublisherSubscriber<T>
java.lang.Object
java.util.concurrent.atomic.AtomicReference<T>
io.reactivex.rxjava3.internal.operators.flowable.FlowableSamplePublisher.SamplePublisherSubscriber<T>
- All Implemented Interfaces:
FlowableSubscriber<T>
,Serializable
,org.reactivestreams.Subscriber<T>
,org.reactivestreams.Subscription
- Direct Known Subclasses:
FlowableSamplePublisher.SampleMainEmitLast
,FlowableSamplePublisher.SampleMainNoLast
- Enclosing class:
FlowableSamplePublisher<T>
abstract static class FlowableSamplePublisher.SamplePublisherSubscriber<T>
extends AtomicReference<T>
implements FlowableSubscriber<T>, org.reactivestreams.Subscription
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) final org.reactivestreams.Subscriber
<? super T> (package private) final AtomicReference
<org.reactivestreams.Subscription> (package private) final AtomicLong
(package private) final org.reactivestreams.Publisher
<?> private static final long
(package private) org.reactivestreams.Subscription
-
Constructor Summary
ConstructorsConstructorDescriptionSamplePublisherSubscriber
(org.reactivestreams.Subscriber<? super T> actual, org.reactivestreams.Publisher<?> other) -
Method Summary
Modifier and TypeMethodDescriptionvoid
cancel()
void
complete()
(package private) abstract void
(package private) void
emit()
void
void
void
void
void
onSubscribe
(org.reactivestreams.Subscription s) Implementors of this method should make sure everything that needs to be visible inSubscriber.onNext(Object)
is established before callingSubscription.request(long)
.void
request
(long n) (package private) abstract void
run()
(package private) void
setOther
(org.reactivestreams.Subscription o) Methods inherited from class java.util.concurrent.atomic.AtomicReference
accumulateAndGet, compareAndExchange, compareAndExchangeAcquire, compareAndExchangeRelease, compareAndSet, get, getAcquire, getAndAccumulate, getAndSet, getAndUpdate, getOpaque, getPlain, lazySet, set, setOpaque, setPlain, setRelease, toString, updateAndGet, weakCompareAndSet, weakCompareAndSetAcquire, weakCompareAndSetPlain, weakCompareAndSetRelease, weakCompareAndSetVolatile
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
downstream
-
sampler
final org.reactivestreams.Publisher<?> sampler -
requested
-
other
-
upstream
org.reactivestreams.Subscription upstream
-
-
Constructor Details
-
SamplePublisherSubscriber
SamplePublisherSubscriber(org.reactivestreams.Subscriber<? super T> actual, org.reactivestreams.Publisher<?> other)
-
-
Method Details
-
onSubscribe
public void onSubscribe(org.reactivestreams.Subscription s) Description copied from interface:FlowableSubscriber
Implementors of this method should make sure everything that needs to be visible inSubscriber.onNext(Object)
is established before callingSubscription.request(long)
. In practice this means no initialization should happen after therequest()
call and additional behavior is thread safe in respect toonNext
.- Specified by:
onSubscribe
in interfaceFlowableSubscriber<T>
- Specified by:
onSubscribe
in interfaceorg.reactivestreams.Subscriber<T>
-
onNext
- Specified by:
onNext
in interfaceorg.reactivestreams.Subscriber<T>
-
onError
- Specified by:
onError
in interfaceorg.reactivestreams.Subscriber<T>
-
onComplete
public void onComplete()- Specified by:
onComplete
in interfaceorg.reactivestreams.Subscriber<T>
-
setOther
void setOther(org.reactivestreams.Subscription o) -
request
public void request(long n) - Specified by:
request
in interfaceorg.reactivestreams.Subscription
-
cancel
public void cancel()- Specified by:
cancel
in interfaceorg.reactivestreams.Subscription
-
error
-
complete
public void complete() -
emit
void emit() -
completion
abstract void completion() -
run
abstract void run()
-