desmart/laravel-commandbus
Laravel CommandBus
A small, pluggable command bus.
Instalation
$ composer require desmart/laravel-commandbus- Add
DeSmart\CommandBus\ServiceProvidertoapp.php
Example usage:
Command Class
class RegisterUserCommand
{
protected $email;
public function __construct($email)
{
$this->email = $email;
}
public function getEmail()
{
return $this->email;
}
}
CommandValidator Class
class RegisterUserCommandValidator
{
public function validate(RegisterUserCommand $command)
{
// it will be called before handler
}
}
CommandHandler Class
class RegisterUserCommandHandler
{
public function handle(RegisterUserCommand $command)
{
// it will be called if validator won't throw any exception
}
}
Execute the command:
class Controller
{
/**
* @var \DeSmart\CommandBus\Contracts\CommandBus
*/
protected $commandBus;
public function __construct(\DeSmart\CommandBus\Contracts\CommandBus $commandBus)
{
$this->commandBus = $commandBus;
}
public function index()
{
$command = new RegisterUserCommand("foo@bar.net");
$this->commandBus->handle($command);
}
}
Related Packages
doctrine/dbal
Powerful PHP database abstraction layer (DBAL) with many features for database s...
644,549,754
9,698
laravel/serializable-closure
Laravel Serializable Closure provides an easy and secure way to serialize closur...
423,477,751
607
nunomaduro/collision
Cli error handling for console/command-line PHP applications.
403,217,078
4,664
Version History
| Version | Released | PHP | Laravel | License |
|---|---|---|---|---|
| 1.1.1 | >=5.6.0 | 5.1.* | | MIT | |
| 1.1.0 | >=5.6.0 | ~5.2 | MIT | |
| 1.0.1 | >=5.6.0 | ~5.1 | MIT | |
| 1.0.0 | >=5.6.0 | ~5.1 | MIT |