Skip to content

Commit b8ca2f9

Browse files
committed
Cleaning up logger
1 parent 280ac53 commit b8ca2f9

File tree

3 files changed

+18
-6
lines changed

3 files changed

+18
-6
lines changed

lib/elixir_osc.ex

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,4 @@ defmodule ElixirOsc do
66
def start(_type, args) do
77
ElixirOsc.Supervisor.start_link args
88
end
9-
10-
def start_logger do
11-
ElixirOsc.Events.subscribe(ElixirOsc.Logger, [])
12-
end
139
end

lib/elixir_osc/events.ex

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,14 @@ defmodule ElixirOsc.Events do
66
{:ok, []}
77
end
88

9-
def subscribe(module, args) do
10-
:gen_event.add_handler(:osc_events, module, args)
9+
def subscribe(handler), do: subscribe(handler, [])
10+
def subscribe(handler, args) do
11+
:gen_event.add_handler(:osc_events, handler, args)
12+
end
13+
14+
def unsubscribe(handler), do: unsubscribe(handler, [])
15+
def unsubscribe(handler, args) do
16+
:gen_event.delete_handler(:osc_events, handler, args)
1117
end
1218

1319
def send_event(msg) do

lib/elixir_osc/logger.ex

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,16 @@
11
defmodule ElixirOsc.Logger do
22
use GenEvent.Behaviour
33

4+
def start_logger do
5+
pid = {ElixirOsc.Logger, make_ref}
6+
:ok = ElixirOsc.Events.subscribe(pid)
7+
{:ok, pid}
8+
end
9+
10+
def stop_logger(pid) do
11+
ElixirOsc.Events.unsubscribe(pid)
12+
end
13+
414
def handle_event(event, state) do
515
IO.inspect event
616
{:ok, state}

0 commit comments

Comments
 (0)