Maestro v0.1.0 Maestro.Types.Command View Source

Commands are the primary way clients express a desire to change the system. In Maestro, commands are always executed within the context of an aggregate in a consistent manner.

In order to assist the system in promptly processing commands, clients can provide a sequence number which would give the system a hint that the local state is out of date. If that isn’t present, the generated events will be initially rejected but could be subsequently accepted.

Link to this section Summary

Link to this section Types

Link to this type t() View Source
t() :: %Maestro.Types.Command{
  aggregate_id: HLClock.Timestamp.t(),
  data: map(),
  sequence: integer(),
  type: String.t()
}