0
私はコレクション(元)を返すREST呼び出しを持っていますが、このコレクションはフィルタリングされていますが、サブスクライブではonSuccess
です。RxJava2で元の観測可能な情報を保存する方法
この2番目の要素を「渡す」方法はわかりませんが、この演算子を使用してこの結果を取得する必要がありますか?
私は一つの方法は、ConnectableObservable
である
Observable.fromCallable(new Callable<List<Integer>>() {
@Override public List<Integer> call() throws Exception {
// dynamic list obtained from REST call
// for simplicity here I return a list
return Arrays.asList(1, 2, 3, 4);
}
})
.flatMap(new Function<List<Integer>, ObservableSource<Integer>>() {
@Override public ObservableSource<Integer> apply(List<Integer> integers) throws Exception {
return Observable.fromIterable(integers);
}
})
.filter(new Predicate<Integer>() {
@Override public boolean test(Integer integer) throws Exception {
return integer > 2;
}
})
.toList()
.subscribe(new SingleObserver<List<Integer>>() {
@Override public void onSubscribe(Disposable d) {}
@Override public void onSuccess(List<Integer> value) {
///////////////////
// here I want both original and filtered list
///////////////////
}
@Override public void onError(Throwable e) {}
});
ような何かそれは多分、私が呼び出し可能な内部で全力を尽くします、単に「パス」第二のパラメータに少し複雑に聞こえるが、重要なヒントに感謝 – dafi