Y at-il un moyen d'avoir un Observable juste jeter une exception qui se produit dans une fonction comme flatMap()
?Java Observable pour lancer une erreur si elle se produit
En Java, une fonction normale, vous pouvez spécifier qu'il peut lancer une exception:
public void dangerousFunction() throws IOException {}
Au sein d'une fonction Observable
comme flatMap()
, je ne peux pas sembler trouver une syntaxe similaire. Je peux utiliser une try/catch
comme ceci:
myObservable.flatMap(() -> {
try {
return dangerousFunction();
} catch (IOException e) {
return Observable.error(e);
}
});
Y at-il une méthode plus propre pour écrire cela? Si j'ai beaucoup de cartes et/ou Observables
, cela finit par être beaucoup de try/catch
blocs encombrant mon code.
Cet article peut vous aider: http://blog.danlew.net/2015/12/08/error-handling-in-rxjava/ – dementis