RxJava: Не обрабатывать события восходящего потока до тех пор, пока не изменится состояние - PullRequest
0 голосов
/ 03 октября 2018

Учитывая, что имеется HOT, наблюдаемый с некоторыми событиями, которые передаются из него, я хотел бы сначала обработать первый элемент, который испускается из него, но пока этот элемент обрабатывается, я хотел бы игнорировать (или кэшировать любые события восходящего потока).) sudo code:

upstream.scan(DEFAULT, (last, current) ->
   if( last instanceof InProgress) {
      ignore items for now
   } else {
     process items
   }

По сути, я пытаюсь принять решение, основываясь на первом излучении предыдущего наблюдаемого.Сканирование не возвращает наблюдаемого, поэтому я ищу что-то еще для управления состоянием.Мне бы хотелось решение, которое не включает использование Subjects (вызов onNext, а затем getValue () для проверки данных и т. Д.), Так как они «сломали бы» реактивный поток и помнят, что это бесконечный горячий поток.Заранее благодарю за помощь.

...