Module eventually::command
source · Expand description
Module containing support for Domain [Command]s.
Following the Domain-driven Design definition, a [Command] expresses the intent of an Actor (e.g. a Customer, a User, a System, etc.) to modify the state of the system in some way.
To modify the state of the system through a [Command], you must implement a Command Handler which, in an Event-sourced system, should make use of an [Aggregate] to evaluate the validity of the Command submitted, and emit Domain [Event]s as a result (through the Event [Store]).
Check out the type documentation exported in this module.
Modules§
- Module exposing a test Scenario type to write Domain Commands test cases using the given-then-when canvas.
Traits§
- A software component that is able to handle [Command]s of a certain type, and mutate the state as a result of the command handling, or fail.
Type Aliases§
- A Command represents an intent by an Actor (e.g. a User, or a System) to mutate the state of the system.