[Groonga-commit] droonga/express-droonga at de679fb [master] Fire "member-change" unified event for any "member-*" event

Back to archive index

YUKI Hiroshi null+****@clear*****
Wed Nov 5 13:13:31 JST 2014


YUKI Hiroshi	2014-11-05 13:13:31 +0900 (Wed, 05 Nov 2014)

  New Revision: de679fbbf7522e04eaedc54086ef21d957af25d1
  https://github.com/droonga/express-droonga/commit/de679fbbf7522e04eaedc54086ef21d957af25d1

  Message:
    Fire "member-change" unified event for any "member-*" event

  Modified files:
    lib/serf/agent.js

  Modified: lib/serf/agent.js (+15 -3)
===================================================================
--- lib/serf/agent.js    2014-11-05 13:12:49 +0900 (12b5ec7)
+++ lib/serf/agent.js    2014-11-05 13:13:31 +0900 (b89dbbc)
@@ -129,18 +129,30 @@ Agent.prototype._handleOutput = function(output) {
   if (nodeName == this._nodeName)
     return;
 
+  var memberChanged = false;
   switch (eventName) {
     case 'EventMemberJoin':
-      return this.emit('member-join', nodeName);
+      memberChanged = true;
+      this.emit('member-join', nodeName);
+      break;
     case 'EventMemberLeave':
-      return this.emit('member-leave', nodeName);
+      memberChanged = true;
+      this.emit('member-leave', nodeName);
+      break;
     case 'EventMemberFailed':
-      return this.emit('member-failed', nodeName);
+      memberChanged = true;
+      this.emit('member-failed', nodeName);
+      break;
+    default:
+      break;
   }
+  if (memberChanged)
+    this.emit('member-change', nodeName);
 };
 
 Agent.prototype.shutdown = function() {
   this._logger.info('Shutting down Serf agent');
+  this.removeAllListeners();
   if (!this._agentProcess)
     return;
   try {
-------------- next part --------------
HTML����������������������������...
下載 



More information about the Groonga-commit mailing list
Back to archive index