Packages
x3m_system
0.7.13
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
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