2017-02-11 4 views
3

Я начинаю использовать Lagom в Java и вам нужно написать пользовательский (де) сериализатор. Я прочитал документы и понял роли NegotiatedSerializer, MessageSerializer, SerializerFactory и т. Д. Я не понимаю, в каком пакете канонически определить класс. Я просмотрел образец Chirper и вижу, что часто встречаются конкретные определения моделей наряду с * сервисными интерфейсами в различных * API-модулях, но примеров пользовательских сериализаторов нет. Спасибо за помощь!Где я могу определить пользовательские (де) сериализаторы в Lagom?

ответ

2

Сериализаторы сообщений (органы запроса, органы реагирования и сообщения, опубликованные в теме) должны быть частью модуля api службы. Сериализаторы должны использоваться как клиентами службы, так и самой реализацией сервиса. Это делает их частью сервисного интерфейса или API.

Сериализаторы для сохранения (команды и ответы, события продолжительности, состояние объекта) должны быть определены в модуле impl каждого сервиса. Они являются деталями внутренней реализации и не должны подвергаться воздействию клиентов.

Помимо этих широких рекомендаций, способ организации вашей структуры упаковки действительно зависит от вас. В некоторых проектах используется один пакет для API и другой для реализации. Другие могут разделить каждый на подпакеты, хотя, поскольку службы обычно остаются довольно маленькими и сфокусированными, это может быть излишним. Вы должны организовать пакеты таким образом, чтобы иметь смысл для вашего проекта и организации.

+0

Большое спасибо, это имеет смысл! –

Смежные вопросы