RxJava



rx.operators
Class OperatorOnErrorResumeNextViaFunction<T>

java.lang.Object
  extended by rx.operators.OperatorOnErrorResumeNextViaFunction<T>
All Implemented Interfaces:
Func1<Subscriber<? super T>,Subscriber<? super T>>, Function, Observable.Operator<T,T>

public final class OperatorOnErrorResumeNextViaFunction<T>
extends java.lang.Object
implements Observable.Operator<T,T>

Instruct an Observable to pass control to another Observable (the return value of a function) rather than invoking onError if it encounters an error.

By default, when an Observable encounters an error that prevents it from emitting the expected item to its Observer, the Observable invokes its Observer's onError method, and then quits without invoking any more of its Observer's methods. The onErrorResumeNext operation changes this behavior. If you pass a function that returns an Observable (resumeFunction) to onErrorResumeNext, if the source Observable encounters an error, instead of invoking its Observer's onError method, it will instead relinquish control to this new Observable, which will invoke the Observer's onNext method if it is able to do so. In such a case, because no Observable necessarily invokes onError, the Observer may never know that an error happened.

You can use this to prevent errors from propagating or to supply fallback data should errors be encountered.


Constructor Summary
OperatorOnErrorResumeNextViaFunction(Func1<java.lang.Throwable,? extends Observable<? extends T>> f)
           
 
Method Summary
 Subscriber<? super T> call(Subscriber<? super T> child)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OperatorOnErrorResumeNextViaFunction

public OperatorOnErrorResumeNextViaFunction(Func1<java.lang.Throwable,? extends Observable<? extends T>> f)
Method Detail

call

public Subscriber<? super T> call(Subscriber<? super T> child)
Specified by:
call in interface Func1<Subscriber<? super T>,Subscriber<? super T>>