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) ActiononComplete(package private) Consumer<? super java.lang.Throwable>onErrorprivate static longserialVersionUID
-
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 voiddispose()Dispose the resource, the operation should be idempotent.booleanhasCustomOnError()Returnstrueorfalseif a customonErrorconsumer has been provided.booleanisDisposed()Returns true if this resource has been disposed.voidonComplete()voidonError(java.lang.Throwable t)voidonSubscribe(Disposable d)(package private) voidremoveSelf()-
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:DisposableDispose the resource, the operation should be idempotent.- Specified by:
disposein interfaceDisposable
-
removeSelf
final void removeSelf()
-
isDisposed
public final boolean isDisposed()
Description copied from interface:DisposableReturns true if this resource has been disposed.- Specified by:
isDisposedin 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:LambdaConsumerIntrospectionReturnstrueorfalseif a customonErrorconsumer has been provided.- Specified by:
hasCustomOnErrorin interfaceLambdaConsumerIntrospection- Returns:
trueif a customonErrorconsumer implementation was supplied. Returnsfalseif the implementation is missing an error consumer and thus using a throwing default implementation.
-
-