redis-smq
Version:
A simple high-performance Redis message queue for Node.js.
56 lines • 2.61 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.AcknowledgedMessages = void 0;
const redis_keys_1 = require("../../../common/redis-keys/redis-keys");
const list_message_storage_1 = require("../message-storage/list-message-storage");
const queue_1 = require("../../queue-manager/queue");
class AcknowledgedMessages extends list_message_storage_1.ListMessageStorage {
list(queue, skip, take, cb) {
const queueParams = queue_1.Queue.getParams(this.config, queue);
const { keyQueueAcknowledged } = redis_keys_1.redisKeys.getQueueKeys(queueParams);
this.fetchMessages({ keyMessages: keyQueueAcknowledged }, skip, take, cb);
}
purge(queue, cb) {
const queueParams = queue_1.Queue.getParams(this.config, queue);
const { keyQueueAcknowledged } = redis_keys_1.redisKeys.getQueueKeys(queueParams);
this.purgeMessages({ keyMessages: keyQueueAcknowledged }, (err) => {
if (err)
cb(err);
else {
this.logger.info(`Acknowledged messages from queue (${JSON.stringify(queue)}) have been deleted`);
cb();
}
});
}
requeue(queue, messageId, sequenceId, cb) {
const queueParams = queue_1.Queue.getParams(this.config, queue);
const { keyQueueAcknowledged } = redis_keys_1.redisKeys.getQueueKeys(queueParams);
this.requeueMessage({ keyMessages: keyQueueAcknowledged }, { sequenceId, messageId }, (err) => {
if (err)
cb(err);
else {
this.logger.info(`Acknowledged message (ID ${messageId}) has been re-queued`);
cb();
}
});
}
delete(queue, messageId, sequenceId, cb) {
const queueParams = queue_1.Queue.getParams(this.config, queue);
const { keyQueueAcknowledged } = redis_keys_1.redisKeys.getQueueKeys(queueParams);
this.deleteMessage({ keyMessages: keyQueueAcknowledged }, { messageId, sequenceId }, (err) => {
if (err)
cb(err);
else {
this.logger.info(`Acknowledged message (ID ${messageId}) has been deleted`);
cb();
}
});
}
count(queue, cb) {
const queueParams = queue_1.Queue.getParams(this.config, queue);
const { keyQueueAcknowledged } = redis_keys_1.redisKeys.getQueueKeys(queueParams);
this.countMessages({ keyMessages: keyQueueAcknowledged }, cb);
}
}
exports.AcknowledgedMessages = AcknowledgedMessages;
//# sourceMappingURL=acknowledged-messages.js.map
;