cover/Elixir.WalletJourney.Events.JourneyStepAdvanced.html

1 defmodule WalletJourney.Events.JourneyStepAdvanced do
2 @moduledoc "Emitted when a journey step is completed and the next step is entered."
3 @behaviour WalletEvents.DomainEvent
4
5 @impl true
6 55 def event_name, do: "JourneyStepAdvanced.v1"
7
8 @impl true
9 55 def event_version, do: 1
10
11 @doc "Builds the domain event map."
12
:-(
def build(journey_id, step, completed_steps, opts \\ []) do
13 55 %{
14 event_id: WalletSharedKernel.Correlation.new_request_id(),
15 event_name: event_name(),
16 event_version: event_version(),
17 aggregate_id: journey_id,
18 correlation_id:
19 Keyword.get(opts, :correlation_id, WalletSharedKernel.Correlation.new_correlation_id()),
20 occurred_at: DateTime.utc_now(),
21 payload: %{
22 journey_id: journey_id,
23 step: step,
24 completed_steps: completed_steps,
25 current_step: Keyword.get(opts, :current_step)
26 }
27 }
28 end
29 end
Line Hits Source