714ec29743
Define a simple in-memory key-value store for our cache. TL;DR: - Define `Cache` as a simple state-keeping `Agent` - Define `Sup`, which starts our Cache process - Define `App`, which starts our Supervisor process - Whitelist `App` in `mix.exs`, so that it starts after calling `iex -S mix`
21 lines
385 B
Elixir
21 lines
385 B
Elixir
defmodule Sup do
|
|
@moduledoc """
|
|
Top-level supervisor for our OTP application. For now, this supervisor starts
|
|
and monitors our cache.
|
|
"""
|
|
|
|
use Supervisor
|
|
|
|
def start_link(opts \\ []) do
|
|
Supervisor.start_link(__MODULE__, :ok, opts)
|
|
end
|
|
|
|
@impl true
|
|
def init(:ok) do
|
|
children = [
|
|
Cache
|
|
]
|
|
|
|
Supervisor.init(children, strategy: :one_for_one)
|
|
end
|
|
end
|