Top Description Fields Constructors Methods
io.reactivex.observers

public final Class SafeObserver<T>

extends Object
implements Observer<T>, Disposable
Class Inheritance
All Implemented Interfaces
io.reactivex.disposables.Disposable, io.reactivex.Observer
Type Parameters
<T>
the value type
Imports
io.reactivex.Observer, io.reactivex.annotations.*, io.reactivex.disposables.Disposable, io.reactivex.exceptions.*, io.reactivex.internal.disposables.*, io.reactivex.plugins.RxJavaPlugins

Wraps another Subscriber and ensures all onXXX methods conform the protocol (except the requirement for serialized access).

Field Summary

Modifier and TypeField and Description
pack-priv boolean
done

Indicates a terminal state.

pack-priv final Observer<? super T>
downstream

The actual Subscriber.

pack-priv Disposable
upstream

The subscription.

Constructor Summary

AccessConstructor and Description
public
SafeObserver(Observer<? super T>
the actual Observer to wrap, not null (not validated)
downstream
)

Constructs a SafeObserver by wrapping the given actual Observer.

Method Summary

Modifier and TypeMethod and Description
public void
dispose()

Implements io.reactivex.disposables.Disposable.dispose.

Dispose the resource, the operation should be idempotent.
public boolean
isDisposed()

Implements io.reactivex.disposables.Disposable.isDisposed.

Returns true if this resource has been disposed.
public void
onComplete()

Implements io.reactivex.Observer.onComplete.

Notifies the Observer that the Observable has finished sending push-based notifications.
pack-priv void
public void
onError(Throwable
the exception encountered by the Observable
t
)

Implements io.reactivex.Observer.onError.

Notifies the Observer that the Observable has experienced an error condition.
public void
onNext(T
the item emitted by the Observable
t
)

Implements io.reactivex.Observer.onNext.

Provides the Observer with a new item to observe.
pack-priv void
public void
onSubscribe(Disposable
the Disposable instance whose Disposable#dispose() can be called anytime to cancel the connection
d
)

Implements io.reactivex.Observer.onSubscribe.

Provides the Observer with the means of cancelling (disposing) the connection (channel) with the Observable in both synchronous (from within onNext(Object)) and asynchronous manner.
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

doneback to summary
pack-priv boolean done

Indicates a terminal state.

downstreamback to summary
pack-priv final Observer<? super T> downstream

The actual Subscriber.

upstreamback to summary
pack-priv Disposable upstream

The subscription.

Constructor Detail

SafeObserverback to summary
public SafeObserver(Observer<? super T> downstream)

Constructs a SafeObserver by wrapping the given actual Observer.

Parameters
downstream:Observer<? super T>

the actual Observer to wrap, not null (not validated)

Method Detail

disposeback to summary
public void dispose()

Implements io.reactivex.disposables.Disposable.dispose.

Doc from io.reactivex.disposables.Disposable.dispose.

Dispose the resource, the operation should be idempotent.

Annotations
@Override
isDisposedback to summary
public boolean isDisposed()

Implements io.reactivex.disposables.Disposable.isDisposed.

Doc from io.reactivex.disposables.Disposable.isDisposed.

Returns true if this resource has been disposed.

Returns:boolean

true if this resource has been disposed

Annotations
@Override
onCompleteback to summary
public void onComplete()

Implements io.reactivex.Observer.onComplete.

Doc from io.reactivex.Observer.onComplete.

Notifies the Observer that the Observable has finished sending push-based notifications.

The Observable will not call this method if it calls onError.

Annotations
@Override
onCompleteNoSubscriptionback to summary
pack-priv void onCompleteNoSubscription()
onErrorback to summary
public void onError(Throwable t)

Implements io.reactivex.Observer.onError.

Doc from io.reactivex.Observer.onError.

Notifies the Observer that the Observable has experienced an error condition.

If the Observable calls this method, it will not thereafter call onNext or onComplete.

Parameters
t:Throwable

the exception encountered by the Observable

Annotations
@Override
onNextback to summary
public void onNext(T t)

Implements io.reactivex.Observer.onNext.

Doc from io.reactivex.Observer.onNext.

Provides the Observer 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 either onComplete or onError.

Parameters
t:T

the item emitted by the Observable

Annotations
@Override
onNextNoSubscriptionback to summary
pack-priv void onNextNoSubscription()
onSubscribeback to summary
public void onSubscribe(Disposable d)

Implements io.reactivex.Observer.onSubscribe.

Doc from io.reactivex.Observer.onSubscribe.

Provides the Observer with the means of cancelling (disposing) the connection (channel) with the Observable in both synchronous (from within onNext(Object)) and asynchronous manner.

Parameters
d:Disposable

the Disposable instance whose Disposable#dispose() can be called anytime to cancel the connection

Annotations
@Override