Laravel Command Bus Service
This Package gives you an easy way to throw Commands in a Command Bus., (*1)
Installation
Per usual, install Commander through Composer., (*2)
"require": {
"wegnermedia/commander": "dev-master"
}
Next, update app/config/app.php to include a reference to this package's service provider in the providers array., (*3)
'providers' => [
'Wegnermedia\Commander\CommanderServiceProvider'
]
Next, add the facade app/config/app.php., (*4)
'aliases' => [
'Commander' => 'Wegnermedia\Commander\Facades\Commander'
]
And now build something awesome., (*5)
Usage via Trait
<?php
use Wegnermedia\Commander\CommanderTrait;
class CartController extends ShopController {
use CommanderTrait;
/**
* Add Item to Cart.
*
* @return Response
*/
public function addItem()
{
$inputs = Input::all();
// Validation goes here ...
$command = new AddItemToCartCommand($inputs);
$result = $this->execute($command);
// ... create the Response
}
}
Usage via Facade
<?php
class CartController extends ShopController {
/**
* Add Item to Cart.
*
* @return Response
*/
public function addItem()
{
$inputs = Input::all();
// Validation goes here ...
$command = new AddItemToCartCommand($inputs);
$result = Commander::execute($command);
// ... create the Response
}
}
Done!, (*6)