Package rx.internal.operators
Class OperatorPublish<T>
java.lang.Object
rx.Observable<T>
rx.observables.ConnectableObservable<T>
rx.internal.operators.OperatorPublish<T>
- Type Parameters:
T
- the value type
A connectable observable which shares an underlying source and dispatches source values to subscribers in a backpressure-aware
manner.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static final class
A Producer and Subscription that manages the request and unsubscription state of a child subscriber in thread-safe manner.(package private) static final class
Nested classes/interfaces inherited from class rx.Observable
Observable.OnSubscribe<T>, Observable.Operator<R,
T>, Observable.Transformer<T, R> -
Field Summary
FieldsModifier and TypeFieldDescription(package private) final AtomicReference
<OperatorPublish.PublishSubscriber<T>> Holds the current subscriber that is, will be or just was subscribed to the source observable.(package private) final Observable
<? extends T> The source observable. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
OperatorPublish
(Observable.OnSubscribe<T> onSubscribe, Observable<? extends T> source, AtomicReference<OperatorPublish.PublishSubscriber<T>> current) -
Method Summary
Modifier and TypeMethodDescriptionvoid
connect
(Action1<? super Subscription> connection) Instructs theConnectableObservable
to begin emitting the items from its underlyingObservable
to itsSubscriber
s.static <T> ConnectableObservable
<T> create
(Observable<? extends T> source) Creates a OperatorPublish instance to publish values of the given source observable.static <T,
R> Observable <R> create
(Observable<? extends T> source, Func1<? super Observable<T>, ? extends Observable<R>> selector) static <T,
R> Observable <R> create
(Observable<? extends T> source, Func1<? super Observable<T>, ? extends Observable<R>> selector, boolean delayError) Methods inherited from class rx.observables.ConnectableObservable
autoConnect, autoConnect, autoConnect, connect, refCount
Methods inherited from class rx.Observable
all, amb, amb, amb, amb, amb, amb, amb, amb, amb, ambWith, asObservable, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, cache, cache, cacheWithInitialCapacity, cast, collect, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatestDelayError, compose, concat, concat, concat, concat, concat, concat, concat, concat, concat, concatDelayError, concatDelayError, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatMap, concatMapDelayError, concatMapEager, concatMapEager, concatMapEager, concatMapIterable, concatWith, contains, count, countLong, create, create, create, debounce, debounce, debounce, defaultIfEmpty, defer, delay, delay, delay, delay, delaySubscription, delaySubscription, delaySubscription, delaySubscription, dematerialize, distinct, distinct, distinctUntilChanged, distinctUntilChanged, distinctUntilChanged, doAfterTerminate, doOnCompleted, doOnEach, doOnEach, doOnError, doOnNext, doOnRequest, doOnSubscribe, doOnTerminate, doOnUnsubscribe, elementAt, elementAtOrDefault, empty, error, exists, extend, filter, finallyDo, first, first, firstOrDefault, firstOrDefault, flatMap, flatMap, flatMap, flatMap, flatMap, flatMap, flatMapIterable, flatMapIterable, flatMapIterable, flatMapIterable, forEach, forEach, forEach, from, from, from, from, from, fromAsync, fromCallable, groupBy, groupBy, groupBy, groupJoin, ignoreElements, interval, interval, interval, interval, isEmpty, join, just, just, just, just, just, just, just, just, just, just, last, last, lastOrDefault, lastOrDefault, lift, limit, map, materialize, merge, merge, merge, merge, merge, merge, merge, merge, merge, merge, merge, merge, merge, merge, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeWith, nest, never, observeOn, observeOn, observeOn, observeOn, ofType, onBackpressureBuffer, onBackpressureBuffer, onBackpressureBuffer, onBackpressureBuffer, onBackpressureDrop, onBackpressureDrop, onBackpressureLatest, onErrorResumeNext, onErrorResumeNext, onErrorReturn, onExceptionResumeNext, onTerminateDetach, publish, publish, range, range, rebatchRequests, reduce, reduce, repeat, repeat, repeat, repeat, repeatWhen, repeatWhen, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, retry, retry, retry, retryWhen, retryWhen, sample, sample, sample, scan, scan, sequenceEqual, sequenceEqual, serialize, share, single, single, singleOrDefault, singleOrDefault, skip, skip, skip, skipLast, skipLast, skipLast, skipUntil, skipWhile, startWith, startWith, startWith, startWith, startWith, startWith, startWith, startWith, startWith, startWith, startWith, subscribe, subscribe, subscribe, subscribe, subscribe, subscribe, subscribeOn, switchIfEmpty, switchMap, switchMapDelayError, switchOnNext, switchOnNextDelayError, take, take, take, takeFirst, takeLast, takeLast, takeLast, takeLast, takeLast, takeLastBuffer, takeLastBuffer, takeLastBuffer, takeLastBuffer, takeLastBuffer, takeUntil, takeUntil, takeWhile, throttleFirst, throttleFirst, throttleLast, throttleLast, throttleWithTimeout, throttleWithTimeout, timeInterval, timeInterval, timeout, timeout, timeout, timeout, timeout, timeout, timeout, timeout, timer, timer, timer, timer, timestamp, timestamp, toBlocking, toCompletable, toList, toMap, toMap, toMap, toMultimap, toMultimap, toMultimap, toMultimap, toSingle, toSortedList, toSortedList, toSortedList, toSortedList, unsafeSubscribe, unsubscribeOn, using, using, window, window, window, window, window, window, window, window, window, window, window, window, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, zip, zip, zip, zip, zip, zip, zip, zip, zip, zip, zip, zipWith, zipWith
-
Field Details
-
source
The source observable. -
current
Holds the current subscriber that is, will be or just was subscribed to the source observable.
-
-
Constructor Details
-
OperatorPublish
private OperatorPublish(Observable.OnSubscribe<T> onSubscribe, Observable<? extends T> source, AtomicReference<OperatorPublish.PublishSubscriber<T>> current)
-
-
Method Details
-
create
Creates a OperatorPublish instance to publish values of the given source observable.- Type Parameters:
T
- the value type- Parameters:
source
- the source observable- Returns:
- the connectable observable
-
create
public static <T,R> Observable<R> create(Observable<? extends T> source, Func1<? super Observable<T>, ? extends Observable<R>> selector) -
create
public static <T,R> Observable<R> create(Observable<? extends T> source, Func1<? super Observable<T>, ? extends Observable<R>> selector, boolean delayError) -
connect
Description copied from class:ConnectableObservable
Instructs theConnectableObservable
to begin emitting the items from its underlyingObservable
to itsSubscriber
s.- Specified by:
connect
in classConnectableObservable<T>
- Parameters:
connection
- the action that receives the connection subscription before the subscription to source happens allowing the caller to synchronously disconnect a synchronous source- See Also:
-