All Items All Items
Aggregates expose intentions to change the state of the domain
Aggregate method names should start with verbs, that indicate the change in the domain. Ex.
- AddParticipant
- DisburseLoan
- ReceiveContainer
These methods are invoked to walk the Aggregate through the state changes. Business invariants are invoked during this walk through.
If the method call fails, Domain Exceptions are raised containing:
- The exact reason for failure, including values
- The business invariant that failed to pass
If the method succeeds:
- An Intention materializes into a Domain Event
- The modified Aggregate would be persisted if using DDD/CQRS