Один из подходов, который вы могли бы использовать, - это создать «Класс ошибок», подобный сервису в вашем приложении, и публиковать различные классы и методы, которые выполняют различные действия, которые могут публиковать в нем ошибки.
Теперь ваш интерфейс может либо подписаться на «Класс ошибок», чтобы немедленно узнавать об ошибках, либо вы можете вернуть код ошибки, подробности которого можно найти с помощью «Класса ошибок»