java.lang.Object | |
↳ | io.reactivex.observers.DefaultObserver<T> |
Abstract base implementation of an Observer
with support for cancelling a
subscription via cancel()
(synchronously) and calls onStart()
when the subscription happens.
All pre-implemented final methods are thread-safe.
Use the protected cancel()
to dispose the sequence from within an
onNext
implementation.
Like all other consumers, DefaultObserver
can be subscribed only once.
Any subsequent attempt to subscribe it to a new source will yield an
IllegalStateException
with message "It is not allowed to subscribe with a(n) <class name> multiple times."
.
Implementation of onStart()
, onNext(Object)
, onError(Throwable)
and onComplete()
are not allowed to throw any unchecked exceptions.
If for some reason this can't be avoided, use safeSubscribe(io.reactivex.Observer)
instead of the standard subscribe()
method.
Example
Observable.range(1, 5)
.subscribe(new DefaultObserver<Integer>() {
@Override public void onStart() {
System.out.println("Start!");
}
@Override public void onNext(Integer t) {
if (t == 3) {
cancel();
}
System.out.println(t);
}
@Override public void onError(Throwable t) {
t.printStackTrace();
}
@Override public void onComplete() {
System.out.println("Done!");
}
});
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
DefaultObserver() |
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
final void |
onSubscribe(Disposable s)
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. |
Protected Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
final void |
cancel()
Cancels the upstream's disposable.
| ||||||||||
void |
onStart()
Called once the subscription has been set on this observer; override this
to perform initialization.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() | |||||||||||
![]() |
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.
s | the Disposable instance whose dispose() can
be called anytime to cancel the connection |
---|
Cancels the upstream's disposable.
Called once the subscription has been set on this observer; override this to perform initialization.