X3m.System.GenAggregateMod behaviour (X3m System v0.9.0)

Copy Markdown View Source

Summary

Callbacks

apply_event_stream(pid, function)

@callback apply_event_stream(pid(), function()) :: :ok

commit(pid, t, t, integer)

@callback commit(pid(), String.t(), X3m.System.Message.t(), integer()) ::
  {:ok, X3m.System.Aggregate.State.t()} | :transaction_timeout

handle_msg(pid, atom, t, t)

@callback handle_msg(pid(), atom(), X3m.System.Message.t(), Keyword.t()) ::
  {:ok, X3m.System.Message.t(), any()} | any()