Event Bus Applicatif (Spring) #12
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Spécification – Event Bus applicatif (Spring)
1. Contexte
L’application Keryloo adopte une architecture orientée événements afin de :
Cette spécification décrit la mise en place d’un Event Bus interne, basé sur les mécanismes natifs de Spring Events.
2. Objectifs
3. Périmètre
Inclus
Exclus
4. Concepts
4.1 Domain Event
Un Domain Event représente un fait métier déjà survenu.
Règles :
PaymentSavedEvent)Exemple d’interface :
4.2 Événements concrets
Autres exemples :
5. Publication des événements
5.1 Abstraction de publication
Pour éviter le couplage direct à Spring :
5.2 Implémentation Spring
6. Intégration dans les services métier
Les événements doivent être émis depuis la couche service, jamais depuis les controllers ou les repositories.
6.1 Service générique
6.2 Exemple concret
7. Listeners
7.1 Listener simple
7.2 Listener transactionnel (recommandé)
Tous les traitements techniques doivent être exécutés après commit.
7.3 Listener asynchrone
Pour PDF, GED, emails, etc.
Configuration requise :
8. Bonnes pratiques
À faire
À éviter
10. Tests
11. Évolutions futures
12. Mise à jour des agents Claude
Agent architect
Considérer le workflow comme un consommateur d’événements
Agent backend-developer