summaryrefslogtreecommitdiff
path: root/examples/bot/lib/example.ex
blob: 42a71a9830684e00422c7bf5ef3572883880ccf2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
defmodule Example do
  use Application

  alias Example.Bot

  # See http://elixir-lang.org/docs/stable/elixir/Application.html
  # for more information on OTP Applications
  def start(_type, _args) do
    import Supervisor.Spec, warn: false

    children = Application.get_env(:exirc_example, :bots)
               |> Enum.map(fn bot -> worker(Bot, [bot]) end)

    # See http://elixir-lang.org/docs/stable/elixir/Supervisor.html
    # for other strategies and supported options
    opts = [strategy: :one_for_one, name: Example.Supervisor]
    Supervisor.start_link(children, opts)
  end
end