Packages

A small service that parses urls agains a given set of rules

Current section

Files

Jump to
url_parser lib rule.ex
Raw

lib/rule.ex

defmodule UrlParser.Rule do
@moduledoc """
Main module that holds information about the router rules
"""
@on_load :start_agent
def start_agent do
Agent.start_link(fn -> %{} end, name: __MODULE__)
:ok
end
def add(id, rule), do: Agent.update(__MODULE__, fn rules -> Map.put(rules, id, rule) end)
def remove(id), do: Agent.update(__MODULE__, fn rules -> Map.delete(rules, id) end)
def rules, do: Agent.get(__MODULE__, fn rules -> rules end)
end