Current section

Files

Jump to
tableau lib tableau_dev_server server_supervisor.ex
Raw

lib/tableau_dev_server/server_supervisor.ex

defmodule TableauDevServer.ServerSupervisor do
@moduledoc false
use Supervisor
def start_link(init_arg) do
Supervisor.start_link(__MODULE__, init_arg, name: __MODULE__)
end
@impl true
def init(_init_arg) do
if Application.get_env(:tableau, :server) do
children = [
WebDevUtils.FileSystem,
TableauDevServer.Server,
WebDevUtils.CodeReloader
]
Supervisor.init(children ++ asset_children(), strategy: :one_for_one)
else
:ignore
end
end
def asset_children do
for conf <- Application.get_env(:tableau, :assets, []) do
{WebDevUtils.Assets, conf}
end
end
end