Package io.reactivex.rxjava3.observers
Class SafeObserver<T>
java.lang.Object
io.reactivex.rxjava3.observers.SafeObserver<T>
- Type Parameters:
T
- the value type
- All Implemented Interfaces:
Observer<T>
,Disposable
Wraps another
Observer
and ensures all onXXX
methods conform the protocol
(except the requirement for serialized access).-
Field Summary
FieldsModifier and TypeFieldDescription(package private) boolean
Indicates a terminal state.The actual Subscriber.(package private) Disposable
The subscription. -
Constructor Summary
ConstructorsConstructorDescriptionSafeObserver
(@NonNull Observer<? super T> downstream) Constructs aSafeObserver
by wrapping the given actualObserver
. -
Method Summary
Modifier and TypeMethodDescriptionvoid
dispose()
Dispose the resource, the operation should be idempotent.boolean
Returns true if this resource has been disposed.void
Notifies theObserver
that theObservable
has finished sending push-based notifications.(package private) void
void
Notifies theObserver
that theObservable
has experienced an error condition.void
Provides theObserver
with a new item to observe.(package private) void
void
Provides theObserver
with the means of cancelling (disposing) the connection (channel) with theObservable
in both synchronous (from withinObserver.onNext(Object)
) and asynchronous manner.
-
Field Details
-
downstream
The actual Subscriber. -
upstream
Disposable upstreamThe subscription. -
done
boolean doneIndicates a terminal state.
-
-
Constructor Details
-
SafeObserver
Constructs aSafeObserver
by wrapping the given actualObserver
.- Parameters:
downstream
- the actualObserver
to wrap, notnull
(not validated)
-
-
Method Details
-
onSubscribe
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
-
dispose
public void dispose()Description copied from interface:Disposable
Dispose the resource, the operation should be idempotent.- Specified by:
dispose
in interfaceDisposable
-
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
-
onNext
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)
. -
onNextNoSubscription
void onNextNoSubscription() -
onError
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>
-
onCompleteNoSubscription
void onCompleteNoSubscription()
-