Skip to content

Introduce Transaction service #3

@dmibod

Description

@dmibod
  1. Refactor EventService to TransactionService
  2. Get EventBus from Context (case 1) otherwise create new one and put in Context (case 2)
  3. Fire events if (case 2), "commit" events (enqueue "compensation" events, apply events to DB)
    3.1. In case of failure, "rollback" transaction (execute "compensation" events, in case of error > log & panic)
    3.2. In case of success, fire TransactionCommitted event
  4. Send notifications by TransactionCommitted event

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions