Учитывая, что имеется HOT, наблюдаемый с некоторыми событиями, которые передаются из него, я хотел бы сначала обработать первый элемент, который испускается из него, но пока этот элемент обрабатывается, я хотел бы игнорировать (или кэшировать любые события восходящего потока).) sudo code:
upstream.scan(DEFAULT, (last, current) ->
if( last instanceof InProgress) {
ignore items for now
} else {
process items
}
По сути, я пытаюсь принять решение, основываясь на первом излучении предыдущего наблюдаемого.Сканирование не возвращает наблюдаемого, поэтому я ищу что-то еще для управления состоянием.Мне бы хотелось решение, которое не включает использование Subjects (вызов onNext, а затем getValue () для проверки данных и т. Д.), Так как они «сломали бы» реактивный поток и помнят, что это бесконечный горячий поток.Заранее благодарю за помощь.