You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by kx...@apache.org on 2015/02/04 16:49:44 UTC
[3/4] couchdb-couch-event git commit: Update config_listener behaviuor
Update config_listener behaviuor
COUCHDB-2561
Project: http://git-wip-us.apache.org/repos/asf/couchdb-couch-event/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-couch-event/commit/71cd331d
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-couch-event/tree/71cd331d
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-couch-event/diff/71cd331d
Branch: refs/heads/master
Commit: 71cd331daf7a0568ff641a06543fa62cc4221fc4
Parents: 06477c2
Author: ILYA Khlopotov <ii...@ca.ibm.com>
Authored: Thu Jan 29 13:31:24 2015 -0800
Committer: ILYA Khlopotov <ii...@ca.ibm.com>
Committed: Wed Feb 4 06:06:34 2015 -0800
----------------------------------------------------------------------
src/couch_event_os_sup.erl | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-couch-event/blob/71cd331d/src/couch_event_os_sup.erl
----------------------------------------------------------------------
diff --git a/src/couch_event_os_sup.erl b/src/couch_event_os_sup.erl
index fa7e66d..2a1457b 100644
--- a/src/couch_event_os_sup.erl
+++ b/src/couch_event_os_sup.erl
@@ -29,7 +29,8 @@
]).
-export([
- handle_config_change/5
+ handle_config_change/5,
+ handle_config_terminate/3
]).
@@ -54,13 +55,17 @@ handle_config_change("update_notification", Id, deleted, _, _) ->
supervisor:delete_child(?MODULE, Id),
{ok, nil};
handle_config_change("update_notification", Id, Exe, _, _) when is_list(Exe) ->
- supervisor:terminate_child(?MODULE, Id),
- supervisor:delete_child(?MODULE, Id),
supervisor:start_child(?MODULE, child(Id, Exe)),
{ok, nil};
handle_config_change(_, _, _, _, _) ->
{ok, nil}.
+handle_config_terminate(_, _, _) ->
+ spawn(fun() ->
+ timer:sleep(5000),
+ config:listen_for_changes(?MODULE, nil)
+ end),
+ ok.
child(Id, Arg) ->
{