Package rx.observables
Class ConnectableObservable<T>
- java.lang.Object
-
- rx.Observable<T>
-
- rx.observables.ConnectableObservable<T>
-
- Type Parameters:
T- the type of items emitted by theConnectableObservable
- Direct Known Subclasses:
OperatorMulticast,OperatorPublish,OperatorReplay
public abstract class ConnectableObservable<T> extends Observable<T>
AConnectableObservableresembles an ordinaryObservable, except that it does not begin emitting items when it is subscribed to, but only when itsconnect()method is called. In this way you can wait for all intendedSubscribers toObservable.subscribe()to theObservablebefore theObservablebegins emitting items.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class rx.Observable
Observable.OnSubscribe<T>, Observable.Operator<R,T>, Observable.Transformer<T,R>
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedConnectableObservable(Observable.OnSubscribe<T> onSubscribe)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Observable<T>autoConnect()Returns an Observable that automatically connects to this ConnectableObservable when the first Subscriber subscribes.Observable<T>autoConnect(int numberOfSubscribers)Returns an Observable that automatically connects to this ConnectableObservable when the specified number of Subscribers subscribe to it.Observable<T>autoConnect(int numberOfSubscribers, Action1<? super Subscription> connection)Returns an Observable that automatically connects to this ConnectableObservable when the specified number of Subscribers subscribe to it and calls the specified callback with the Subscription associated with the established connection.Subscriptionconnect()Instructs theConnectableObservableto begin emitting the items from its underlyingObservableto itsSubscribers.abstract voidconnect(Action1<? super Subscription> connection)Instructs theConnectableObservableto begin emitting the items from its underlyingObservableto itsSubscribers.Observable<T>refCount()Returns anObservablethat stays connected to thisConnectableObservableas long as there is at least one subscription to thisConnectableObservable.-
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
-
-
-
-
Constructor Detail
-
ConnectableObservable
protected ConnectableObservable(Observable.OnSubscribe<T> onSubscribe)
-
-
Method Detail
-
connect
public final Subscription connect()
Instructs theConnectableObservableto begin emitting the items from its underlyingObservableto itsSubscribers.To disconnect from a synchronous source, use the
connect(rx.functions.Action1)method.- Returns:
- the subscription representing the connection
- See Also:
- ReactiveX documentation: Connect
-
connect
public abstract void connect(Action1<? super Subscription> connection)
Instructs theConnectableObservableto begin emitting the items from its underlyingObservableto itsSubscribers.- 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:
- ReactiveX documentation: Connect
-
refCount
public Observable<T> refCount()
Returns anObservablethat stays connected to thisConnectableObservableas long as there is at least one subscription to thisConnectableObservable.- Returns:
- a
Observable - See Also:
- ReactiveX documentation: RefCount
-
autoConnect
@Beta public Observable<T> autoConnect()
Returns an Observable that automatically connects to this ConnectableObservable when the first Subscriber subscribes.- Returns:
- an Observable that automatically connects to this ConnectableObservable when the first Subscriber subscribes
- Since:
- (if this graduates from Experimental/Beta to supported, replace this parenthetical with the release number)
-
autoConnect
@Beta public Observable<T> autoConnect(int numberOfSubscribers)
Returns an Observable that automatically connects to this ConnectableObservable when the specified number of Subscribers subscribe to it.- Parameters:
numberOfSubscribers- the number of subscribers to await before calling connect on the ConnectableObservable. A non-positive value indicates an immediate connection.- Returns:
- an Observable that automatically connects to this ConnectableObservable when the specified number of Subscribers subscribe to it
- Since:
- (if this graduates from Experimental/Beta to supported, replace this parenthetical with the release number)
-
autoConnect
@Beta public Observable<T> autoConnect(int numberOfSubscribers, Action1<? super Subscription> connection)
Returns an Observable that automatically connects to this ConnectableObservable when the specified number of Subscribers subscribe to it and calls the specified callback with the Subscription associated with the established connection.- Parameters:
numberOfSubscribers- the number of subscribers to await before calling connect on the ConnectableObservable. A non-positive value indicates an immediate connection.connection- the callback Action1 that will receive the Subscription representing the established connection- Returns:
- an Observable that automatically connects to this ConnectableObservable when the specified number of Subscribers subscribe to it and calls the specified callback with the Subscription associated with the established connection
- Since:
- (if this graduates from Experimental/Beta to supported, replace this parenthetical with the release number)
-
-