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����������������������������...Download