This commit is contained in:
Able 2025-03-16 19:37:28 -05:00
parent c717faa947
commit 914e6a10b9
4 changed files with 48 additions and 1 deletions

View file

@ -13,8 +13,14 @@ defmodule RlRepo do
Logger.info("Listening on port #{port}")
# Spawn RepoLookup
# Spawn the router.
Task.Supervisor.start_child(Router, fn ->
Router.start()
end)
# Spawn RepoLookup
Task.Supervisor.start_child(RlRepo.QueryServices, fn ->
RepoLookup.start_repo_lookup()
end)

View file

@ -11,6 +11,7 @@ defmodule RlRepo.Application do
children = [
{Task.Supervisor, name: RlRepo.QueryServices},
{Task.Supervisor, name: Router},
# Starts a worker by calling: RlRepo.Worker.start_link(arg)
# {RlRepo.Worker, arg}

25
lib/router/router.ex Normal file
View file

@ -0,0 +1,25 @@
defmodule Router do
require Logger
def start() do
info = %{routes: %{}}
Process.register(self(), :router)
loop_router(info)
end
defp loop_router(info) do
receive do
{:route, value, return_pid} ->
Logger.info "Route recieved #{value}"
send(return_pid, {:route, :exists, "template example."})
# code
{:route, :register, route, template} ->
Logger.info "Route registration attempt."
end
loop_router(info)
end
end

15
lib/router/router_api.ex Normal file
View file

@ -0,0 +1,15 @@
defmodule Router.RouterApi do
require Logger
# Search for a route.
def lookup_route(route) do
send(:router, {:route, route, self()})
receive do
{:route, :exists, template} ->
Logger.info "Found route."
# code
end
end
end