Failure> прям до ViewModel и там уже отобразить их во View? Или всё-таки нужно ещё до этого "развернуть" обёртку в entity бизнес-логики? Особенно интересует это, чтобы понять где обрабатывать результат suspend функции.
У нас rx, с корутинами не работал, так что не знаю как там это конкретно реализовывается. Ты в репозитории получаем данные или ексепшен. Исключения проверяем, можем ли их обернуть в ожидаемые исключения, и пробрасываем через onError. В интеракторе логика получает данные, работает с ними и если получается ошибка логики, то отдается <Success, Fail>. В презентере обрабатываются хорошие данные и ошибки логики. А ожидаемые исключения пробрасывается в ErrorHandler и там обрабатываются одинаково.
Обсуждают сегодня