UNPKG

redis-smq

Version:

A high-performance, reliable, and scalable message queue for Node.js.

61 lines 3.09 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.QueueMessagesAbstract = void 0; const redis_smq_common_1 = require("redis-smq-common"); const configuration_js_1 = require("../config-manager/configuration.js"); const _parse_queue_extended_params_js_1 = require("../queue-manager/_/_parse-queue-extended-params.js"); const message_browser_factory_js_1 = require("./message-browser-factory.js"); class QueueMessagesAbstract { constructor() { this.logger = (0, redis_smq_common_1.createLogger)(configuration_js_1.Configuration.getConfig().logger, this.constructor.name); } withMessageBrowser(queue, operation, cb) { const parsedParams = (0, _parse_queue_extended_params_js_1._parseQueueExtendedParams)(queue); if (parsedParams instanceof Error) return cb(parsedParams); message_browser_factory_js_1.MessageBrowserFactory.createBrowserForQueue(parsedParams.queueParams, this.messageType, this.logger, (err, browser) => { if (err) return cb(err); if (!browser) return cb(new redis_smq_common_1.CallbackEmptyReplyError()); operation(browser, cb); }); } countMessages(queue, cb) { return redis_smq_common_1.async.withOptionalCallback(cb, (callback) => { this.withMessageBrowser(queue, (browser, done) => browser.countMessages(queue, done), callback); }); } getMessageIds(queue, page, pageSize, cb) { return redis_smq_common_1.async.withOptionalCallback(cb, (callback) => { this.withMessageBrowser(queue, (browser, done) => browser.getMessageIds(queue, page, pageSize, done), callback); }); } getMessages(queue, page, pageSize, cb) { return redis_smq_common_1.async.withOptionalCallback(cb, (callback) => { this.withMessageBrowser(queue, (browser, done) => browser.getMessages(queue, page, pageSize, done), callback); }); } purge(queue, cb) { return redis_smq_common_1.async.withOptionalCallback(cb, (callback) => { this.withMessageBrowser(queue, (browser, done) => browser.purge(queue, done), callback); }); } cancelPurge(queue, jobId, cb) { return redis_smq_common_1.async.withOptionalCallback(cb, (callback) => { this.withMessageBrowser(queue, (browser, done) => browser.cancelPurge(queue, jobId, done), callback); }); } getPurgeJob(queue, jobId, cb) { return redis_smq_common_1.async.withOptionalCallback(cb, (callback) => { this.withMessageBrowser(queue, (browser, done) => browser.getPurgeJob(queue, jobId, done), callback); }); } getPurgeJobStatus(queue, jobId, cb) { return redis_smq_common_1.async.withOptionalCallback(cb, (callback) => { this.withMessageBrowser(queue, (browser, done) => browser.getPurgeJobStatus(queue, jobId, done), callback); }); } } exports.QueueMessagesAbstract = QueueMessagesAbstract; //# sourceMappingURL=queue-messages-abstract.js.map