Interface | Implementation |
---|---|
CommandBusInterface |
SimpleCommandBus |
UuidGeneratorInterface |
Version4Generator |
EventDispatcherInterface |
Broadway\EventDispatcher\EventDispatcher |
RepositoryInterface |
Broadway\EventSourcing\EventSourcingRepository |
Broadway\EventStore\EventStoreInterface |
Broadway\EventStore\DBALEventStore |
Broadway\EventHandling\EventBusInterface |
Broadway\EventHandling\SimpleEventBus |
Broadway\EventSourcing\AggregateFactory\AggregateFactoryInterface |
Broadway\EventSourcing\AggregateFactory\PublicConstructorAggregateFactory |
Broadway\Serializer\SerializerInterface |
Broadway\Serializer\SimpleInterfaceSerializer |
Broadway\ReadModel\RepositoryInterface |
Broadway\ReadModel\ElasticSearch\ElasticSearchRepository |
- How to configure the data store (mysql/postgress/mongo...) ?
- A: Looks like this is the class implementing
Broadway\EventStore\EventStoreInterface
. This can ben aDBALEventStore
(with the problems explained below) or anInMemoryEventStore
which doesn't have any dependencies, aka for testing purposes.
- A: Looks like this is the class implementing
- How to setup Elasticsearch as read model ?
About the Broadway\EventStore\EventStoreInterface
, there is a DBALEventStore
, which uses Doctrine DBAL, but has more dependencies:
Doctrine\DBAL\Connection
$connection
Broadway\Serializer\SerializerInterface
$payloadSerializer
Broadway\Serializer\SerializerInterface
$metadataSerializer
$tableName
Using Laravel-Doctrine package, how can we get these requirements?
The DBAL connection has been instantiated but don't know what the 2 SerializerInterface
dependencies are.