В данный момент я пишу "framework-wrapper" поверх другого фреймворка для моих типичных проектов.Я хочу полностью отделить его от базовой структуры.Фактически «обертка» - это набор Contracts
(портов) и адаптеров с некоторыми улучшениями / дополнениями.
Также я хочу отделить бизнес-логику проектов от «обертки».Поэтому мои прикладные сервисы могут зависеть только от контрактов оболочки.
Теперь в контрактах у меня есть каталог для исключений.Он состоит из одного основного WrapperExceptionInterface
и нескольких Exception
классов, которые реализуют интерфейс.Это позволяет мне использовать их (исключения) в других контрактах и в службах приложений.
Это нормально, если контракты будут содержать исключения?Или я должен ставить только интерфейсы, реализовывать их внутри Wrapper
отдельно?Так что в этом случае я «выброшу» не исключения, а их интерфейсы и поймаю их только.