-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ShiftFreeLog : refactoring, utiliser un EventListener #714
Conversation
Je ne suis pas sur de bien comprendre pourquoi tu veux faire ce changement ? Je ne suis pas tres au fait du pourquoi privilégier l'une ou l'autre implémentation. Pour moi, celle que j'avais faite a le mérite de catcher toutes les modifications. Dans celle que tu proposes, il faut bien être sur de mettre la creation d'un event partout. C'est surtout ca qui avait justifier mon choix. |
Pourquoi on devrait catcher toutes les modifications ? Et pourquoi stocker le "reason" dans le D'ailleurs, même si on voulait catcher toutes les modifs (et donc avoir un ShiftSubcriber), je pense que ca serait plus propre de dispatcher ensuite des event en fonction de ce qu'on souhaite logger. Mais là le mapping est déjà 1-1 entre l'action du controlleur (shift_free) et l'event donc pas besoin de passer par le subscriber.. |
a39e6a3
to
df6cb58
Compare
7473f13
to
3dc6014
Compare
Faudra juste penser que lors des modifications futures (ex, suppression des créneaux lors de la fermeture de compte, gel du compte, exemption, ...) a créer l'event. Ca me parait plus error prone (ca va vite d'oublier un cas, et de ne pas s'en rendre compte vu qu'on aura des logs), l'autre solution avait le mérite de mettre le code qu'a un seul endroit, la il faut duppliquer autant fois. |
Je suis d'accord, ca dépend de la stratégie, je vois plutôt le Je merge, et il y aura peut-être en effet d'autres endroits où l'on aura besoin d'appeler |
…e#714) * ShiftFreeEvent: add extra parameters * Delete ShiftSubscriber. Create ShiftFreeLogEventListener. Listen onShiftFreed * Set reason via ShiftFreedEvent
Quoi ?
S'inspirer de
TimeLogEventListenener
pour créer unShiftFreeLogEventListenener
ShiftSubscriber
ShiftFreeLogEventListener
ShiftFreedEvent
est dispatché, créer le ShiftFreedLog correspondantShiftInvalidatedEvent
reason
) via l'Entity - la passer maintenant parShiftFreedEvent