xtrasmal / tactician-provider
Laravel ServiceProvider for the Tactician CommandBus library
Requires
- php: >=5.5
- illuminate/support: 5.0.*
- league/tactician: 0.5.*
This package is not auto-updated.
Last update: 2024-11-23 18:08:14 UTC
README
Laravel ServiceProvider for the Tactician library https://github.com/thephpleague/tactician/
If you are looking for a Symfony2 Bundle or want to help: https://github.com/xtrasmal/TacticianBundle
Setup
First add this provider to your composer dependencies:
> composer require xtrasmal\tactician-provider
Then register it in your config/app.php.
'providers' => [ 'Xtrasmal\TacticianProvider\TacticianServiceProvider', // ...
That's it!
Configuring Command Handlers
The most common use case with Tactician is passing a Command to the Command Bus and having it routed to the Command Bus.
Since handlers often have extra dependencies and are best lazily-loaded, you'll want to register them in the IoC container.
Let's say we have two classes, RegisterUserCommand
and RegisterUserHandler
. Add the following to config/tactician.php
return [ 'buses' => [ 'default' => [ 'commandbus' => 'League\Tactician\CommandBus', 'middleware' => [ // ... ], 'commmands' => [ 'RegisterUser' => [ 'command' => 'Namespace\RegisterUserCommand', 'handler' => 'Namespace\RegisterUserHandler' ], 'RemoveUser' => [ 'command' => 'Namespace\RemoveUserCommand', 'handler' => 'Namespace\RemoveUserHandler' ], // ... ], ], ], ];