Organization overview¶
The organization has quite a few packages but each of them are very small. The packages have a single responsibility. This page will describe all packages and what they should be used for.
MessageBus¶
Generic classes and interfaces for messages and message buses. The most common middleware does also live here. Both commands and events are messages.
Asynchronous¶
To enable asynchronous messages with SimpleBus. This package contains strategies for publishing messages, producers and consumers. To use this package you will need a serializer and a library that can publish messages on some kind of queue.
Serialization¶
Generic classes and interfaces for serializing messages. This will put messages in an envelope and serialize the body of the envelope.
JMSSerializerBridge¶
Bridge for using JMSSerializer as message serializer with SimpleBus/Serialization.
DoctrineORMBridge¶
Bridge for using commands and events with Doctrine ORM. This will allow you do execute commands in a Doctrine transaction. It will also handle your entities domain events.
DoctrineDBALBridge¶
Bridge for using SimpleBus with Doctrine DBAL. This will allow you do execute commands in a Doctrine transaction.
SymfonyBridge¶
Bridge for using command buses and event buses in Symfony projects. This package contains the CommandBusBundle, EventBusBundle and DoctrineOrmBridgeBundle.