Class ObservableMergeWithSingle.MergeWithObserver<T>
- java.lang.Object
-
- java.lang.Number
-
- java.util.concurrent.atomic.AtomicInteger
-
- io.reactivex.rxjava3.internal.operators.observable.ObservableMergeWithSingle.MergeWithObserver<T>
-
- All Implemented Interfaces:
Observer<T>
,Disposable
,java.io.Serializable
- Enclosing class:
- ObservableMergeWithSingle<T>
static final class ObservableMergeWithSingle.MergeWithObserver<T> extends java.util.concurrent.atomic.AtomicInteger implements Observer<T>, Disposable
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
ObservableMergeWithSingle.MergeWithObserver.OtherObserver<T>
-
Field Summary
Fields Modifier and Type Field Description (package private) boolean
disposed
(package private) Observer<? super T>
downstream
(package private) AtomicThrowable
errors
(package private) java.util.concurrent.atomic.AtomicReference<Disposable>
mainDisposable
(package private) boolean
mainDone
(package private) static int
OTHER_STATE_CONSUMED_OR_EMPTY
(package private) static int
OTHER_STATE_HAS_VALUE
(package private) ObservableMergeWithSingle.MergeWithObserver.OtherObserver<T>
otherObserver
(package private) int
otherState
(package private) SimplePlainQueue<T>
queue
private static long
serialVersionUID
(package private) T
singleItem
-
Constructor Summary
Constructors Constructor Description MergeWithObserver(Observer<? super T> downstream)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
dispose()
Dispose the resource, the operation should be idempotent.(package private) void
drain()
(package private) void
drainLoop()
(package private) SimplePlainQueue<T>
getOrCreateQueue()
boolean
isDisposed()
Returns true if this resource has been disposed.void
onComplete()
Notifies theObserver
that theObservable
has finished sending push-based notifications.void
onError(java.lang.Throwable ex)
Notifies theObserver
that theObservable
has experienced an error condition.void
onNext(T t)
Provides theObserver
with a new item to observe.void
onSubscribe(Disposable d)
Provides theObserver
with the means of cancelling (disposing) the connection (channel) with theObservable
in both synchronous (from withinObserver.onNext(Object)
) and asynchronous manner.(package private) void
otherError(java.lang.Throwable ex)
(package private) void
otherSuccess(T value)
-
Methods inherited from class java.util.concurrent.atomic.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, toString, updateAndGet, weakCompareAndSet, weakCompareAndSetAcquire, weakCompareAndSetPlain, weakCompareAndSetRelease, weakCompareAndSetVolatile
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
mainDisposable
final java.util.concurrent.atomic.AtomicReference<Disposable> mainDisposable
-
otherObserver
final ObservableMergeWithSingle.MergeWithObserver.OtherObserver<T> otherObserver
-
errors
final AtomicThrowable errors
-
queue
volatile SimplePlainQueue<T> queue
-
singleItem
T singleItem
-
disposed
volatile boolean disposed
-
mainDone
volatile boolean mainDone
-
otherState
volatile int otherState
-
OTHER_STATE_HAS_VALUE
static final int OTHER_STATE_HAS_VALUE
- See Also:
- Constant Field Values
-
OTHER_STATE_CONSUMED_OR_EMPTY
static final int OTHER_STATE_CONSUMED_OR_EMPTY
- See Also:
- Constant Field Values
-
-
Method Detail
-
onSubscribe
public void onSubscribe(Disposable d)
Description copied from interface:Observer
Provides theObserver
with the means of cancelling (disposing) the connection (channel) with theObservable
in both synchronous (from withinObserver.onNext(Object)
) and asynchronous manner.- Specified by:
onSubscribe
in interfaceObserver<T>
- Parameters:
d
- theDisposable
instance whoseDisposable.dispose()
can be called anytime to cancel the connection
-
onNext
public void onNext(T t)
Description copied from interface:Observer
Provides theObserver
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 eitherObserver.onComplete()
orObserver.onError(java.lang.Throwable)
.
-
onError
public void onError(java.lang.Throwable ex)
Description copied from interface:Observer
Notifies theObserver
that theObservable
has experienced an error condition.If the
Observable
calls this method, it will not thereafter callObserver.onNext(T)
orObserver.onComplete()
.
-
onComplete
public void onComplete()
Description copied from interface:Observer
Notifies theObserver
that theObservable
has finished sending push-based notifications.The
Observable
will not call this method if it callsObserver.onError(java.lang.Throwable)
.- Specified by:
onComplete
in interfaceObserver<T>
-
isDisposed
public boolean isDisposed()
Description copied from interface:Disposable
Returns true if this resource has been disposed.- Specified by:
isDisposed
in interfaceDisposable
- Returns:
- true if this resource has been disposed
-
dispose
public void dispose()
Description copied from interface:Disposable
Dispose the resource, the operation should be idempotent.- Specified by:
dispose
in interfaceDisposable
-
otherSuccess
void otherSuccess(T value)
-
otherError
void otherError(java.lang.Throwable ex)
-
getOrCreateQueue
SimplePlainQueue<T> getOrCreateQueue()
-
drain
void drain()
-
drainLoop
void drainLoop()
-
-