Package rx.internal.operators
Class OnSubscribeDetach.DetachSubscriber<T>
- java.lang.Object
-
- rx.Subscriber<T>
-
- rx.internal.operators.OnSubscribeDetach.DetachSubscriber<T>
-
- Type Parameters:
T
- the value type
- All Implemented Interfaces:
Observer<T>
,Subscription
- Enclosing class:
- OnSubscribeDetach<T>
static final class OnSubscribeDetach.DetachSubscriber<T> extends Subscriber<T>
The parent subscriber that forwards events and cleans up on a terminal state.
-
-
Constructor Summary
Constructors Constructor Description DetachSubscriber(Subscriber<? super T> actual)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
innerRequest(long n)
(package private) void
innerUnsubscribe()
void
onCompleted()
Notifies the Observer that theObservable
has finished sending push-based notifications.void
onError(java.lang.Throwable e)
Notifies the Observer that theObservable
has experienced an error condition.void
onNext(T t)
Provides the Observer with a new item to observe.void
setProducer(Producer p)
If other subscriber is set (by calling constructorSubscriber(Subscriber)
orSubscriber(Subscriber, boolean)
) then this method callssetProducer
on the other subscriber.-
Methods inherited from class rx.Subscriber
add, isUnsubscribed, onStart, request, unsubscribe
-
-
-
-
Field Detail
-
actual
final java.util.concurrent.atomic.AtomicReference<Subscriber<? super T>> actual
-
producer
final java.util.concurrent.atomic.AtomicReference<Producer> producer
-
requested
final java.util.concurrent.atomic.AtomicLong requested
-
-
Constructor Detail
-
DetachSubscriber
public DetachSubscriber(Subscriber<? super T> actual)
-
-
Method Detail
-
onNext
public void onNext(T t)
Description copied from interface:Observer
Provides the Observer with a new item to observe.The
Observable
may call this method 0 or more times.The
Observable
will not call this method again after it calls eitherObserver.onCompleted()
orObserver.onError(java.lang.Throwable)
.- Parameters:
t
- the item emitted by the Observable
-
onError
public void onError(java.lang.Throwable e)
Description copied from interface:Observer
Notifies the Observer that theObservable
has experienced an error condition.If the
Observable
calls this method, it will not thereafter callObserver.onNext(T)
orObserver.onCompleted()
.- Parameters:
e
- the exception encountered by the Observable
-
onCompleted
public void onCompleted()
Description copied from interface:Observer
Notifies the Observer that theObservable
has finished sending push-based notifications.The
Observable
will not call this method if it callsObserver.onError(java.lang.Throwable)
.
-
innerRequest
void innerRequest(long n)
-
setProducer
public void setProducer(Producer p)
Description copied from class:Subscriber
If other subscriber is set (by calling constructorSubscriber(Subscriber)
orSubscriber(Subscriber, boolean)
) then this method callssetProducer
on the other subscriber. If the other subscriber is not set and no requests have been made to this subscriber thenp.request(Long.MAX_VALUE)
is called. If the other subscriber is not set and some requests have been made to this subscriber thenp.request(n)
is called where n is the accumulated requests to this subscriber.- Overrides:
setProducer
in classSubscriber<T>
- Parameters:
p
- producer to be used by this subscriber or the other subscriber (or recursively its other subscriber) to make requests from
-
innerUnsubscribe
void innerUnsubscribe()
-
-