diff --git a/lib/messages/builder.js b/lib/messages/builder.js index 01a3a18..cc25690 100644 --- a/lib/messages/builder.js +++ b/lib/messages/builder.js @@ -34,15 +34,32 @@ function builder(options) { commands: {} }; - var commandsArray = [ - 'version', 'verack', 'ping', 'pong', 'block', 'tx', 'getdata', 'headers', 'notfound', - 'inv', 'addr', 'alert', 'reject', 'merkleblock', 'filterload', 'filteradd', 'filterclear', - 'getblocks', 'getheaders', 'mempool', 'getaddr' - ]; + exported.commandsMap = { + version: 'Version', + verack: 'VerAck', + ping: 'Ping', + pong: 'Pong', + block: 'Block', + tx: 'Transaction', + getdata: 'GetData', + headers: 'Headers', + notfound: 'NotFound', + inv: 'Inventory', + addr: 'Address', + alert: 'Alert', + reject: 'Reject', + merkleblock: 'MerkleBlock', + filterload: 'FilterLoad', + filteradd: 'FilterAdd', + filterclear: 'FilterClear', + getblocks: 'GetBlocks', + getheaders: 'GetHeaders', + mempool: 'MemPool', + getaddr: 'GetAddr' + }; - for (var i = 0; i < commandsArray.length; i++) { - var command = commandsArray[i]; - exported.commands[command] = require('./commands/' + command)(options); + for (var key in exported.commandsMap) { + exported.commands[key] = require('./commands/' + key)(options); } return exported; diff --git a/lib/messages/index.js b/lib/messages/index.js index ed59af1..8369e99 100644 --- a/lib/messages/index.js +++ b/lib/messages/index.js @@ -6,6 +6,13 @@ var Hash = bitcore.crypto.Hash; function Messages(options) { this.builder = Messages.builder(options); + + // map message constructors by name + for(var key in this.builder.commandsMap) { + var name = this.builder.commandsMap[key]; + this[name] = this.builder.commands[key]; + } + if (!options) { options = {}; }