Proof конфигурации в контейнере Symfony DI

Я настроил все proophservice buses с event source а также event store,

Но это то, что меня смущает. Я должен позвонить:$eventPublisher = $this->container->get('event_publisher'); в моем CommandBusFactory, чтобы склеить источник событий и шину событий для отправки события домена (от Aggregate Root) через шину к проектору. Без этого мои прогнозы не называются.

Мои услуги: ссылка

Может ли кто-нибудь с опытом работы с Symfony DI (Extension и CompilerPass) помочь мне с этим?

1 ответ

Решение

Издатель событий не является частью вашей цепочки зависимостей. Вот почему он не инициализируется Symfony DI. Издатель мероприятия является event store plugin и вы правильно настроили symfony DI для вызова метода attachToEventStore но это не делается автоматически, а только когда вы запрашиваете сервис у DI.

Чтобы решить эту проблему, вам нужна фабрика для хранилища событий, которая принимает список плагинов и вызывает attachToEventStore метод на каждом плагине. prooph/event-store-symfony-bundle содержит такой завод

Другие вопросы по тегам