symplify / symfony-event-dispatcher
This package is abandoned and no longer maintained.
The author suggests using the contributte/event-dispatcher package instead.
There is no license information available for the latest version (v2.0.0-RC2) of this package.
Symfony\EventDispatcher integration to Nette.
v2.0.0-RC2
2017-04-27 14:57 UTC
Requires
- php: ^7.1
- nette/di: ^2.4
- nette/http: ^2.4
- symfony/dependency-injection: ^3.2
- symfony/event-dispatcher: ^3.2
- symplify/package-builder: ^1.3
Requires (Dev)
- kdyby/events: ^3.0
- nette/application: ^2.4
- nette/bootstrap: ^2.4
- phpunit/phpunit: ^6.0
- symfony/config: ^3.2
- symfony/console: ^3.2
- symfony/http-kernel: ^3.2
- symfony/yaml: ^3.2
- tracy/tracy: ^2.4
This package is auto-updated.
Last update: 2022-03-08 10:48:48 UTC
README
Install
composer require symplify/symfony-event-dispatcher
Register the extension in config.neon
:
# app/config/config.neon extensions: - Symplify\SymfonyEventDispatcher\Adapter\Nette\DI\SymfonyEventDispatcherExtension
Usage
See short article about EventDispatcher. This article is tested – it will be still up-to-date with Symfony 4+.
1. Create class that implements Symfony\Component\EventDispatcher\SubscriberInterface
:
// app/EventSubscriber/CheckRequestEventSubscriber.php namespace App\EventSubscriber; use Symfony\Component\EventDispatcher\EventSubscriberInterface; use Symfony\Component\HttpKernel\KernelEvents; use Symfony\Component\HttpKernel\Event\GetResponseEvent final class CheckRequestEventSubscriber implements EventSubscriberInterface { /** * @var bool */ public $isUserNotified = false; public static function getSubscribedEvents(): array { // in format ['event name' => 'public function name that will be called'] return [KernelEvents::REQUEST => 'validateRequest']; } // Appropriate event object is passed in arguments public function validateRequest(GetResponseEvent $event): void { // some logic to send notification $this->isUserNotified = true; } }
2. Register it to services
# app/config/config.neon services: - App\EventSubscriber\CheckRequestEventSubscriber
And it works :)
That's all!
Contributing
Send issue or pull-request to main repository.