SingleSources and switches (subscribes) to the newer ones
while disposing the older ones and emits the latest success value, optionally delaying
errors from the main source or the inner sources.
History: 2.1.11 - experimental
| Modifier and Type | Class and Description |
|---|---|
| pack-priv static class |
| Modifier and Type | Field and Description |
|---|---|
| pack-priv final boolean | |
| pack-priv final Function | |
| pack-priv final Flowable |
| Access | Constructor and Description |
|---|---|
| public | FlowableSwitchMapSingle(Flowable<T> source, Function<? super T, ? extends SingleSource<? extends R>> mapper, boolean delayErrors)
|
| Modifier and Type | Method and Description |
|---|---|
| protected void | subscribeActual(Subscriber<? super R>
the incoming Subscriber, never null s)Implements abstract io. Subscribers.
|
| delayErrors | back to summary |
|---|---|
| pack-priv final boolean delayErrors | |
| mapper | back to summary |
|---|---|
| pack-priv final Function<? super T, ? extends SingleSource<? extends R>> mapper | |
| source | back to summary |
|---|---|
| pack-priv final Flowable<T> source | |
| FlowableSwitchMapSingle | back to summary |
|---|---|
| public FlowableSwitchMapSingle(Flowable<T> source, Function<? super T, ? extends SingleSource<? extends R>> mapper, boolean delayErrors) | |
| subscribeActual | back to summary |
|---|---|
| protected void subscribeActual(Subscriber<? super R> s) Implements abstract io. Doc from io. Operator implementations (both source and intermediate) should implement this method that
performs the necessary business logic and handles the incoming There is no need to call any of the plugin hooks on the current
| |
| Modifier and Type | Class and Description |
|---|---|
| pack-priv static class |
| Modifier and Type | Field and Description |
|---|---|
| pack-priv volatile boolean | |
| pack-priv final boolean | |
| pack-priv volatile boolean | |
| pack-priv final Subscriber | |
| pack-priv long | |
| pack-priv final AtomicThrowable | |
| pack-priv final AtomicReference | |
| pack-priv static final FlowableSwitchMapSingle. | |
| pack-priv final Function | |
| pack-priv final AtomicLong | |
| private static final long | |
| pack-priv Subscription |
| Access | Constructor and Description |
|---|---|
| pack-priv | SwitchMapSingleSubscriber(Subscriber<? super R> downstream, Function<? super T, ? extends SingleSource<? extends R>> mapper, boolean delayErrors)
|
| Modifier and Type | Method and Description |
|---|---|
| public void | cancel()
Implements org. Publisher to stop sending data and clean up resources.
|
| pack-priv void | |
| pack-priv void | |
| pack-priv void | |
| public void | |
| public void | onError(Throwable
the throwable signaled t)Implements org. |
| public void | onNext(T
the element signaled t)Implements org. Publisher in response to requests to Subscription#request(long).
|
| public void | onSubscribe(Subscription
the s)Subscription that allows requesting data via Subscription#request(long)Implements io. onNext(Object) is established before
calling Subscription#request(long).
|
| public void | request(long
the strictly positive number of elements to requests to the upstream n)PublisherImplements org. Publisher until demand is signaled via this method.
|
| cancelled | back to summary |
|---|---|
| pack-priv volatile boolean cancelled | |
| delayErrors | back to summary |
|---|---|
| pack-priv final boolean delayErrors | |
| done | back to summary |
|---|---|
| pack-priv volatile boolean done | |
| downstream | back to summary |
|---|---|
| pack-priv final Subscriber<? super R> downstream | |
| emitted | back to summary |
|---|---|
| pack-priv long emitted | |
| errors | back to summary |
|---|---|
| pack-priv final AtomicThrowable errors | |
| inner | back to summary |
|---|---|
| pack-priv final AtomicReference<FlowableSwitchMapSingle. | |
| INNER_DISPOSED | back to summary |
|---|---|
| pack-priv static final FlowableSwitchMapSingle. | |
| mapper | back to summary |
|---|---|
| pack-priv final Function<? super T, ? extends SingleSource<? extends R>> mapper | |
| requested | back to summary |
|---|---|
| pack-priv final AtomicLong requested | |
| serialVersionUID | back to summary |
|---|---|
| private static final long serialVersionUID Hides java. | |
| upstream | back to summary |
|---|---|
| pack-priv Subscription upstream | |
| SwitchMapSingleSubscriber | back to summary |
|---|---|
| pack-priv SwitchMapSingleSubscriber(Subscriber<? super R> downstream, Function<? super T, ? extends SingleSource<? extends R>> mapper, boolean delayErrors) | |
| cancel | back to summary |
|---|---|
| public void cancel() Implements org. Doc from org. Request the Data may still be sent to meet previously signalled demand after calling cancel.
| |
| disposeInner | back to summary |
|---|---|
pack-priv void disposeInner()
| |
| drain | back to summary |
|---|---|
| pack-priv void drain() | |
| innerError | back to summary |
|---|---|
| pack-priv void innerError(FlowableSwitchMapSingle. | |
| onComplete | back to summary |
|---|---|
| public void onComplete() Implements org. Doc from org. Successful terminal state.
No further events will be sent even if
| |
| onError | back to summary |
|---|---|
| public void onError(Throwable t) Implements org. Doc from org. Failed terminal state.
No further events will be sent even if | |
| onNext | back to summary |
|---|---|
| public void onNext(T t) Implements org. Doc from org. Data notification sent by the
| |
| onSubscribe | back to summary |
|---|---|
| public void onSubscribe(Subscription s) Implements io. Doc from io. Implementors of this method should make sure everything that needs
to be visible in
No data will start flowing until
It is the responsibility of this
The
| |
| request | back to summary |
|---|---|
| public void request(long n) Implements org. Doc from org. No events will be sent by a
It can be called however often and whenever needed—but if the outstanding cumulative demand ever becomes Long.MAX_VALUE or more,
it may be treated by the
Whatever has been requested can be sent by the
A | |
| Modifier and Type | Field and Description |
|---|---|
| pack-priv volatile R | |
| pack-priv final FlowableSwitchMapSingle. | |
| private static final long |
| Access | Constructor and Description |
|---|---|
| pack-priv |
| Modifier and Type | Method and Description |
|---|---|
| pack-priv void | |
| public void | onError(Throwable
the exception encountered by the Single e)Implements io. Single has experienced an error condition.
|
| public void | onSubscribe(Disposable
the Disposable instance whose d)Disposable#dispose() can
be called anytime to cancel the connectionImplements io. onSubscribe(Disposable) itself) and asynchronous manner.
|
| public void | onSuccess(R
the item emitted by the Single t)Implements io. Single has finished sending
push-based notifications.
|
| item | back to summary |
|---|---|
| pack-priv volatile R item | |
| parent | back to summary |
|---|---|
| pack-priv final FlowableSwitchMapSingle. | |
| serialVersionUID | back to summary |
|---|---|
| private static final long serialVersionUID Hides java. | |
| SwitchMapSingleObserver | back to summary |
|---|---|
| pack-priv SwitchMapSingleObserver(FlowableSwitchMapSingle. | |
| dispose | back to summary |
|---|---|
| pack-priv void dispose() | |
| onError | back to summary |
|---|---|
| public void onError(Throwable e) Implements io. Doc from io. Notifies the SingleObserver that the
If the | |
| onSubscribe | back to summary |
|---|---|
| public void onSubscribe(Disposable d) Implements io. Doc from io. Provides the SingleObserver with the means of cancelling (disposing) the
connection (channel) with the Single in both
synchronous (from within
| |
| onSuccess | back to summary |
|---|---|
| public void onSuccess(R t) Implements io. Doc from io. Notifies the SingleObserver with a single item and that the
The
| |