summaryrefslogtreecommitdiff
path: root/src/rabbit_restartable_sup.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/rabbit_restartable_sup.erl')
-rw-r--r--src/rabbit_restartable_sup.erl20
1 files changed, 5 insertions, 15 deletions
diff --git a/src/rabbit_restartable_sup.erl b/src/rabbit_restartable_sup.erl
index bc6f40da..2813fd15 100644
--- a/src/rabbit_restartable_sup.erl
+++ b/src/rabbit_restartable_sup.erl
@@ -33,22 +33,12 @@
-behaviour(supervisor).
--export([start_link/0, start_child/1, start_child/2]).
+-export([start_link/2]).
-export([init/1]).
--define(SERVER, ?MODULE).
+start_link(Name, {_M, _F, _A} = Fun) ->
+ supervisor:start_link({local, Name}, ?MODULE, [Fun]).
-start_link() ->
- supervisor:start_link({local, ?SERVER}, ?MODULE, []).
-
-start_child(Mod) ->
- start_child(Mod, []).
-
-start_child(Mod, Args) ->
- {ok, _} = supervisor:start_child(?SERVER, {Mod, {Mod, start_link, Args},
- transient, 100, worker, [Mod]}),
- ok.
-
-init([]) ->
- {ok, {{one_for_one, 10, 10}, []}}.
+init([{Mod, _F, _A} = Fun]) ->
+ {ok, {{one_for_one, 10, 10}, [{Mod, Fun, transient, 100, worker, [Mod]}]}}.