View Source Commanded.Aggregates.ExecutionContext (Commanded v1.4.1)
Defines the arguments used to execute a command for an aggregate.
The available options are:
command- the command to execute, typically a struct (e.g.%OpenBankAccount{...}).retry_attempts- the number of retries permitted if an{:error, :wrong_expected_version}is encountered when appending events.causation_id- the UUID assigned to the dispatched command.correlation_id- a UUID used to correlate related commands/events.metadata- a map of key/value pairs containing the metadata to be associated with all events created by the command.handler- the module that handles the command. It may be either the aggregate module itself or a separate command handler module.function- the name of the function, as an atom, that handles the command. The default value is:execute, used to support command dispatch directly to the aggregate module. For command handlers the:handlefunction is used.before_execute- the name of the function, as an atom, that prepares the command before execution, called just beforefunction. The default value isnil, disabling it. It should return:okon success or{:error, any()}to cancel the dispatch.lifespan- a module implementing theCommanded.Aggregates.AggregateLifespanbehaviour to control the aggregate instance process lifespan. The default value,Commanded.Aggregates.DefaultLifespan, keeps the process running indefinitely.