Class ObservableCreate.SerializedEmitter<T>
java.lang.Object
java.lang.Number
java.util.concurrent.atomic.AtomicInteger
io.reactivex.rxjava3.internal.operators.observable.ObservableCreate.SerializedEmitter<T>
- Type Parameters:
T- the value type
- All Implemented Interfaces:
Emitter<T>, ObservableEmitter<T>, Serializable
- Enclosing class:
ObservableCreate<T>
static final class ObservableCreate.SerializedEmitter<T>
extends AtomicInteger
implements ObservableEmitter<T>
Serializes calls to onNext, onError and onComplete.
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) boolean(package private) final ObservableEmitter<T> (package private) final AtomicThrowable(package private) final SpscLinkedArrayQueue<T> private static final long -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) voiddrain()(package private) voidbooleanReturns true if the downstream disposed the sequence or the emitter was terminated viaEmitter.onError(Throwable),Emitter.onComplete()or a successfulObservableEmitter.tryOnError(Throwable).voidSignal a completion.voidSignal aThrowableexception.voidSignal a normal value.Ensures that calls toonNext,onErrorandonCompleteare properly serialized.voidSets aCancellableon this emitter; any previousDisposableorCancellablewill be disposed/cancelled.voidSets aDisposableon this emitter; any previousDisposableorCancellablewill be disposed/cancelled.toString()booleanAttempts to emit the specifiedThrowableerror if the downstream hasn't cancelled the sequence or is otherwise terminated, returning false if the emission is not allowed to happen due to lifecycle restrictions.Methods inherited from class AtomicInteger
accumulateAndGet, addAndGet, compareAndExchange, compareAndExchangeAcquire, compareAndExchangeRelease, compareAndSet, decrementAndGet, doubleValue, floatValue, get, getAcquire, getAndAccumulate, getAndAdd, getAndDecrement, getAndIncrement, getAndSet, getAndUpdate, getOpaque, getPlain, incrementAndGet, intValue, lazySet, longValue, set, setOpaque, setPlain, setRelease, updateAndGet, weakCompareAndSet, weakCompareAndSetAcquire, weakCompareAndSetPlain, weakCompareAndSetRelease, weakCompareAndSetVolatileMethods inherited from class Number
byteValue, shortValue
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
emitter
-
errors
-
queue
-
done
volatile boolean done
-
-
Constructor Details
-
SerializedEmitter
SerializedEmitter(ObservableEmitter<T> emitter)
-
-
Method Details
-
onNext
-
onError
-
tryOnError
Description copied from interface:ObservableEmitterAttempts to emit the specifiedThrowableerror if the downstream hasn't cancelled the sequence or is otherwise terminated, returning false if the emission is not allowed to happen due to lifecycle restrictions.Unlike
Emitter.onError(Throwable), theRxjavaPlugins.onErroris not called if the error could not be delivered.History: 2.1.1 - experimental
- Specified by:
tryOnErrorin interfaceObservableEmitter<T>- Parameters:
t- theThrowableerror to signal if possible- Returns:
- true if successful, false if the downstream is not able to accept further events
-
onComplete
public void onComplete()Description copied from interface:EmitterSignal a completion.- Specified by:
onCompletein interfaceEmitter<T>
-
drain
void drain() -
drainLoop
void drainLoop() -
setDisposable
Description copied from interface:ObservableEmitterSets aDisposableon this emitter; any previousDisposableorCancellablewill be disposed/cancelled.This method is thread-safe.
- Specified by:
setDisposablein interfaceObservableEmitter<T>- Parameters:
d- theDisposable,nullis allowed
-
setCancellable
Description copied from interface:ObservableEmitterSets aCancellableon this emitter; any previousDisposableorCancellablewill be disposed/cancelled.This method is thread-safe.
- Specified by:
setCancellablein interfaceObservableEmitter<T>- Parameters:
c- theCancellableresource,nullis allowed
-
isDisposed
public boolean isDisposed()Description copied from interface:ObservableEmitterReturns true if the downstream disposed the sequence or the emitter was terminated viaEmitter.onError(Throwable),Emitter.onComplete()or a successfulObservableEmitter.tryOnError(Throwable).This method is thread-safe.
- Specified by:
isDisposedin interfaceObservableEmitter<T>- Returns:
- true if the downstream disposed the sequence or the emitter was terminated
-
serialize
Description copied from interface:ObservableEmitterEnsures that calls toonNext,onErrorandonCompleteare properly serialized.- Specified by:
serializein interfaceObservableEmitter<T>- Returns:
- the serialized
ObservableEmitter
-
toString
- Overrides:
toStringin classAtomicInteger
-