phpgears / event-symfony-messenger
Event bus implementation with Symfony's Event Dispatcher
0.2.1
2019-10-05 13:26 UTC
Requires
- php: ^7.1
- phpgears/event: ~0.3.1
- symfony/messenger: ^4.3
Requires (Dev)
- brainmaestro/composer-git-hooks: ^2.1
- friendsofphp/php-cs-fixer: ^2.0
- infection/infection: ^0.9
- phpmd/phpmd: ^2.0
- phpstan/extension-installer: ^1.0
- phpstan/phpstan: ~0.11.12
- phpstan/phpstan-deprecation-rules: ~0.11.2
- phpstan/phpstan-strict-rules: ~0.11.1
- phpunit/phpunit: ^7.0|^8.0
- povils/phpmnd: ^2.0
- roave/security-advisories: dev-master
- sebastian/phpcpd: ^4.0
- squizlabs/php_codesniffer: ^3.0
- thecodingmachine/phpstan-strict-rules: ~0.11.2
This package is auto-updated.
Last update: 2024-10-13 04:21:09 UTC
README
Event bus with Symfony's Messenger
Event bus implementation with Symfony's Messenger
Installation
Composer
composer require phpgears/event-symfony-messenger
Usage
Require composer autoload file
require './vendor/autoload.php';
Events Bus
use Gears\Event\Symfony\Messenger\EventHandlerLocator; use Gears\Event\Symfony\Messenger\EventBus; use Symfony\Component\Messenger\MessageBus; use Symfony\Component\Messenger\Middleware\HandleMessageMiddleware; $eventToHandlerMap = []; /* * IMPORTANT! Events can go through messageBus without being handled, set second argument * on Symfony's EventHandlerLocator constructor ($allowNoHandlers) to true */ $handlerLocator = new EventHandlerLocator($eventToHandlerMap, true); $messengerBus = new MessageBus([new HandleMessageMiddleware($handlerLocator)]); $eventBus = new EventBus($messengerBus); /** @var \Gears\Event\Event $event */ $eventBus->handle($event);
Contributing
Found a bug or have a feature request? Please open a new issue. Have a look at existing issues before.
See file CONTRIBUTING.md
License
See file LICENSE included with the source code for a copy of the license terms.