Top Description Inners Fields Constructors Methods
rx.internal.operators

public final Class OnSubscribeFromIterable<T>

extends Object
implements Observable.OnSubscribe<T>
Class Inheritance
All Implemented Interfaces
rx.Observable.OnSubscribe, rx.functions.Action1, rx.functions.Action, rx.functions.Function
Type Parameters
<T>
the value type of the items
Imports
java.util.Iterator, java.util.concurrent.atomic.AtomicLong, rx.*, .Observable.OnSubscribe, rx.exceptions.Exceptions

Converts an Iterable sequence into an Observable.

You can convert any object that supports the Iterable interface into an Observable that emits each item in the object, with the toObservable operation.

Nested and Inner Type Summary

Modifier and TypeClass and Description
pack-priv static class

Field Summary

Modifier and TypeField and Description
pack-priv final Iterable<? extends T>

Constructor Summary

AccessConstructor and Description
public
OnSubscribeFromIterable(Iterable<? extends T> iterable)

Method Summary

Modifier and TypeMethod and Description
public void
call(final Subscriber<? super T> o)

Implements rx.functions.Action1.call.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

isback to summary
pack-priv final Iterable<? extends T> is

Constructor Detail

OnSubscribeFromIterableback to summary
public OnSubscribeFromIterable(Iterable<? extends T> iterable)

Method Detail

callback to summary
public void call(final Subscriber<? super T> o)

Implements rx.functions.Action1.call.

Annotations
@Override
rx.internal.operators back to summary

pack-priv final Class OnSubscribeFromIterable.IterableProducer<T>

extends AtomicLong
implements Producer
Class Inheritance
All Implemented Interfaces
rx.Producer

Field Summary

Modifier and TypeField and Description
private final Iterator<? extends T>
private final Subscriber<? super T>
o

private static final long

Constructor Summary

AccessConstructor and Description
pack-priv
IterableProducer(Subscriber<? super T> o, Iterator<? extends T> it)

Method Summary

Modifier and TypeMethod and Description
pack-priv void
public void
request(long
the maximum number of items you want this Producer to produce, or Long.MAX_VALUE if you want the Producer to produce items at its own pace
n
)

Implements rx.Producer.request.

Request a certain maximum number of items from this Producer.
pack-priv void
slowPath(long n)

Inherited from java.util.concurrent.atomic.AtomicLong:
accumulateAndGetaddAndGetcompareAndExchangecompareAndExchangeAcquirecompareAndExchangeReleasecompareAndSetdecrementAndGetdoubleValuefloatValuegetgetAcquiregetAndAccumulategetAndAddgetAndDecrementgetAndIncrementgetAndSetgetAndUpdategetOpaquegetPlainincrementAndGetintValuelazySetlongValuesetsetOpaquesetPlainsetReleasetoStringupdateAndGetweakCompareAndSetweakCompareAndSetAcquireweakCompareAndSetPlainweakCompareAndSetReleaseweakCompareAndSetVolatile

Field Detail

itback to summary
private final Iterator<? extends T> it
oback to summary
private final Subscriber<? super T> o
serialVersionUIDback to summary
private static final long serialVersionUID

Hides java.util.concurrent.atomic.AtomicLong.serialVersionUID.

Constructor Detail

IterableProducerback to summary
pack-priv IterableProducer(Subscriber<? super T> o, Iterator<? extends T> it)

Method Detail

fastPathback to summary
pack-priv void fastPath()
requestback to summary
public void request(long n)

Implements rx.Producer.request.

Doc from rx.Producer.request.

Request a certain maximum number of items from this Producer. This is a way of requesting backpressure. To disable backpressure, pass Long.MAX_VALUE to this method.

Requests are additive but if a sequence of requests totals more than Long.MAX_VALUE then Long.MAX_VALUE requests will be actioned and the extras may be ignored. Arriving at Long.MAX_VALUE by addition of requests cannot be assumed to disable backpressure. For example, the code below may result in Long.MAX_VALUE requests being actioned only.

request(100);
request(Long.MAX_VALUE-1);
Parameters
n:long

the maximum number of items you want this Producer to produce, or Long.MAX_VALUE if you want the Producer to produce items at its own pace

Annotations
@Override
slowPathback to summary
pack-priv void slowPath(long n)