Symfony6 Techwall #70 Le système d'évènement L'eventListener et ordre de priorité

Votre vidéo commence dans 10
Passer (5)
Formation gratuite en FR pour les membres inscrits sur les sites de vidéos

Merci ! Partagez avec vos amis !

Vous avez aimé cette vidéo, merci de votre vote !

Ajoutées by admin
89 Vues
Symfony6 Techwall #70 Le système d'évènement L'eventListener et ordre de priorité

https://github.com/aymensellaouti/sf6Techwall

Le système d’événements de Symfony utilise les priorités afin de savoir quel ordre d’écouteur déclencher.
La propriété ayant la valeur la plus haute sera exécuté en premier.
Le tag priority vous permet de définir la priorité de votre écouteur


Afin de finaliser notre système, et après avoir créer l’événement et le dispatcher, il faut permettre aux intéressés par cet événement de l’écouter, se greffer dessus et exécuter le traitement souhaité.
Il y a deux méthodes pour permettre cet écoute :
Créer un EventListener
Créer un EventSubscriber

Afin d’utiliser un EventListner, il faut créer un service et le tagger.
Le tag permettant de dire à l’EventDispatcher voici un EventListener est le tag name avec la valeur kernel.event_listener.
Le tag permettant d’identifier l’événement à écouter est event
Le tag permettant d’identifier la méthode à exécuter est method


Afin d’avoir un code extensible et basée sur des plugins qu’on peut ajouter avant ou après l’exécution d’un code, Symfony nous propose le composant EventDispatcher.
L’idée est de pouvoir ajouter des plugins avec des fonctionnalités qu’on peut greffer sans interférer dans les autres plugins.

L’EventDispatcher de Symfony utilises deux patron de conception pour le faire : Le Médiateur et l’observateur.

L’observateur va nous permettre de faire en sorte qu’un ou plusieurs observateurs sont intéressés par un ou plusieurs sujets. Chaque fois que quelque chose de neuf se produit dans un sujet, tous ses observateurs sont notifiés.

Le médiateur (La classe EventDispatcher) va nous permettre d’encapsuler la manière avec laquelle cet ensemble d’objets vont interagir. Il sera l’intermédiaire.

Pour résumer, le système d’événements de Symfony se base sur :

Un événement (Event)

Un gestionnaire d’événement (Dispatcher)

Les écouteurs sur les événement (Listner)
Catégories
Evenements

Ajouter un commentaire

Commentaires

Soyez le premier à commenter cette vidéo.