UNPKG

ioredis-mock

Version:

This library emulates ioredis by performing all operations in-memory.

35 lines (28 loc) 1.03 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.psubscribe = psubscribe; var _emitMessage = require('../commands-utils/emitMessage'); var _emitMessage2 = _interopRequireDefault(_emitMessage); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function psubscribe() { var _this = this; for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } args.forEach(function (pattern) { if (_this.patternChannels.listenerCount(pattern) === 0) { _this.patternChannels.on(pattern, function (message, channel) { (0, _emitMessage2.default)(_this, channel, message); }); } else { // do not register another listener for existing channel pattern } }); var numberOfSubscribedChannels = this.patternChannels.eventNames().length; if (numberOfSubscribedChannels > 0) { this.subscriberMode = true; } return numberOfSubscribedChannels; }