-module(simple_sup).
-behaviour(supervisor).

%% API
-export([start_link/0]).

%% Supervisor callbacks
-export([init/1]).

%% Helper macro for declaring children of supervisor
-define(CHILD(I, Type), {I, {I, start_link, []}, permanent, 5000, Type, [I]}).

%% ===================================================================
%% API functions
%% ===================================================================

start_link() ->
    supervisor:start_link({local, ?MODULE}, ?MODULE, []).

%% ===================================================================
%% Supervisor callbacks
%% ===================================================================

init(_Args) -> 
  Simple = {simple, {simple, start_link,[]}, permanent, 2000, worker, [simple]},
  {ok, {{one_for_all, 0, 1}, [Simple]}}.

 API
 Supervisor callbacks
 Helper macro for declaring children of supervisor
 ===================================================================
 API functions
 ===================================================================
 ===================================================================
 Supervisor callbacks
 ===================================================================
-module(simple_sup).
-behaviour(supervisor).

-export([start_link/0]).

-export([init/1]).

-define(CHILD(I, Type), {I, {I, start_link, []}, permanent, 5000, Type, [I]}).


start_link() ->
    supervisor:start_link({local, ?MODULE}, ?MODULE, []).


init(_Args) -> 
  Simple = {simple, {simple, start_link,[]}, permanent, 2000, worker, [simple]},
  {ok, {{one_for_all, 0, 1}, [Simple]}}.
