mmetesreau / hyj-training-cqrs-es

HYJ - CQRS & Event Sourcing Workshop

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Panier

Step 1 : Domain

  • Quand je rajoute un article, alors j’obtiens un évènement ArticleAjouté
  • Etant donné un panier avec un article A, quand je valide, alors j’obtiens PanierValidé
  • Etant donné un panier avec un article A, quand j’enlève un article A, alors j’obtiens ArticleEnlevé
  • Etant donné un panier avec un article A, quand j’enlève un article B, alors je n’émets aucun évènement
  • Etant donné un panier vide, quand je valide, alors je retourne une erreur

Step 2 : Query Handler

  • Quand un évènement ArticleAjouté est levé alors le panier est incrémenté
  • Quand un évènement ArticleEnlevé est levé alors le panier est décrémenté

Step 3 : Event Publisher

  • Quand un évènement est publié alors il est persisté
  • Quand un évènement est publié alors les handlers abonnés sont appelés

Step 4 : Event Store

  • Un event store retourne les évènements d'un aggregat spécifique
  • Un event store lève une exception si le numéro de version n'est pas le même

Step 5 : Command Handler

  • Quand je rajoute un article alors le panier est incrémenté
  • Quand j'enlève un article alors le panier est décrémenté

About

HYJ - CQRS & Event Sourcing Workshop


Languages

Language:C# 100.0%