Proof и объект в полезной нагрузке события

В чем причина только скалярных значений и значений массива в полезной нагрузке? Может ли он быть более гибким с объектом, который имеет метод toString или toArray?
Я бы использовал отправленное событие, которое содержит полный ValueObject или подобную вещь, тогда я могу построить ReadModel без ненужного обращения к хранилищу.

0

Решение

да, это может быть более гибким, но вы должны реализовать собственное базовое сообщение для интерфейса сообщений: https://github.com/prooph/common/blob/master/docs/messaging.md#custom-messages

Причина, по которой реализация сообщений Prooph по умолчанию разрешает только скаляры и массивы, также может быть найдена в документации: https://github.com/prooph/common/blob/master/docs/messaging.md#payload

Поскольку полезная нагрузка prooph / common 3.x больше не является частью объекта сообщения, вместо этого требуются методы для получения / установки полезной нагрузки. Полезная нагрузка — это данные, передаваемые сообщением. Он должен состоять только из скалярных типов и вложенных массивов, чтобы его можно было легко json_encoded и json_decoded. Реализаторам не нужно управлять свойством полезной нагрузки, но общедоступная функция payload () должна возвращать данные сообщения. Вместо этого метод защищенной функции setPayload (array $ payload) должен восстанавливать данные сообщения из данного массива полезной нагрузки.

2

Другие решения

Вы также можете следить за обсуждением этой темы на github: https://github.com/prooph/common/issues/54

1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector