Package rx.observables
Class GroupedObservable<K,T>
- java.lang.Object
-
- rx.Observable<T>
-
- rx.observables.GroupedObservable<K,T>
-
- Type Parameters:
K
- the type of the keyT
- the type of the items emitted by theGroupedObservable
- Direct Known Subclasses:
OperatorGroupBy.GroupedUnicast
public class GroupedObservable<K,T> extends Observable<T>
AnObservable
that has been grouped by key, the value of which can be obtained withgetKey()
.Note: A
GroupedObservable
will cache the items it is to emit until such time as it is subscribed to. For this reason, in order to avoid memory leaks, you should not simply ignore thoseGroupedObservable
s that do not concern you. Instead, you can signal to them that they may discard their buffers by applying an operator liketake
(0)
to them.
-
-
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 protected
GroupedObservable(K key, Observable.OnSubscribe<T> onSubscribe)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static <K,T>
GroupedObservable<K,T>create(K key, Observable.OnSubscribe<T> f)
Returns an Observable that will execute the specified function when aSubscriber
subscribes to it.static <K,T>
GroupedObservable<K,T>from(K key, Observable<T> o)
Converts anObservable
into aGroupedObservable
with a particular key.K
getKey()
Returns the key that identifies the group of items emitted by thisGroupedObservable
-
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 Detail
-
key
private final K key
-
-
Constructor Detail
-
GroupedObservable
protected GroupedObservable(K key, Observable.OnSubscribe<T> onSubscribe)
-
-
Method Detail
-
from
public static <K,T> GroupedObservable<K,T> from(K key, Observable<T> o)
Converts anObservable
into aGroupedObservable
with a particular key.- Type Parameters:
K
- the key typeT
- the value type- Parameters:
key
- the key to identify the group of items emitted by thisGroupedObservable
o
- theObservable
to convert- Returns:
- a
GroupedObservable
representation ofo
, with keykey
-
create
public static <K,T> GroupedObservable<K,T> create(K key, Observable.OnSubscribe<T> f)
Returns an Observable that will execute the specified function when aSubscriber
subscribes to it.Write the function you pass to
create
so that it behaves as an Observable: It should invoke the Subscriber'sonNext
,onError
, andonCompleted
methods appropriately.A well-formed Observable must invoke either the Subscriber's
onCompleted
method exactly once or itsonError
method exactly once.See Rx Design Guidelines (PDF) for detailed information.
- Scheduler:
create
does not operate by default on a particularScheduler
.
- Type Parameters:
K
- the type of the keyT
- the type of the items that this Observable emits- Parameters:
key
- the key valuef
- a function that accepts anSubscriber<T>
, and invokes itsonNext
,onError
, andonCompleted
methods as appropriate- Returns:
- a GroupedObservable that, when a
Subscriber
subscribes to it, will execute the specified function
-
getKey
public K getKey()
Returns the key that identifies the group of items emitted by thisGroupedObservable
- Returns:
- the key that the items emitted by this
GroupedObservable
were grouped by
-
-