Package rx.internal.operators
Class OperatorSwitchIfEmpty.ParentSubscriber<T>
java.lang.Object
rx.Subscriber<T>
rx.internal.operators.OperatorSwitchIfEmpty.ParentSubscriber<T>
- All Implemented Interfaces:
Observer<T>
,Subscription
- Enclosing class:
OperatorSwitchIfEmpty<T>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Observable
<? extends T> private final ProducerArbiter
private final Subscriber
<? super T> private boolean
private final SerialSubscription
-
Constructor Summary
ConstructorsConstructorDescriptionParentSubscriber
(Subscriber<? super T> child, SerialSubscription ssub, ProducerArbiter arbiter, Observable<? extends T> alternate) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Notifies the Observer that theObservable
has finished sending push-based notifications.void
Notifies the Observer that theObservable
has experienced an error condition.void
Provides the Observer with a new item to observe.void
setProducer
(Producer producer) If other subscriber is set (by calling constructorSubscriber(Subscriber)
orSubscriber(Subscriber, boolean)
) then this method callssetProducer
on the other subscriber.private void
Methods inherited from class rx.Subscriber
add, isUnsubscribed, onStart, request, unsubscribe
-
Field Details
-
empty
private boolean empty -
child
-
ssub
-
arbiter
-
alternate
-
-
Constructor Details
-
ParentSubscriber
ParentSubscriber(Subscriber<? super T> child, SerialSubscription ssub, ProducerArbiter arbiter, Observable<? extends T> alternate)
-
-
Method Details
-
setProducer
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:
producer
- producer to be used by this subscriber or the other subscriber (or recursively its other subscriber) to make requests from
-
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)
. -
subscribeToAlternate
private void subscribeToAlternate() -
onError
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
-
onNext
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
-