Top Description Inners Constructors Methods
rx.internal.operators

public final Class BlockingOperatorLatest

extends Object
Class Inheritance
Imports
java.util.*, java.util.concurrent.Semaphore, java.util.concurrent.atomic.AtomicReference, rx.*, .Observable, rx.exceptions.Exceptions

Wait for and iterate over the latest values of the source observable. If the source works faster than the iterator, values may be skipped, but not the onError or onCompleted events.

Nested and Inner Type Summary

Modifier and TypeClass and Description
pack-priv static class
BlockingOperatorLatest.LatestObserverIterator<T>

Observer of source, iterator for output.

Constructor Summary

AccessConstructor and Description
private
BlockingOperatorLatest()

Utility class.

Method Summary

Modifier and TypeMethod and Description
public static <
the value type
T
>
Iterable<T>

Returns:

an Iterable that blocks until or unless the Observable emits an item that has not been returned by the Iterable, then returns that item
latest
(final Observable<? extends T>
the source Observable
source
)

Returns an Iterable that blocks until or unless the Observable emits an item that has not been returned by the Iterable, then returns that item

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

BlockingOperatorLatestback to summary
private BlockingOperatorLatest()

Utility class.

Method Detail

latestback to summary
public static <T> Iterable<T> latest(final Observable<? extends T> source)

Returns an Iterable that blocks until or unless the Observable emits an item that has not been returned by the Iterable, then returns that item

Parameters
<T>
the value type
source:Observable<? extends T>

the source Observable

Returns:Iterable<T>

an Iterable that blocks until or unless the Observable emits an item that has not been returned by the Iterable, then returns that item

rx.internal.operators back to summary

pack-priv final Class BlockingOperatorLatest.LatestObserverIterator<T>

extends Subscriber<Notification<? extends T>>
implements Iterator<T>
Class Inheritance
All Implemented Interfaces
java.util.Iterator

Observer of source, iterator for output.

Field Summary

Modifier and TypeField and Description
pack-priv Notification<? extends T>
pack-priv final Semaphore
pack-priv final AtomicReference<Notification<? extends T>>

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public boolean
hasNext()

Implements java.util.Iterator.hasNext.

Returns true if the iteration has more elements.
public T
next()

Implements java.util.Iterator.next.

Returns the next element in the iteration.
public void
onCompleted()

Implements rx.Observer.onCompleted.

Notifies the Observer that the Observable has finished sending push-based notifications.
public void
onError(Throwable
the exception encountered by the Observable
e
)

Implements rx.Observer.onError.

Notifies the Observer that the Observable has experienced an error condition.
public void
onNext(Notification<? extends T>
the item emitted by the Observable
args
)

Implements rx.Observer.onNext.

Provides the Observer with a new item to observe.
public void
remove()

Overrides default java.util.Iterator.remove.

Removes from the underlying collection the last element returned by this iterator (optional operation).
Inherited from rx.Subscriber:
addisUnsubscribedonStartrequestsetProducerunsubscribe

Field Detail

iteratorNotificationback to summary
pack-priv Notification<? extends T> iteratorNotification
notifyback to summary
pack-priv final Semaphore notify
valueback to summary
pack-priv final AtomicReference<Notification<? extends T>> value

Constructor Detail

LatestObserverIteratorback to summary
pack-priv LatestObserverIterator()

Method Detail

hasNextback to summary
public boolean hasNext()

Implements java.util.Iterator.hasNext.

Doc from java.util.Iterator.hasNext.

Returns true if the iteration has more elements. (In other words, returns true if next would return an element rather than throwing an exception.)

Returns:boolean

true if the iteration has more elements

Annotations
@Override
nextback to summary
public T next()

Implements java.util.Iterator.next.

Doc from java.util.Iterator.next.

Returns the next element in the iteration.

Returns:T

the next element in the iteration

Annotations
@Override
onCompletedback to summary
public void onCompleted()

Implements rx.Observer.onCompleted.

Doc from rx.Observer.onCompleted.

Notifies the Observer that the Observable has finished sending push-based notifications.

The Observable will not call this method if it calls onError.

Annotations
@Override
onErrorback to summary
public void onError(Throwable e)

Implements rx.Observer.onError.

Doc from rx.Observer.onError.

Notifies the Observer that the Observable has experienced an error condition.

If the Observable calls this method, it will not thereafter call onNext or onCompleted.

Parameters
e:Throwable

the exception encountered by the Observable

Annotations
@Override
onNextback to summary
public void onNext(Notification<? extends T> args)

Implements rx.Observer.onNext.

Doc from rx.Observer.onNext.

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 either onCompleted or onError.

Parameters
args:Notification<? extends T>

the item emitted by the Observable

Annotations
@Override
removeback to summary
public void remove()

Overrides default java.util.Iterator.remove.

Doc from java.util.Iterator.remove.

Removes from the underlying collection the last element returned by this iterator (optional operation). This method can be called only once per call to next.

The behavior of an iterator is unspecified if the underlying collection is modified while the iteration is in progress in any way other than by calling this method, unless an overriding class has specified a concurrent modification policy.

The behavior of an iterator is unspecified if this method is called after a call to the forEachRemaining method.

Annotations
@Override