[Groonga-commit] groonga/express-kotoumi [master] Define generic MsgPackReceiver and re-define Receiver as a sub class of MsgPackReceiver

Back to archive index

YUKI Hiroshi null+****@clear*****
Mon Jan 28 15:52:27 JST 2013


YUKI Hiroshi	2013-01-28 15:52:27 +0900 (Mon, 28 Jan 2013)

  New Revision: 5b58c961c3b6c53ad80235dae6d651550c1d6b5f
  https://github.com/groonga/express-kotoumi/commit/5b58c961c3b6c53ad80235dae6d651550c1d6b5f

  Log:
    Define generic MsgPackReceiver and re-define Receiver as a sub class of MsgPackReceiver

  Modified files:
    lib/backend/receiver.js

  Modified: lib/backend/receiver.js (+21 -8)
===================================================================
--- lib/backend/receiver.js    2013-01-28 15:40:14 +0900 (6ab9744)
+++ lib/backend/receiver.js    2013-01-28 15:52:27 +0900 (c5b2f81)
@@ -2,27 +2,27 @@ var net = require('net');
 var EventEmitter = require('events').EventEmitter;
 var msgpack = require('msgpack');
 
-function Receiver(port) {
+function MsgPackReceiver(port) {
   this.port = port || undefined;
   this._init();
 }
 
-Receiver.prototype = new EventEmitter();
+MsgPackReceiver.prototype = new EventEmitter();
 
-Receiver.prototype._init = function() {
+MsgPackReceiver.prototype._init = function() {
   this._server = net.createServer(this._onConnect.bind(this));
 };
 
-Receiver.prototype._onConnect = function(socket) {
+MsgPackReceiver.prototype._onConnect = function(socket) {
   var messageStream = new msgpack.Stream(socket);
   messageStream.on('msg', this._onMessageReceive.bind(this));
 };
 
-Receiver.prototype._onMessageReceive = function(message) {
-  this.emit(message.tag, message.data);
+MsgPackReceiver.prototype._onMessageReceive = function(data) {
+  this.emit('receive', data);
 };
 
-Receiver.prototype.listen = function(callback) {
+MsgPackReceiver.prototype.listen = function(callback) {
   if (this.port) {
     this._server.listen(this.port, callback);
   } else {
@@ -33,7 +33,7 @@ Receiver.prototype.listen = function(callback) {
   }
 };
 
-Receiver.prototype.close = function() {
+MsgPackReceiver.prototype.close = function() {
   if (this._server) {
     this._server.close();
     this._server = undefined;
@@ -41,4 +41,17 @@ Receiver.prototype.close = function() {
   this.port = undefined;
 };
 
+exports.MsgPackReceiver = MsgPackReceiver;
+
+
+function Receiver(port) {
+  MsgPackReceiver.apply(this, arguments);
+}
+
+Receiver.prototype = Object.create(MsgPackReceiver.prototype);
+
+Receiver.prototype._onMessageReceive = function(message) {
+  this.emit(message.tag, message.data);
+};
+
 exports.Receiver = Receiver;
-------------- next part --------------
HTML����������������������������...
Download 



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