diff --git a/javascript-nodejs/src/send.js b/javascript-nodejs/src/send.js index 3f839a5..fd3d353 100755 --- a/javascript-nodejs/src/send.js +++ b/javascript-nodejs/src/send.js @@ -3,17 +3,26 @@ var amqp = require('amqplib'); var when = require('when'); -amqp.connect('amqp://localhost').then(function(conn) { - return when(conn.createChannel().then(function(ch) { +var conn = amqp.connect('amqp://localhost'); +var ch = conn.then(createChannel).then(null, console.warn); - var q = 'hello'; - var ok = ch.assertQueue(q, {durable: false}); - - return ok.then(function(_qok) { - var msg = 'Hello World!'; - ch.sendToQueue(q, new Buffer(msg)); - console.log(" [x] Sent '%s'", msg); - return ch.close(); +function createChannel(conn) { + return when( + conn.createChannel(). + then(sendMessage)). + ensure(function() { + conn.close(); }); - })).ensure(function() { conn.close(); }); -}).then(null, console.warn); +} + +function sendMessage(ch) { + var q = 'hello'; + var ok = ch.assertQueue(q, {durable: false}); + + return ok.then(function(_ignore) { + var msg = 'Hello World!'; + ch.sendToQueue(q, new Buffer(msg)); + console.log(" [x] Sent '%s'", msg); + return ch.close(); + }); +}