UNPKG

redis-smq

Version:

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

41 lines 1.82 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports._getMessageIds = _getMessageIds; const redis_smq_common_1 = require("redis-smq-common"); const redis_keys_js_1 = require("../../../common/redis/redis-keys/redis-keys.js"); const _get_pagination_parameters_js_1 = require("./_get-pagination-parameters.js"); function _getMessageIds(parsedParams, page, pageSize, redisKey, messageStorage, logger, cb) { logger.debug(`Getting message IDs for ${parsedParams.queueParams.name}, page ${page}, size ${pageSize}`); const keys = redis_keys_js_1.redisKeys.getQueueKeys(parsedParams.queueParams.ns, parsedParams.queueParams.name, parsedParams.groupId); const keyVal = keys[redisKey]; redis_smq_common_1.async.waterfall([ (next) => { messageStorage.count(keyVal, next); }, (totalItems, next) => { if (totalItems === 0) { return next(null, { totalItems, items: [] }); } const pageInfo = (0, _get_pagination_parameters_js_1._getPaginationParameters)(page, totalItems, pageSize); messageStorage.fetchItems(keyVal, { page: pageInfo.currentPage, pageSize: pageInfo.pageSize, offsetStart: pageInfo.offsetStart, offsetEnd: pageInfo.offsetEnd, }, (err, items) => { if (err) return next(err); next(null, { totalItems, items: items !== null && items !== void 0 ? items : [], }); }); }, ], (err, result) => { if (err) { logger.error(`Error in _getMessageIds: ${err.message}`); } cb(err, result); }); } //# sourceMappingURL=_get-message-ids.js.map