File tree Expand file tree Collapse file tree 3 files changed +18
-6
lines changed Expand file tree Collapse file tree 3 files changed +18
-6
lines changed Original file line number Diff line number Diff line change @@ -6,8 +6,4 @@ defmodule ElixirOsc do
6
6
def start ( _type , args ) do
7
7
ElixirOsc.Supervisor . start_link args
8
8
end
9
-
10
- def start_logger do
11
- ElixirOsc.Events . subscribe ( ElixirOsc.Logger , [ ] )
12
- end
13
9
end
Original file line number Diff line number Diff line change @@ -6,8 +6,14 @@ defmodule ElixirOsc.Events do
6
6
{ :ok , [ ] }
7
7
end
8
8
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 )
11
17
end
12
18
13
19
def send_event ( msg ) do
Original file line number Diff line number Diff line change 1
1
defmodule ElixirOsc.Logger do
2
2
use GenEvent.Behaviour
3
3
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
+
4
14
def handle_event ( event , state ) do
5
15
IO . inspect event
6
16
{ :ok , state }
You can’t perform that action at this time.
0 commit comments