The Aggregate type.
The Aggregate type. This is the only (abstract) type member to be defined.
All other type members are aliases defined by type projection of inner types from Aggregate type itself.
Alias for Aggregate's ProtocolCommand
Alias for Aggregate's ProtocolCommand
Alias for Aggregate's ProtocolEvent
Alias for Aggregate's ProtocolEvent
Alias for an immutable Seq of Aggregate's ProtocolEvent
Alias for an immutable Seq of Aggregate's ProtocolEvent
Alias for Aggregate#Id
Alias for Aggregate#Id
Alias for Aggregate#Protocol
Alias for Aggregate#Protocol
Partial function to transform incoming messages to (Id, Command) tuple
Handler method receiving the initial command to create an Aggregate This method will not create an Aggregat.
Provide means to configure how an AggregateId should be assigned / generated.
Aggregates must have, by definition, unique Ids. Implementors my choose between different strategies:
- AssignedIdStrategy to use whenever an aggregate id is generated externally. (e.g.: user assigned or external system) - AutoGeneratedIdStrategy to use whenever id generation is managed by the application ifself. - SingletonIdStrategy useful for singleton Aggregates with a constant, well-known, id.
the AggregateType