2021-06-22 12:09:25 +00:00
|
|
|
defmodule MatrixServer.Application do
|
|
|
|
# See https://hexdocs.pm/elixir/Application.html
|
|
|
|
# for more information on OTP Applications
|
|
|
|
@moduledoc false
|
|
|
|
|
|
|
|
use Application
|
|
|
|
|
|
|
|
def start(_type, _args) do
|
|
|
|
children = [
|
|
|
|
MatrixServer.Repo,
|
|
|
|
MatrixServerWeb.Telemetry,
|
|
|
|
{Phoenix.PubSub, name: MatrixServer.PubSub},
|
2021-07-10 21:16:00 +00:00
|
|
|
MatrixServerWeb.Endpoint,
|
2021-07-23 19:00:01 +00:00
|
|
|
{Registry, keys: :unique, name: MatrixServer.RoomServer.Registry},
|
2021-08-05 11:19:38 +00:00
|
|
|
{DynamicSupervisor, name: MatrixServer.RoomServer.Supervisor, strategy: :one_for_one},
|
2021-08-12 22:45:07 +00:00
|
|
|
MatrixServer.KeyServer,
|
2021-08-06 20:03:34 +00:00
|
|
|
{Finch, name: MatrixServerWeb.HTTPClient}
|
2021-06-22 12:09:25 +00:00
|
|
|
]
|
|
|
|
|
2021-07-23 19:00:01 +00:00
|
|
|
Supervisor.start_link(children, name: MatrixServer.Supervisor, strategy: :one_for_one)
|
2021-06-22 12:09:25 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
# Tell Phoenix to update the endpoint configuration
|
|
|
|
# whenever the application is updated.
|
|
|
|
def config_change(changed, _new, removed) do
|
|
|
|
MatrixServerWeb.Endpoint.config_change(changed, removed)
|
|
|
|
:ok
|
|
|
|
end
|
|
|
|
end
|