1. Есть класс/метод Dao.update(Item item) которое апдейтит строчку в БД.
В силу ряда причин оно может выкинуть эксэпшн, т.е. ожидаемо.
2. Есть сервис MyService.update(List<Item> items), который должен сделать следующее:
— в цикле попытаться проапдейтить все items: dao.update(item)
— если апдейт какого-то item выкинул эксэпшн запомнить, но продолжать цикл до конца
— после окончания цикла сообщить вызывающему методу о всех накопленных ошибках
3. Есть верхний вызывающий класс/метод ParentService.flow(), который вызывает myService.update(items), затем анализирует результат и принимает решение что делать дальше.
То есть бывает ситуация что из 10 items 4 вызвали эксэпшн в dao.update() а 6 прошли нормально.
Логика в ParentService.flow() должна проанализировать и решить что делать дальше.
Внимание, вопрос!
Как лучше и красивее передать множественные ошибки из MyService.update(items) в вызывающий ParentService.flow() ?