rabbitmq-eventemitter
Advanced tools
Comparing version 1.2.0 to 1.3.0
28
index.js
@@ -68,6 +68,12 @@ var util = require('util'); | ||
this._exchangeOptions = extend({ | ||
durable: true, | ||
autoDelete: false | ||
}, options.exchangeOptions); | ||
this._queueOptions = extend({ | ||
namespace: namespace || rs.generate(16), | ||
durable: !!namespace, | ||
autoDelete: !namespace | ||
autoDelete: !namespace, | ||
expires: QUEUE_TTL | ||
}, options.queueOptions); | ||
@@ -108,7 +114,11 @@ }; | ||
Queue.prototype.pull = function(pattern, listener, callback) { | ||
Queue.prototype.pull = function(pattern, listener, options, callback) { | ||
if(!callback && typeof options === 'function') { | ||
callback = options; | ||
options = null; | ||
} | ||
var self = this; | ||
var queueName = this._queueName(pattern); | ||
var queueOptions = this._queueOptions; | ||
options = options || {}; | ||
callback = callback || function(err) { | ||
@@ -118,2 +128,6 @@ if(err) self._onerror(err); | ||
var queueName = this._queueName(pattern); | ||
var exchangeOptions = this._exchangeOptions; | ||
var queueOptions = extend(this._queueOptions, options.queueOptions); | ||
this._getConsumeChannel(function(err, channel) { | ||
@@ -139,4 +153,4 @@ if(err) return callback(err); | ||
channel.assertExchange(self._exchangeName, 'direct', { | ||
durable: true, | ||
autoDelete: false | ||
durable: exchangeOptions.durable, | ||
autoDelete: exchangeOptions.autoDelete | ||
}, next()); | ||
@@ -147,3 +161,3 @@ | ||
autoDelete: queueOptions.autoDelete, | ||
arguments: { 'x-expires': QUEUE_TTL } | ||
arguments: { 'x-expires': queueOptions.expires } | ||
}, next()); | ||
@@ -150,0 +164,0 @@ |
{ | ||
"name": "rabbitmq-eventemitter", | ||
"version": "1.2.0", | ||
"version": "1.3.0", | ||
"description": "Simplified rabbitmq events", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
8936
174