PageRenderTime 40ms CodeModel.GetById 16ms RepoModel.GetById 0ms app.codeStats 1ms

/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. -behaviour(supervisor).
  20. -include("uce.hrl").
  21. % External API
  22. -export([start_link/1, start_child/2, terminate_child/2]).
  23. % Supervisor API
  24. -export([init/1]).
  25. start_link(Domain) ->
  26. supervisor:start_link({local, uce_vhost_sup:name(Domain, "user")}, ?MODULE, []).
  27. init([]) ->
  28. {ok, {{simple_one_for_one, 0, 1},
  29. [{uce_user, {uce_user, start_link, []},
  30. temporary, brutal_kill, worker, [uce_user]}]}}.
  31. start_child(Domain, Args) ->
  32. supervisor:start_child(uce_vhost_sup:name(Domain, "user"), Args).
  33. terminate_child(Domain, Pid) ->
  34. supervisor:terminate_child(uce_vhost_sup:name(Domain, "user"), Pid).