Gözlemlenebilir bir dizi oluşturuyorum ve temel olarak bir koşul karşılanmazsa zinciri kırmanın güzel bir yolunu arıyorum. İdeal olarak bu senaryodaki bir hatadan geçebiliriz. Bu, bir flatmap operatöründe if/else ifadesini kaldırmaktır. Ben filtresi gibi şimdiRxJava Mola Zinciri Koşullu olarak
flatMap(new Func1<User, Observable<Response>>() {
@Override
public Observable<Response> call(Result result) {
if(isValid(result))) {
return api.getObservableResponse(); //some retrofit observable
} else {
observer.onError();
return null; //??? I guess this would force an error
}
}
})
gördüğüm operatörleri() ve diğer tüm koşullu olanları var ama bunlardan herhangi benim gereksinimlerini karşılamak olmadığından emin değilim gibi bu bir şeydir. Bunu yapmanın daha iyi bir yolu var mı? Ya da iyi baktığım şey mi? Teşekkürler!
'dönüş Observable.error (exception)'? – Than
@Than Sanırım bu bir hatayı zorlar. Varsa, eğer/tamamen tamamen kaldırmak için zincirleme yapabileceğim bir çeşit yöntemi arıyorum. –
Neden flatMap'i uygulamadan önce durumunuzu filtrelemeyin? – JohnWowUs