Packages
x3m_system
0.7.6
0.9.1
0.9.0
0.8.6
0.8.5
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
retired
0.7.20
0.7.19
0.7.18
0.7.17
0.7.16
0.7.15
0.7.14
0.7.13
0.7.12
0.7.11
0.7.10
0.7.9
0.7.8
retired
0.7.7
0.7.6
retired
0.7.5
0.7.4
retired
0.7.3
retired
0.7.2
0.7.1
0.7.0
0.6.4
0.6.3
0.6.2
0.6.1
0.6.0
retired
0.5.6
0.5.5
0.5.4
0.5.3
0.5.2
0.5.1
0.5.0
0.4.9
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.1.1
0.1.0
Building blocks for distributed and/or CQRS/ES systems
Retired package: Release invalid - telemetry duration should be native_time
Current section
Files
Jump to
Current section
Files
lib/service_registry/state.ex
defmodule X3m.System.ServiceRegistry.State do
defmodule Services do
@type t() :: %__MODULE__{local: local_services(), remote: remote_services()}
@type local_services() :: %{service_name() => node()}
@type remote_services() :: %{service_name() => %{node() => module :: atom()}}
@type service_name() :: atom()
@enforce_keys ~w(local public remote)a
defstruct @enforce_keys
end
@type t() :: %__MODULE__{services: Services.t()}
@enforce_keys ~w(services)a
defstruct @enforce_keys
end