Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
function RedisPubSub(options) {
if (!(this instanceof RedisPubSub)) return new RedisPubSub(options);
PubSub.call(this, options);
options || (options = {});
this.client = options.client || redis.createClient(options);
// Redis doesn't allow the same connection to both listen to channels and do
// operations. Make an extra redis connection for subscribing with the same
// options if not provided
this.observer = options.observer || redis.createClient(this.client.options);
var pubsub = this;
this.observer.on('message', function(channel, message) {
var data = JSON.parse(message);
pubsub._emit(channel, data);
});
}
module.exports = RedisPubSub;