diff options
Diffstat (limited to 'src/rabbit_restartable_sup.erl')
-rw-r--r-- | src/rabbit_restartable_sup.erl | 20 |
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]}]}}. |