Информация об изменениях

Сообщение Re: как лучше передать множественные Exceptions наверх от 23.01.2018 8:41

Изменено 23.01.2018 8:48 Qulac

Re: как лучше передать множественные Exceptions наверх
Здравствуйте, Antei, Вы писали:

A>Привет, форум!

A>Нужен совет

A>1. Есть класс/метод Dao.update(Item item) которое апдейтит строчку в БД.

A>В силу ряда причин оно может выкинуть эксэпшн, т.е. ожидаемо.

A>2. Есть сервис MyService.update(List<Item> items), который должен сделать следующее:

A>- в цикле попытаться проапдейтить все items: dao.update(item)
A>- если апдейт какого-то item выкинул эксэпшн запомнить, но продолжать цикл до конца
A>- после окончания цикла сообщить вызывающему методу о всех накопленных ошибках

A>3. Есть верхний вызывающий класс/метод ParentService.flow(), который вызывает myService.update(items), затем анализирует результат и принимает решение что делать дальше.

A>То есть бывает ситуация что из 10 items 4 вызвали эксэпшн в dao.update() а 6 прошли нормально.
A>Логика в ParentService.flow() должна проанализировать и решить что делать дальше.

A>Внимание, вопрос!

A>Как лучше и красивее передать множественные ошибки из MyService.update(items) в вызывающий ParentService.flow() ?

A>Спасибо!


В exception передать error list.
Re: как лучше передать множественные Exceptions наверх
Здравствуйте, Antei, Вы писали:

A>Привет, форум!

A>Нужен совет

A>1. Есть класс/метод Dao.update(Item item) которое апдейтит строчку в БД.

A>В силу ряда причин оно может выкинуть эксэпшн, т.е. ожидаемо.

A>2. Есть сервис MyService.update(List<Item> items), который должен сделать следующее:

A>- в цикле попытаться проапдейтить все items: dao.update(item)
A>- если апдейт какого-то item выкинул эксэпшн запомнить, но продолжать цикл до конца
A>- после окончания цикла сообщить вызывающему методу о всех накопленных ошибках

A>3. Есть верхний вызывающий класс/метод ParentService.flow(), который вызывает myService.update(items), затем анализирует результат и принимает решение что делать дальше.

A>То есть бывает ситуация что из 10 items 4 вызвали эксэпшн в dao.update() а 6 прошли нормально.
A>Логика в ParentService.flow() должна проанализировать и решить что делать дальше.

A>Внимание, вопрос!

A>Как лучше и красивее передать множественные ошибки из MyService.update(items) в вызывающий ParentService.flow() ?

A>Спасибо!


В exception передать error list или просто один error list