philomena/lib/philomena_web/plugs/canary_map_plug.ex
2020-01-10 23:20:19 -05:00

18 lines
357 B
Elixir

defmodule PhilomenaWeb.CanaryMapPlug do
import Plug.Conn
def init(opts), do: opts
def call(conn, opts) do
phx_action = conn.private.phoenix_action
canary_action =
case Keyword.fetch(opts, phx_action) do
{:ok, action} -> action
_ -> phx_action
end
conn
|> assign(:canary_action, canary_action)
end
end