Packages
doex
0.1.1
0.14.1
0.12.2
0.12.1
0.11.2
0.11.1
0.11.0
0.10.2
0.10.1
0.9.0
0.8.3
0.8.2
0.8.1
0.8.0
0.7.8
0.7.7
0.7.6
0.7.5
0.7.4
0.7.3
0.7.2
0.7.1
0.7.0
0.6.1
0.6.0
0.5.2
0.5.1
0.5.0
0.4.18
0.4.17
0.4.16
0.4.15
0.4.14
0.4.13
0.4.12
0.4.11
0.4.10
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.1
0.3.0
0.2.2
0.2.1
0.2.0
0.1.1
A Digital Ocean API v2 client for Elixir (yes, another one)
Current section
Files
Jump to
Current section
Files
lib/doex/worker.ex
defmodule Doex.Worker do
use GenServer
def start_link() do
{:ok, _pid} = GenServer.start_link(__MODULE__, nil, name: __MODULE__)
end
def init(_) do
{:ok, %{}}
end
def handle_call(:config, _from, state) do
case state[:config] do
nil -> read_config(state)
c -> {:reply, c, state}
end
end
def handle_call(:reload, _from, _state) do
{:reply, :ok, %{config: Doex.Config.read}}
end
def handle_call({:reload, filename}, _from, _state) do
{:reply, :ok, %{config: Doex.Config.read(filename)}}
end
defp read_config(state) do
config = Doex.Config.read
{:reply, config, Map.put(state, :config, config)}
end
end