Current section
Files
Jump to
Current section
Files
lib/nebulex_cluster/node_supervisor.ex
defmodule NebulexCluster.NodeSupervisor do
@moduledoc false
use Supervisor
alias NebulexCluster.Pool
## API
@doc false
def start_link({module, opts}) do
name = Keyword.fetch!(opts, :name)
Supervisor.start_link(__MODULE__, {module, opts}, name: name)
end
## Supervisor Callbacks
@impl true
def init({module, opts}) do
module
|> Pool.children(opts)
|> Supervisor.init(strategy: :one_for_one)
end
end