indigophp / tactician-event-decorator
Event decorator for Tactician CommandBus implementations
Installs: 33
Dependents: 1
Suggesters: 1
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
pkg:composer/indigophp/tactician-event-decorator
Requires
- php: >=5.5.0
- league/event: ~2.0.0
- league/tactician: dev-master
Requires (Dev)
- henrikbjorn/phpspec-code-coverage: ~1.0.0
- phpspec/phpspec: ~2.1.0
This package is not auto-updated.
Last update: 2022-02-01 12:43:32 UTC
README
Event decorator for Tactician CommandBus implementations.
Install
Via Composer
$ composer require indigophp/tactician-event-decorator
Usage
When the command ran without failures:
use League\Event\EmitterInterface; use League\Tactician\CommandBus\EventableCommandBus; use League\Tactician\Event\CommandExecuted; // $innerCommandBus = new CommandBus instance // $emitter = new EmitterInterface instance OR null (optional) $commandBus = new EventableCommandBus($innerCommandBus, $emitter); $commandBus->addListener('commandExecuted', function(CommandExecuted $event) { // log the success }); $commandBus->execute($command);
When the command ran with failures:
$commandBus->addListener('commandFailed', function(CommandFailed $event) { // log the failure $event->handle(); // without calling this the exception will be thrown }); // something bad happens, exception thrown $commandBus->execute($command);
Testing
$ phpspec run
Contributing
Please see CONTRIBUTING for details.
Credits
License
The MIT License (MIT). Please see License File for more information.