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
Concatenate this
Actions with that
Actions
Check if the passed Event can be handled by this Actions instance
Check if the passed Event can be handled by this Actions instance
INTERNAL API This method is used to prevent that Events that can't be handle are stored.
Check if the passed Events can be handled by this Actions instance
Check if the passed Events can be handled by this Actions instance
INTERNAL API This method is used to prevent that Events that can't be handle are stored.
Build a TryCommandHandlerInvoker that will always return an Failure Used internally to handle unknown commands
Declares a Command Handler
that produces one single Event
Declares an event handler
Declares an event handler
- the event handler function
an Actions for A
Returns a CommandHandlerInvoker for the passed Command.
Returns a CommandHandlerInvoker for the passed Command. Invokers are delayed execution
of Command Handlers
and abstract over the Functor that will be returned when handling the command.
Internally, this method calls the declared Command Handlers
.
Applies the passed Event producing a new instance of Aggregate.
Declares a guard clause that reject commands that fulfill a given condition.
Declares a guard clause that reject commands that fulfill a given condition.
A guard clause is a Command Handler
as it handles a incoming command,
but instead of producing Event, it returns a Throwable to signalize an error condition.
Guard clauses command handlers have predecence over handlers producting Events.
Alias for reject
(Since version 0.3.1) Use handleCommandAsync instead
(Since version 0.3.1) Use handleCommandAsync instead
(Since version 0.3.1) Use handleCommand instead
(Since version 0.3.1) Use handleCommand instead
(Since version 0.3.1) Use handleEvent instead
(Since version 0.3.1) Use tryToHandleCommand instead
(Since version 0.3.1) Use tryToHandleCommand instead