Add function restart_listener
This commit is contained in:
parent
ae36a8c8c2
commit
88797062a4
|
@ -27,7 +27,7 @@
|
||||||
%% Application callbacks
|
%% Application callbacks
|
||||||
-export([start/2, stop/1]).
|
-export([start/2, stop/1]).
|
||||||
|
|
||||||
-export([start_listener/1, stop_listener/1]).
|
-export([start_listener/1, stop_listener/1, restart_listener/1]).
|
||||||
|
|
||||||
-type(listener() :: {atom(), esockd:listen_on(), [esockd:option()]}).
|
-type(listener() :: {atom(), esockd:listen_on(), [esockd:option()]}).
|
||||||
|
|
||||||
|
@ -205,6 +205,21 @@ stop_listener({Proto, ListenOn, _Opts}) when Proto == api ->
|
||||||
stop_listener({Proto, ListenOn, _Opts}) ->
|
stop_listener({Proto, ListenOn, _Opts}) ->
|
||||||
esockd:close(Proto, ListenOn).
|
esockd:close(Proto, ListenOn).
|
||||||
|
|
||||||
|
%% @doc Restart Listeners
|
||||||
|
restart_listener({tcp, ListenOn, _Opts}) ->
|
||||||
|
esockd:reopen('mqtt:tcp', ListenOn);
|
||||||
|
restart_listener({ssl, ListenOn, _Opts}) ->
|
||||||
|
esockd:reopen('mqtt:ssl', ListenOn);
|
||||||
|
restart_listener({Proto, ListenOn, _Opts}) when Proto == http; Proto == ws ->
|
||||||
|
mochiweb:restart_http('mqtt:ws', ListenOn);
|
||||||
|
restart_listener({Proto, ListenOn, _Opts}) when Proto == https; Proto == wss ->
|
||||||
|
mochiweb:restart_http('mqtt:wss', ListenOn);
|
||||||
|
restart_listener({Proto, ListenOn, _Opts}) when Proto == api ->
|
||||||
|
mochiweb:restart_http('mqtt:api', ListenOn);
|
||||||
|
restart_listener({Proto, ListenOn, _Opts}) ->
|
||||||
|
esockd:reopen(Proto, ListenOn).
|
||||||
|
|
||||||
|
|
||||||
-ifdef(TEST).
|
-ifdef(TEST).
|
||||||
-include_lib("eunit/include/eunit.hrl").
|
-include_lib("eunit/include/eunit.hrl").
|
||||||
merge_sockopts_test_() ->
|
merge_sockopts_test_() ->
|
||||||
|
|
Loading…
Reference in New Issue