Class AbstractDisposableAutoRelease
- java.lang.Object
-
- java.util.concurrent.atomic.AtomicReference<Disposable>
-
- io.reactivex.rxjava3.internal.observers.AbstractDisposableAutoRelease
-
- All Implemented Interfaces:
Disposable
,LambdaConsumerIntrospection
,java.io.Serializable
- Direct Known Subclasses:
DisposableAutoReleaseMultiObserver
,DisposableAutoReleaseObserver
abstract class AbstractDisposableAutoRelease extends java.util.concurrent.atomic.AtomicReference<Disposable> implements Disposable, LambdaConsumerIntrospection
Wraps lambda callbacks and when the upstream terminates or the observer gets disposed, removes itself from aCompositeDisposable
.History: 0.18.0 @ RxJavaExtensions
- Since:
- 3.1.0
-
-
Field Summary
Fields Modifier and Type Field Description (package private) java.util.concurrent.atomic.AtomicReference<DisposableContainer>
composite
(package private) Action
onComplete
(package private) Consumer<? super java.lang.Throwable>
onError
private static long
serialVersionUID
-
Constructor Summary
Constructors Constructor Description AbstractDisposableAutoRelease(DisposableContainer composite, Consumer<? super java.lang.Throwable> onError, Action onComplete)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
dispose()
Dispose the resource, the operation should be idempotent.boolean
hasCustomOnError()
Returnstrue
orfalse
if a customonError
consumer has been provided.boolean
isDisposed()
Returns true if this resource has been disposed.void
onComplete()
void
onError(java.lang.Throwable t)
void
onSubscribe(Disposable d)
(package private) void
removeSelf()
-
Methods inherited from class java.util.concurrent.atomic.AtomicReference
accumulateAndGet, compareAndExchange, compareAndExchangeAcquire, compareAndExchangeRelease, compareAndSet, get, getAcquire, getAndAccumulate, getAndSet, getAndUpdate, getOpaque, getPlain, lazySet, set, setOpaque, setPlain, setRelease, toString, updateAndGet, weakCompareAndSet, weakCompareAndSetAcquire, weakCompareAndSetPlain, weakCompareAndSetRelease, weakCompareAndSetVolatile
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
composite
final java.util.concurrent.atomic.AtomicReference<DisposableContainer> composite
-
onError
final Consumer<? super java.lang.Throwable> onError
-
onComplete
final Action onComplete
-
-
Constructor Detail
-
AbstractDisposableAutoRelease
AbstractDisposableAutoRelease(DisposableContainer composite, Consumer<? super java.lang.Throwable> onError, Action onComplete)
-
-
Method Detail
-
onError
public final void onError(java.lang.Throwable t)
-
onComplete
public final void onComplete()
-
dispose
public final void dispose()
Description copied from interface:Disposable
Dispose the resource, the operation should be idempotent.- Specified by:
dispose
in interfaceDisposable
-
removeSelf
final void removeSelf()
-
isDisposed
public final 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
-
onSubscribe
public final void onSubscribe(Disposable d)
-
hasCustomOnError
public final boolean hasCustomOnError()
Description copied from interface:LambdaConsumerIntrospection
Returnstrue
orfalse
if a customonError
consumer has been provided.- Specified by:
hasCustomOnError
in interfaceLambdaConsumerIntrospection
- Returns:
true
if a customonError
consumer implementation was supplied. Returnsfalse
if the implementation is missing an error consumer and thus using a throwing default implementation.
-
-