2017-12-24 18 views
-1

現在複数のエンドポイント(異なる)をポーリングしようとしています 問題は私が集計した状態を返さなかったエンドポイントやり方は流れが基本的にあるので:rxjavaを使用して複数のAPIエンドポイントを1つのストリームでポーリングする

リクエストを構築する - > 1つのストリームにマージ - >投票を応答するために - >チェックは状況が一致している:

  1. 待って流れをやり直していない場合
  2. ストリームからオブザーバーを取り出す場合

これは私が書かれていると私は

おかげでたくさんの何か

Observable.merge(buildRequests()) 
.repeatWhen(obs -> obs.delay(5000, TimeUnit.MILLISECONDS)) 
.takeUntil(response -> CheckShouldRepeat(response)).subscribe(whatever()); 
を欠けているようにそれが感じるものです!

答えて

0
Observable.fromCallable(() -> buildRequests()) 
.repeatWhen(o -> CheckShouldRepeat(v -> Observable.timer(5000, TimeUnit.MILLISECONDS))); 

これは役立ちます。

関連する問題