<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
swag-industries / doctrine-domain-events example snippets
class YourModel extends DomainModel
{
public const CREATION = 'creation';
public function __construct()
{
$this->dispatch(new DomainEvent($this), self::CREATION);
}
}
class DomainRule implements DomainRuleInterface
{
public function on()
{
return YourModel::CREATION;
}
public function execute(DomainEvent $event)
{
// Do Something on your model creation
}
}
use Biig\Component\Domain\Model\Instantiator\Instantiator;
use Doctrine\ORM\EntityManager;
class SomeController
{
public function index(Instantiator $instantiator, EntityManager $entityManager)
{
$model = $instantiator->instantiate(YourModel::class);
$entityManager->persist($model);
$entityManager->flush();
}
}