Moony
PHP Framework

Event Dispatcher

Komponenta Event Dispatcher poskytuje nástroje, které umožňují komponentám v aplikace vzájemně komunikovat prostřednictvím odesílání událostí a naslouchání jim.

Register Listener

Registrace kdo má poslouchat při spuštění eventu se prodáví v /bootstrap.php v sekci Application Event Listeners Registration

$app->registerEventListener('order.new', OrdersNotification::class, 'newOrder');

Pro vyvolání události se použije třída \Moony\bootstrap\core\services\EventDispatcher a statická metoda dispatch(). První argument metody je název události a druhý argument je pole volitelných dat, které se metodě předají.

use Moony\bootstrap\core\services\EventDispatcher;

EventDispatcher::dispatch('order.new', ['orderData' => $orderData]);
Názvy událostí by nejlépe měly být konstanty abstraktní třídy, či enum.