1. Go to this page and download the library: Download envor/libstream library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
envor / libstream example snippets
use Envor\Libstream\Command as LibCommand;
use App\Aggregates\Main;
#[HandledBy(Main::class)]
class Command extends LibCommand
{
public static function createBusiness(
string $uuid,
array $businessAttributes,
array $metaData = []
): self
{
return new self(new BusinessCreated(
aggregateUuid: $uuid,
businessAttributes: $businessAttributes,
metaData: $metaData
));
}
}
use Envor\Libstream\Dispatcher as LibDispatcher
class Dispatcher extends LibDispatcher
{
public function createBusiness(
string $uuid,
array $businessAttributes,
array $metaData = []
): self
{
$this->add(new Command(new BusinessCreated(
aggregateUuid: $uuid,
businessAttributes: $businessAttributes,
metaData: $metaData
)));
return $this;
}
}