YUKI Hiroshi
null+****@clear*****
Wed Feb 6 17:26:13 JST 2013
YUKI Hiroshi 2013-02-06 17:26:13 +0900 (Wed, 06 Feb 2013) New Revision: 9e2b3614f3ecb39553cd67eb94ddc38fc935a9e6 https://github.com/groonga/express-kotoumi/commit/9e2b3614f3ecb39553cd67eb94ddc38fc935a9e6 Log: Accept custom command name for REST API and response event type for Socket.IO API Modified files: lib/frontend/rest-adaptor.js lib/frontend/socket.io-adaptor.js Modified: lib/frontend/rest-adaptor.js (+1 -1) =================================================================== --- lib/frontend/rest-adaptor.js 2013-02-06 16:32:33 +0900 (741e3f1) +++ lib/frontend/rest-adaptor.js 2013-02-06 17:26:13 +0900 (a196f2f) @@ -77,7 +77,7 @@ exports.register = function(application, params) { var method = getRegisterationMethod(definition.method); var handler = createHandler({ connection: connection, - command: command, + command: definition.command || command, requestBuilder: definition.requestBuilder, responseBuilder: definition.responseBuilder }); Modified: lib/frontend/socket.io-adaptor.js (+9 -7) =================================================================== --- lib/frontend/socket.io-adaptor.js 2013-02-06 16:32:33 +0900 (b5b6e5e) +++ lib/frontend/socket.io-adaptor.js 2013-02-06 17:26:13 +0900 (b0785e0) @@ -39,20 +39,22 @@ exports.register = function(application, server, params) { function createBackendMessageHandler(socket) { return (function(envelope) { - var data; + var event = envelope.type; + var data; var resultTypeMatch = envelope.type.match(/^(.+)\.test$/); if (resultTypeMatch && unifiedCommandSet[resultTypeMatch[1]]) { - var responseBuilder = unifiedCommandSet[resultTypeMatch[1]] - .responseBuilder; - if (responseBuilder) - data = responseBuilder(envelope); + var command = unifiedCommandSet[resultTypeMatch[1]]; + if (command.responseBuilder) + data = command.responseBuilder(envelope); + if (command.responseEvent) + event = command.responseEvent; } if (!data) - data = sanitizeBackendMessage(envelope) + data = sanitizeBackendMessage(envelope); - socket.emit(envelope.type, data); + socket.emit(event, data); }); } -------------- next part -------------- HTML����������������������������...다운로드