%%%------------------------------------------------------------------- %%% @author Heinz Nikolaus Gies %%% @copyright (C) 2013, Heinz Nikolaus Gies %%% @doc %%% %%% @end %%% Created : 20 May 2013 by Heinz Nikolaus Gies %%%------------------------------------------------------------------- -module(dhcp_fsm_sup). -behaviour(supervisor). %% API -export([start_link/0]). -ignore_xref([start_link/0]). %% Supervisor callbacks -export([init/1]). -define(SERVER, ?MODULE). -define(CHILD(I, Type), {I, {I, start_link, []}, temporary, 5000, Type, [I]}). %%%=================================================================== %%% API functions %%%=================================================================== %%-------------------------------------------------------------------- %% @doc %% Starts the supervisor %% %% @spec start_link() -> {ok, Pid} | ignore | {error, Error} %% @end %%-------------------------------------------------------------------- start_link() -> supervisor:start_link({local, ?SERVER}, ?MODULE, []). %%%=================================================================== %%% Supervisor callbacks %%%=================================================================== %%-------------------------------------------------------------------- %% @private %% @doc %% Whenever a supervisor is started using supervisor:start_link/[2,3], %% this function is called by the new process to find out about %% restart strategy, maximum restart frequency and child %% specifications. %% %% @spec init(Args) -> {ok, {SupFlags, [ChildSpec]}} | %% ignore | %% {error, Reason} %% @end %%-------------------------------------------------------------------- init([]) -> {ok, {{simple_one_for_one, 5, 10}, [?CHILD(dhcp_fsm, worker)]}}. %%%=================================================================== %%% Internal functions %%%===================================================================