PageRenderTime 424ms CodeModel.GetById 181ms app.highlight 4ms RepoModel.GetById 238ms app.codeStats 0ms

/ucengine/src/core/uce_vhost_user_sup.erl

http://github.com/AF83/ucengine
Erlang | 41 lines | 15 code | 7 blank | 19 comment | 0 complexity | fb8b07d20fbc8cc6173bc1136c75b700 MD5 | raw file
 1%%
 2%%  U.C.Engine - Unified Collaboration Engine
 3%%  Copyright (C) 2011 af83
 4%%
 5%%  This program is free software: you can redistribute it and/or modify
 6%%  it under the terms of the GNU Affero General Public License as published by
 7%%  the Free Software Foundation, either version 3 of the License, or
 8%%  (at your option) any later version.
 9%%
10%%  This program is distributed in the hope that it will be useful,
11%%  but WITHOUT ANY WARRANTY; without even the implied warranty of
12%%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13%%  GNU Affero General Public License for more details.
14%%
15%%  You should have received a copy of the GNU Affero General Public License
16%%  along with this program.  If not, see <http://www.gnu.org/licenses/>.
17%%
18-module(uce_vhost_user_sup).
19
20-behaviour(supervisor).
21
22-include("uce.hrl").
23
24% External API
25-export([start_link/1, start_child/2, terminate_child/2]).
26% Supervisor API
27-export([init/1]).
28
29start_link(Domain) ->
30    supervisor:start_link({local, uce_vhost_sup:name(Domain, "user")}, ?MODULE, []).
31
32init([]) ->
33    {ok, {{simple_one_for_one, 0, 1},
34          [{uce_user, {uce_user, start_link, []},
35            temporary, brutal_kill, worker, [uce_user]}]}}.
36
37start_child(Domain, Args) ->
38    supervisor:start_child(uce_vhost_sup:name(Domain, "user"), Args).
39
40terminate_child(Domain, Pid) ->
41    supervisor:terminate_child(uce_vhost_sup:name(Domain, "user"), Pid).