redis-smq 8.1.0 → 8.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/dist/cjs/src/common/types/event.d.ts +3 -3
- package/dist/cjs/src/common/types/event.d.ts.map +1 -1
- package/dist/cjs/src/lib/consumer/consumer/_/_get-consumer-queues.d.ts +4 -0
- package/dist/cjs/src/lib/consumer/consumer/_/_get-consumer-queues.d.ts.map +1 -0
- package/dist/cjs/src/lib/consumer/consumer/_/_get-consumer-queues.js +14 -0
- package/dist/cjs/src/lib/consumer/consumer/_/_get-consumer-queues.js.map +1 -0
- package/dist/cjs/src/lib/consumer/consumer/consumer.d.ts.map +1 -1
- package/dist/cjs/src/lib/consumer/consumer/consumer.js +155 -29
- package/dist/cjs/src/lib/consumer/consumer/consumer.js.map +1 -1
- package/dist/cjs/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.d.ts +1 -1
- package/dist/cjs/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.d.ts.map +1 -1
- package/dist/cjs/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.js +47 -9
- package/dist/cjs/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.js.map +1 -1
- package/dist/cjs/src/lib/consumer/message-handler/index.d.ts +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/index.d.ts.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/index.js +2 -0
- package/dist/cjs/src/lib/consumer/message-handler/index.js.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/{consume-message → message-handler/consume-message}/consume-message.d.ts +13 -10
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/consume-message.d.ts.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/consume-message.js +322 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/consume-message.js.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/{consume-message → message-handler/consume-message}/event-bus-publisher.d.ts +1 -1
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/event-bus-publisher.d.ts.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/event-bus-publisher.js.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.d.ts +20 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.d.ts.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.js +185 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.js.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.d.ts +9 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.d.ts.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.js +32 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.js.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/index.d.ts +2 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/index.d.ts.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/{processing-queue → message-handler/consume-message}/types/index.js +1 -1
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/index.js.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.d.ts +26 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.d.ts.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.js +25 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.js.map +1 -0
- package/dist/{esm/src/lib/consumer → cjs/src/lib/consumer/message-handler}/message-handler/dequeue-message/dequeue-message.d.ts +6 -6
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/dequeue-message/dequeue-message.d.ts.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/dequeue-message/dequeue-message.js +420 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/dequeue-message/dequeue-message.js.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/{dequeue-message → message-handler/dequeue-message}/event-bus-publisher.d.ts +1 -1
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/dequeue-message/event-bus-publisher.d.ts.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/dequeue-message/event-bus-publisher.js.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/message-handler.d.ts +3 -4
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/message-handler.d.ts.map +1 -1
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/message-handler.js +168 -55
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/message-handler.js.map +1 -1
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.d.ts +13 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.d.ts.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.js +29 -0
- package/dist/cjs/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.js.map +1 -0
- package/dist/cjs/src/lib/consumer/message-handler-runner/message-handler-runner.d.ts +1 -1
- package/dist/cjs/src/lib/consumer/message-handler-runner/message-handler-runner.d.ts.map +1 -1
- package/dist/cjs/src/lib/consumer/message-handler-runner/message-handler-runner.js +84 -49
- package/dist/cjs/src/lib/consumer/message-handler-runner/message-handler-runner.js.map +1 -1
- package/dist/cjs/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.d.ts +5 -4
- package/dist/cjs/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.d.ts.map +1 -1
- package/dist/cjs/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.js +52 -17
- package/dist/cjs/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.js.map +1 -1
- package/dist/cjs/src/lib/consumer/types/index.d.ts +1 -1
- package/dist/cjs/src/lib/consumer/types/index.d.ts.map +1 -1
- package/dist/cjs/src/lib/consumer/types/index.js +1 -1
- package/dist/cjs/src/lib/consumer/types/index.js.map +1 -1
- package/dist/cjs/src/lib/consumer/workers/delay-unacknowledged.worker.d.ts.map +1 -1
- package/dist/cjs/src/lib/consumer/workers/delay-unacknowledged.worker.js +40 -9
- package/dist/cjs/src/lib/consumer/workers/delay-unacknowledged.worker.js.map +1 -1
- package/dist/cjs/src/lib/consumer/workers/publish-scheduled.worker.d.ts.map +1 -1
- package/dist/cjs/src/lib/consumer/workers/publish-scheduled.worker.js +126 -68
- package/dist/cjs/src/lib/consumer/workers/publish-scheduled.worker.js.map +1 -1
- package/dist/cjs/src/lib/consumer/workers/requeue-unacknowledged.worker.d.ts.map +1 -1
- package/dist/cjs/src/lib/consumer/workers/requeue-unacknowledged.worker.js +43 -9
- package/dist/cjs/src/lib/consumer/workers/requeue-unacknowledged.worker.js.map +1 -1
- package/dist/cjs/src/lib/consumer/workers/watch-consumers.worker.d.ts +3 -0
- package/dist/cjs/src/lib/consumer/workers/watch-consumers.worker.d.ts.map +1 -1
- package/dist/cjs/src/lib/consumer/workers/watch-consumers.worker.js +47 -11
- package/dist/cjs/src/lib/consumer/workers/watch-consumers.worker.js.map +1 -1
- package/dist/cjs/src/lib/consumer/workers/worker.d.ts.map +1 -1
- package/dist/cjs/src/lib/consumer/workers/worker.js +22 -5
- package/dist/cjs/src/lib/consumer/workers/worker.js.map +1 -1
- package/dist/cjs/src/lib/consumer-groups/consumer-groups.d.ts +2 -2
- package/dist/cjs/src/lib/consumer-groups/consumer-groups.d.ts.map +1 -1
- package/dist/cjs/src/lib/consumer-groups/consumer-groups.js +159 -48
- package/dist/cjs/src/lib/consumer-groups/consumer-groups.js.map +1 -1
- package/dist/cjs/src/lib/exchange/exchange-abstract.js +1 -1
- package/dist/cjs/src/lib/exchange/exchange-abstract.js.map +1 -1
- package/dist/cjs/src/lib/exchange/exchange-fan-out/exchange-fan-out.d.ts +1 -0
- package/dist/cjs/src/lib/exchange/exchange-fan-out/exchange-fan-out.d.ts.map +1 -1
- package/dist/cjs/src/lib/exchange/exchange-fan-out/exchange-fan-out.js +331 -164
- package/dist/cjs/src/lib/exchange/exchange-fan-out/exchange-fan-out.js.map +1 -1
- package/dist/cjs/src/lib/exchange/exchange-topic/exchange-topic.d.ts +1 -0
- package/dist/cjs/src/lib/exchange/exchange-topic/exchange-topic.d.ts.map +1 -1
- package/dist/cjs/src/lib/exchange/exchange-topic/exchange-topic.js +36 -5
- package/dist/cjs/src/lib/exchange/exchange-topic/exchange-topic.js.map +1 -1
- package/dist/cjs/src/lib/message/message.d.ts.map +1 -1
- package/dist/cjs/src/lib/message/message.js +174 -30
- package/dist/cjs/src/lib/message/message.js.map +1 -1
- package/dist/cjs/src/lib/namespace/namespace.d.ts.map +1 -1
- package/dist/cjs/src/lib/namespace/namespace.js +156 -22
- package/dist/cjs/src/lib/namespace/namespace.js.map +1 -1
- package/dist/cjs/src/lib/producer/producer.d.ts.map +1 -1
- package/dist/cjs/src/lib/producer/producer.js +125 -30
- package/dist/cjs/src/lib/producer/producer.js.map +1 -1
- package/dist/cjs/src/lib/producer/queue-consumer-groups-cache.d.ts +1 -1
- package/dist/cjs/src/lib/producer/queue-consumer-groups-cache.d.ts.map +1 -1
- package/dist/cjs/src/lib/producer/queue-consumer-groups-cache.js +117 -25
- package/dist/cjs/src/lib/producer/queue-consumer-groups-cache.js.map +1 -1
- package/dist/cjs/src/lib/queue/_/_delete-queue.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue/_/_delete-queue.js +4 -4
- package/dist/cjs/src/lib/queue/_/_delete-queue.js.map +1 -1
- package/dist/cjs/src/lib/queue/_/_get-queue-consumer-ids.d.ts +4 -0
- package/dist/cjs/src/lib/queue/_/_get-queue-consumer-ids.d.ts.map +1 -0
- package/dist/cjs/src/lib/queue/_/_get-queue-consumer-ids.js +9 -0
- package/dist/cjs/src/lib/queue/_/_get-queue-consumer-ids.js.map +1 -0
- package/dist/cjs/src/lib/queue/_/_get-queue-consumers.d.ts +4 -0
- package/dist/cjs/src/lib/queue/_/_get-queue-consumers.d.ts.map +1 -0
- package/dist/cjs/src/lib/queue/_/_get-queue-consumers.js +19 -0
- package/dist/cjs/src/lib/queue/_/_get-queue-consumers.js.map +1 -0
- package/dist/cjs/src/lib/queue/queue.d.ts +3 -1
- package/dist/cjs/src/lib/queue/queue.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue/queue.js +270 -45
- package/dist/cjs/src/lib/queue/queue.js.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.js +1 -0
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.js.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.js +1 -0
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.js.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-messages.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-messages.js +1 -0
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-messages.js.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.js +1 -0
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.js.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/queue-pending-messages.d.ts +1 -0
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/queue-pending-messages.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/queue-pending-messages.js +6 -3
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/queue-pending-messages.js.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.js +1 -0
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.js.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-scheduled-messages.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-scheduled-messages.js +2 -0
- package/dist/cjs/src/lib/queue-messages/queue-messages/queue-scheduled-messages.js.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.d.ts +1 -0
- package/dist/cjs/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.js +113 -26
- package/dist/cjs/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.js.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.d.ts +2 -0
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.js +67 -15
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.js.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.d.ts +2 -0
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.js +87 -33
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.js.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.d.ts +2 -0
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.js +79 -14
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.js.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.d.ts +2 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.js +3 -0
- package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.js.map +1 -1
- package/dist/cjs/src/lib/queue-rate-limit/queue-rate-limit.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue-rate-limit/queue-rate-limit.js +160 -81
- package/dist/cjs/src/lib/queue-rate-limit/queue-rate-limit.js.map +1 -1
- package/dist/esm/src/common/types/event.d.ts +3 -3
- package/dist/esm/src/common/types/event.d.ts.map +1 -1
- package/dist/esm/src/lib/consumer/consumer/_/_get-consumer-queues.d.ts +4 -0
- package/dist/esm/src/lib/consumer/consumer/_/_get-consumer-queues.d.ts.map +1 -0
- package/dist/esm/src/lib/consumer/consumer/_/_get-consumer-queues.js +11 -0
- package/dist/esm/src/lib/consumer/consumer/_/_get-consumer-queues.js.map +1 -0
- package/dist/esm/src/lib/consumer/consumer/consumer.d.ts.map +1 -1
- package/dist/esm/src/lib/consumer/consumer/consumer.js +154 -29
- package/dist/esm/src/lib/consumer/consumer/consumer.js.map +1 -1
- package/dist/esm/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.d.ts +1 -1
- package/dist/esm/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.d.ts.map +1 -1
- package/dist/esm/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.js +48 -10
- package/dist/esm/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.js.map +1 -1
- package/dist/esm/src/lib/consumer/message-handler/index.d.ts +2 -0
- package/dist/esm/src/lib/consumer/message-handler/index.d.ts.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/index.js +2 -0
- package/dist/esm/src/lib/consumer/message-handler/index.js.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/{consume-message → message-handler/consume-message}/consume-message.d.ts +13 -10
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/consume-message.d.ts.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/consume-message.js +324 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/consume-message.js.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/{consume-message → message-handler/consume-message}/event-bus-publisher.d.ts +1 -1
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/event-bus-publisher.d.ts.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/event-bus-publisher.js.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.d.ts +20 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.d.ts.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.js +183 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.js.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.d.ts +9 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.d.ts.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.js +29 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.js.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/index.d.ts +2 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/index.d.ts.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/index.js +2 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/index.js.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.d.ts +26 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.d.ts.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.js +22 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.js.map +1 -0
- package/dist/{cjs/src/lib/consumer → esm/src/lib/consumer/message-handler}/message-handler/dequeue-message/dequeue-message.d.ts +6 -6
- package/dist/esm/src/lib/consumer/message-handler/message-handler/dequeue-message/dequeue-message.d.ts.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/dequeue-message/dequeue-message.js +396 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/dequeue-message/dequeue-message.js.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/{dequeue-message → message-handler/dequeue-message}/event-bus-publisher.d.ts +1 -1
- package/dist/esm/src/lib/consumer/message-handler/message-handler/dequeue-message/event-bus-publisher.d.ts.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/dequeue-message/event-bus-publisher.js.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/message-handler.d.ts +3 -4
- package/dist/esm/src/lib/consumer/message-handler/message-handler/message-handler.d.ts.map +1 -1
- package/dist/esm/src/lib/consumer/message-handler/message-handler/message-handler.js +169 -56
- package/dist/esm/src/lib/consumer/message-handler/message-handler/message-handler.js.map +1 -1
- package/dist/esm/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.d.ts +13 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.d.ts.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.js +26 -0
- package/dist/esm/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.js.map +1 -0
- package/dist/esm/src/lib/consumer/message-handler-runner/message-handler-runner.d.ts +1 -1
- package/dist/esm/src/lib/consumer/message-handler-runner/message-handler-runner.d.ts.map +1 -1
- package/dist/esm/src/lib/consumer/message-handler-runner/message-handler-runner.js +84 -49
- package/dist/esm/src/lib/consumer/message-handler-runner/message-handler-runner.js.map +1 -1
- package/dist/esm/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.d.ts +5 -4
- package/dist/esm/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.d.ts.map +1 -1
- package/dist/esm/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.js +51 -17
- package/dist/esm/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.js.map +1 -1
- package/dist/esm/src/lib/consumer/types/index.d.ts +1 -1
- package/dist/esm/src/lib/consumer/types/index.d.ts.map +1 -1
- package/dist/esm/src/lib/consumer/types/index.js +1 -1
- package/dist/esm/src/lib/consumer/types/index.js.map +1 -1
- package/dist/esm/src/lib/consumer/workers/delay-unacknowledged.worker.d.ts.map +1 -1
- package/dist/esm/src/lib/consumer/workers/delay-unacknowledged.worker.js +40 -9
- package/dist/esm/src/lib/consumer/workers/delay-unacknowledged.worker.js.map +1 -1
- package/dist/esm/src/lib/consumer/workers/publish-scheduled.worker.d.ts.map +1 -1
- package/dist/esm/src/lib/consumer/workers/publish-scheduled.worker.js +125 -67
- package/dist/esm/src/lib/consumer/workers/publish-scheduled.worker.js.map +1 -1
- package/dist/esm/src/lib/consumer/workers/requeue-unacknowledged.worker.d.ts.map +1 -1
- package/dist/esm/src/lib/consumer/workers/requeue-unacknowledged.worker.js +43 -9
- package/dist/esm/src/lib/consumer/workers/requeue-unacknowledged.worker.js.map +1 -1
- package/dist/esm/src/lib/consumer/workers/watch-consumers.worker.d.ts +3 -0
- package/dist/esm/src/lib/consumer/workers/watch-consumers.worker.d.ts.map +1 -1
- package/dist/esm/src/lib/consumer/workers/watch-consumers.worker.js +50 -10
- package/dist/esm/src/lib/consumer/workers/watch-consumers.worker.js.map +1 -1
- package/dist/esm/src/lib/consumer/workers/worker.d.ts.map +1 -1
- package/dist/esm/src/lib/consumer/workers/worker.js +22 -5
- package/dist/esm/src/lib/consumer/workers/worker.js.map +1 -1
- package/dist/esm/src/lib/consumer-groups/consumer-groups.d.ts +2 -2
- package/dist/esm/src/lib/consumer-groups/consumer-groups.d.ts.map +1 -1
- package/dist/esm/src/lib/consumer-groups/consumer-groups.js +159 -48
- package/dist/esm/src/lib/consumer-groups/consumer-groups.js.map +1 -1
- package/dist/esm/src/lib/exchange/exchange-abstract.js +1 -1
- package/dist/esm/src/lib/exchange/exchange-abstract.js.map +1 -1
- package/dist/esm/src/lib/exchange/exchange-fan-out/exchange-fan-out.d.ts +1 -0
- package/dist/esm/src/lib/exchange/exchange-fan-out/exchange-fan-out.d.ts.map +1 -1
- package/dist/esm/src/lib/exchange/exchange-fan-out/exchange-fan-out.js +331 -164
- package/dist/esm/src/lib/exchange/exchange-fan-out/exchange-fan-out.js.map +1 -1
- package/dist/esm/src/lib/exchange/exchange-topic/exchange-topic.d.ts +1 -0
- package/dist/esm/src/lib/exchange/exchange-topic/exchange-topic.d.ts.map +1 -1
- package/dist/esm/src/lib/exchange/exchange-topic/exchange-topic.js +36 -5
- package/dist/esm/src/lib/exchange/exchange-topic/exchange-topic.js.map +1 -1
- package/dist/esm/src/lib/message/message.d.ts.map +1 -1
- package/dist/esm/src/lib/message/message.js +174 -30
- package/dist/esm/src/lib/message/message.js.map +1 -1
- package/dist/esm/src/lib/namespace/namespace.d.ts.map +1 -1
- package/dist/esm/src/lib/namespace/namespace.js +156 -22
- package/dist/esm/src/lib/namespace/namespace.js.map +1 -1
- package/dist/esm/src/lib/producer/producer.d.ts.map +1 -1
- package/dist/esm/src/lib/producer/producer.js +125 -29
- package/dist/esm/src/lib/producer/producer.js.map +1 -1
- package/dist/esm/src/lib/producer/queue-consumer-groups-cache.d.ts +1 -1
- package/dist/esm/src/lib/producer/queue-consumer-groups-cache.d.ts.map +1 -1
- package/dist/esm/src/lib/producer/queue-consumer-groups-cache.js +115 -23
- package/dist/esm/src/lib/producer/queue-consumer-groups-cache.js.map +1 -1
- package/dist/esm/src/lib/queue/_/_delete-queue.d.ts.map +1 -1
- package/dist/esm/src/lib/queue/_/_delete-queue.js +4 -4
- package/dist/esm/src/lib/queue/_/_delete-queue.js.map +1 -1
- package/dist/esm/src/lib/queue/_/_get-queue-consumer-ids.d.ts +4 -0
- package/dist/esm/src/lib/queue/_/_get-queue-consumer-ids.d.ts.map +1 -0
- package/dist/esm/src/lib/queue/_/_get-queue-consumer-ids.js +6 -0
- package/dist/esm/src/lib/queue/_/_get-queue-consumer-ids.js.map +1 -0
- package/dist/esm/src/lib/queue/_/_get-queue-consumers.d.ts +4 -0
- package/dist/esm/src/lib/queue/_/_get-queue-consumers.d.ts.map +1 -0
- package/dist/esm/src/lib/queue/_/_get-queue-consumers.js +16 -0
- package/dist/esm/src/lib/queue/_/_get-queue-consumers.js.map +1 -0
- package/dist/esm/src/lib/queue/queue.d.ts +3 -1
- package/dist/esm/src/lib/queue/queue.d.ts.map +1 -1
- package/dist/esm/src/lib/queue/queue.js +271 -46
- package/dist/esm/src/lib/queue/queue.js.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.d.ts.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.js +1 -0
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.js.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.d.ts.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.js +1 -0
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.js.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-messages.d.ts.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-messages.js +1 -0
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-messages.js.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.d.ts.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.js +1 -0
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.js.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/queue-pending-messages.d.ts +1 -0
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/queue-pending-messages.d.ts.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/queue-pending-messages.js +6 -2
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/queue-pending-messages.js.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.d.ts.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.js +1 -0
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.js.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-scheduled-messages.d.ts.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-scheduled-messages.js +2 -0
- package/dist/esm/src/lib/queue-messages/queue-messages/queue-scheduled-messages.js.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.d.ts +1 -0
- package/dist/esm/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.d.ts.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.js +115 -27
- package/dist/esm/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.js.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.d.ts +2 -0
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.d.ts.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.js +67 -15
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.js.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.d.ts +2 -0
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.d.ts.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.js +87 -33
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.js.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.d.ts +2 -0
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.d.ts.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.js +79 -14
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.js.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.d.ts +2 -1
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.d.ts.map +1 -1
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.js +4 -0
- package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.js.map +1 -1
- package/dist/esm/src/lib/queue-rate-limit/queue-rate-limit.d.ts.map +1 -1
- package/dist/esm/src/lib/queue-rate-limit/queue-rate-limit.js +160 -81
- package/dist/esm/src/lib/queue-rate-limit/queue-rate-limit.js.map +1 -1
- package/package.json +2 -2
- package/dist/cjs/src/lib/consumer/consumer-queues.d.ts +0 -8
- package/dist/cjs/src/lib/consumer/consumer-queues.d.ts.map +0 -1
- package/dist/cjs/src/lib/consumer/consumer-queues.js +0 -36
- package/dist/cjs/src/lib/consumer/consumer-queues.js.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/consume-message/consume-message.d.ts.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/consume-message/consume-message.js +0 -181
- package/dist/cjs/src/lib/consumer/message-handler/consume-message/consume-message.js.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/consume-message/event-bus-publisher.d.ts.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/consume-message/event-bus-publisher.js.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/dequeue-message/dequeue-message.d.ts.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/dequeue-message/dequeue-message.js +0 -282
- package/dist/cjs/src/lib/consumer/message-handler/dequeue-message/dequeue-message.js.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/dequeue-message/event-bus-publisher.d.ts.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/dequeue-message/event-bus-publisher.js.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/multiplexed-message-handler.d.ts +0 -14
- package/dist/cjs/src/lib/consumer/message-handler/multiplexed-message-handler.d.ts.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/multiplexed-message-handler.js +0 -21
- package/dist/cjs/src/lib/consumer/message-handler/multiplexed-message-handler.js.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/processing-queue/processing-queue.d.ts +0 -10
- package/dist/cjs/src/lib/consumer/message-handler/processing-queue/processing-queue.d.ts.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/processing-queue/processing-queue.js +0 -146
- package/dist/cjs/src/lib/consumer/message-handler/processing-queue/processing-queue.js.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/index.d.ts +0 -2
- package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/index.d.ts.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/index.js.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/processing-queue.d.ts +0 -26
- package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/processing-queue.d.ts.map +0 -1
- package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/processing-queue.js +0 -25
- package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/processing-queue.js.map +0 -1
- package/dist/esm/src/lib/consumer/consumer-queues.d.ts +0 -8
- package/dist/esm/src/lib/consumer/consumer-queues.d.ts.map +0 -1
- package/dist/esm/src/lib/consumer/consumer-queues.js +0 -33
- package/dist/esm/src/lib/consumer/consumer-queues.js.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/consume-message/consume-message.d.ts.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/consume-message/consume-message.js +0 -182
- package/dist/esm/src/lib/consumer/message-handler/consume-message/consume-message.js.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/consume-message/event-bus-publisher.d.ts.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/consume-message/event-bus-publisher.js.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/dequeue-message/dequeue-message.d.ts.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/dequeue-message/dequeue-message.js +0 -258
- package/dist/esm/src/lib/consumer/message-handler/dequeue-message/dequeue-message.js.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/dequeue-message/event-bus-publisher.d.ts.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/dequeue-message/event-bus-publisher.js.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/multiplexed-message-handler.d.ts +0 -14
- package/dist/esm/src/lib/consumer/message-handler/multiplexed-message-handler.d.ts.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/multiplexed-message-handler.js +0 -18
- package/dist/esm/src/lib/consumer/message-handler/multiplexed-message-handler.js.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/processing-queue/processing-queue.d.ts +0 -10
- package/dist/esm/src/lib/consumer/message-handler/processing-queue/processing-queue.d.ts.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/processing-queue/processing-queue.js +0 -143
- package/dist/esm/src/lib/consumer/message-handler/processing-queue/processing-queue.js.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/index.d.ts +0 -2
- package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/index.d.ts.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/index.js +0 -2
- package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/index.js.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/processing-queue.d.ts +0 -26
- package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/processing-queue.d.ts.map +0 -1
- package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/processing-queue.js +0 -22
- package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/processing-queue.js.map +0 -1
- /package/dist/cjs/src/lib/consumer/message-handler/{consume-message → message-handler/consume-message}/event-bus-publisher.js +0 -0
- /package/dist/cjs/src/lib/consumer/message-handler/{dequeue-message → message-handler/dequeue-message}/event-bus-publisher.js +0 -0
- /package/dist/esm/src/lib/consumer/message-handler/{consume-message → message-handler/consume-message}/event-bus-publisher.js +0 -0
- /package/dist/esm/src/lib/consumer/message-handler/{dequeue-message → message-handler/dequeue-message}/event-bus-publisher.js +0 -0
|
@@ -2,134 +2,169 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MessageHandlerRunner = void 0;
|
|
4
4
|
const redis_smq_common_1 = require("redis-smq-common");
|
|
5
|
-
const index_js_1 = require("
|
|
5
|
+
const index_js_1 = require("../../../config/index.js");
|
|
6
|
+
const index_js_2 = require("../errors/index.js");
|
|
6
7
|
const message_handler_js_1 = require("../message-handler/message-handler/message-handler.js");
|
|
7
8
|
const event_bus_publisher_js_1 = require("./event-bus-publisher.js");
|
|
8
9
|
class MessageHandlerRunner extends redis_smq_common_1.Runnable {
|
|
9
|
-
constructor(consumer, redisClient,
|
|
10
|
+
constructor(consumer, redisClient, eventBus) {
|
|
10
11
|
super();
|
|
11
12
|
this.messageHandlerInstances = [];
|
|
12
13
|
this.messageHandlers = [];
|
|
13
14
|
this.runMessageHandlers = (cb) => {
|
|
15
|
+
const handlerCount = this.messageHandlers.length;
|
|
16
|
+
this.logger.info(`Starting ${handlerCount} message handler(s)`);
|
|
17
|
+
if (handlerCount === 0)
|
|
18
|
+
return cb();
|
|
14
19
|
redis_smq_common_1.async.each(this.messageHandlers, (handlerParams, _, done) => {
|
|
15
20
|
this.runMessageHandler(handlerParams, done);
|
|
16
|
-
},
|
|
21
|
+
}, (err) => {
|
|
22
|
+
if (err) {
|
|
23
|
+
this.logger.error(`Error starting message handlers: ${err.message}`);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
this.logger.info(`All message handlers started`);
|
|
27
|
+
}
|
|
28
|
+
cb(err);
|
|
29
|
+
});
|
|
17
30
|
};
|
|
18
31
|
this.shutDownMessageHandlers = (cb) => {
|
|
19
|
-
|
|
20
|
-
|
|
32
|
+
const handlerCount = this.messageHandlerInstances.length;
|
|
33
|
+
this.logger.info(`Shutting down ${handlerCount} message handler(s)`);
|
|
34
|
+
if (handlerCount === 0)
|
|
35
|
+
return cb();
|
|
36
|
+
redis_smq_common_1.async.each(this.messageHandlerInstances, (handler, _, done) => {
|
|
37
|
+
this.shutdownMessageHandler(handler, done);
|
|
21
38
|
}, () => {
|
|
22
39
|
this.messageHandlerInstances = [];
|
|
40
|
+
this.logger.info('All message handlers have been shut down');
|
|
23
41
|
cb();
|
|
24
42
|
});
|
|
25
43
|
};
|
|
26
44
|
this.consumer = consumer;
|
|
27
45
|
this.redisClient = redisClient;
|
|
28
|
-
this.logger = logger;
|
|
46
|
+
this.logger = redis_smq_common_1.logger.getLogger(index_js_1.Configuration.getSetConfig().logger, this.constructor.name.toLowerCase());
|
|
47
|
+
this.logger.info(`Initializing MessageHandlerRunner with ID: ${this.id}`);
|
|
29
48
|
this.eventBus = eventBus;
|
|
30
49
|
if (this.eventBus) {
|
|
31
|
-
|
|
50
|
+
this.logger.debug('Event bus provided, setting up event bus publisher');
|
|
51
|
+
(0, event_bus_publisher_js_1.eventBusPublisher)(this, this.eventBus, this.logger);
|
|
32
52
|
}
|
|
53
|
+
this.logger.debug(`MessageHandlerRunner initialized for consumer ID: ${this.consumer.getId()}`);
|
|
33
54
|
}
|
|
34
55
|
getLogger() {
|
|
35
56
|
return this.logger;
|
|
36
57
|
}
|
|
37
58
|
getMessageHandlerInstance(queue) {
|
|
38
|
-
const { queueParams, groupId } = queue;
|
|
39
59
|
return this.messageHandlerInstances.find((i) => {
|
|
40
60
|
const handlerQueue = i.getQueue();
|
|
41
|
-
return (handlerQueue.queueParams.name === queueParams.name &&
|
|
42
|
-
handlerQueue.queueParams.ns === queueParams.ns &&
|
|
43
|
-
handlerQueue.groupId === groupId);
|
|
61
|
+
return (handlerQueue.queueParams.name === queue.queueParams.name &&
|
|
62
|
+
handlerQueue.queueParams.ns === queue.queueParams.ns &&
|
|
63
|
+
handlerQueue.groupId === queue.groupId);
|
|
44
64
|
});
|
|
45
65
|
}
|
|
46
66
|
getMessageHandler(queue) {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
i.queue.
|
|
50
|
-
i.queue.groupId === groupId);
|
|
67
|
+
return this.messageHandlers.find((i) => i.queue.queueParams.name === queue.queueParams.name &&
|
|
68
|
+
i.queue.queueParams.ns === queue.queueParams.ns &&
|
|
69
|
+
i.queue.groupId === queue.groupId);
|
|
51
70
|
}
|
|
52
71
|
createMessageHandlerInstance(handlerParams) {
|
|
53
|
-
const instance = new message_handler_js_1.MessageHandler(this.consumer, this.redisClient,
|
|
72
|
+
const instance = new message_handler_js_1.MessageHandler(this.consumer, this.redisClient, handlerParams, true, this.eventBus);
|
|
54
73
|
instance.on('consumer.messageHandler.error', (err, consumerId, queue) => {
|
|
74
|
+
this.logger.error(`MessageHandler error from consumer ${consumerId} for queue ${JSON.stringify(queue)}: ${err.message}`);
|
|
55
75
|
this.removeMessageHandler(queue, () => {
|
|
56
|
-
this.logger.error(err);
|
|
76
|
+
this.logger.error(`Error in MessageHandler: ${err.message}`, err);
|
|
57
77
|
});
|
|
58
78
|
});
|
|
59
79
|
this.messageHandlerInstances.push(instance);
|
|
60
|
-
this.logger.info(`Created
|
|
80
|
+
this.logger.info(`Created MessageHandler (ID: ${instance.getId()}) for queue: ${handlerParams.queue.queueParams.name}. Total: ${this.messageHandlerInstances.length}`);
|
|
61
81
|
return instance;
|
|
62
82
|
}
|
|
63
83
|
runMessageHandler(handlerParams, cb) {
|
|
64
84
|
const handler = this.createMessageHandlerInstance(handlerParams);
|
|
65
85
|
handler.run((err) => {
|
|
66
|
-
if (err)
|
|
86
|
+
if (err) {
|
|
87
|
+
this.logger.error(`Failed to run message handler: ${err.message}`);
|
|
67
88
|
this.removeMessageHandler(handlerParams.queue, () => cb(err));
|
|
89
|
+
}
|
|
68
90
|
else {
|
|
91
|
+
this.logger.debug(`Message handler started for queue: ${handlerParams.queue.queueParams.name}`);
|
|
69
92
|
cb();
|
|
70
93
|
}
|
|
71
94
|
});
|
|
72
95
|
}
|
|
73
96
|
shutdownMessageHandler(messageHandler, cb) {
|
|
74
97
|
const queue = messageHandler.getQueue();
|
|
75
|
-
messageHandler.shutdown(() => {
|
|
98
|
+
messageHandler.shutdown((err) => {
|
|
99
|
+
if (err) {
|
|
100
|
+
this.logger.warn(`Error during message handler shutdown (ignored): ${err.message}`);
|
|
101
|
+
}
|
|
102
|
+
const beforeCount = this.messageHandlerInstances.length;
|
|
76
103
|
this.messageHandlerInstances = this.messageHandlerInstances.filter((handler) => {
|
|
77
104
|
const iQueue = handler.getQueue();
|
|
78
105
|
return !(iQueue.queueParams.name === queue.queueParams.name &&
|
|
79
106
|
iQueue.queueParams.ns === queue.queueParams.ns &&
|
|
80
107
|
iQueue.groupId === queue.groupId);
|
|
81
108
|
});
|
|
109
|
+
const afterCount = this.messageHandlerInstances.length;
|
|
110
|
+
this.logger.debug(`Removed ${beforeCount - afterCount} message handler instance(s). Remaining: ${afterCount}`);
|
|
82
111
|
cb();
|
|
83
112
|
});
|
|
84
113
|
}
|
|
85
114
|
goingUp() {
|
|
115
|
+
this.logger.info('MessageHandlerRunner going up');
|
|
86
116
|
return super.goingUp().concat([this.runMessageHandlers]);
|
|
87
117
|
}
|
|
88
118
|
goingDown() {
|
|
119
|
+
this.logger.info('MessageHandlerRunner going down');
|
|
89
120
|
return [this.shutDownMessageHandlers].concat(super.goingDown());
|
|
90
121
|
}
|
|
91
122
|
handleError(err) {
|
|
92
123
|
if (this.isRunning()) {
|
|
124
|
+
this.logger.error(`MessageHandlerRunner error: ${err.message}`, err);
|
|
93
125
|
this.emit('consumer.messageHandlerRunner.error', err, this.consumer.getId());
|
|
94
126
|
}
|
|
95
127
|
super.handleError(err);
|
|
96
128
|
}
|
|
97
129
|
removeMessageHandler(queue, cb) {
|
|
98
|
-
const { queueParams, groupId } = queue;
|
|
99
130
|
const handler = this.getMessageHandler(queue);
|
|
100
|
-
if (!handler)
|
|
101
|
-
|
|
131
|
+
if (!handler) {
|
|
132
|
+
this.logger.debug(`No message handler found for queue: ${queue.queueParams.name}, nothing to remove`);
|
|
133
|
+
return cb();
|
|
134
|
+
}
|
|
135
|
+
const beforeCount = this.messageHandlers.length;
|
|
136
|
+
this.messageHandlers = this.messageHandlers.filter((h) => {
|
|
137
|
+
const q = h.queue;
|
|
138
|
+
return !(queue.queueParams.name === q.queueParams.name &&
|
|
139
|
+
queue.queueParams.ns === q.queueParams.ns &&
|
|
140
|
+
queue.groupId === q.groupId);
|
|
141
|
+
});
|
|
142
|
+
const afterCount = this.messageHandlers.length;
|
|
143
|
+
this.logger.info(`Message handler for queue (${queue.queueParams.name}) removed. Removed ${beforeCount - afterCount} configuration(s).`);
|
|
144
|
+
const handlerInstance = this.getMessageHandlerInstance(queue);
|
|
145
|
+
if (handlerInstance) {
|
|
146
|
+
this.shutdownMessageHandler(handlerInstance, cb);
|
|
147
|
+
}
|
|
102
148
|
else {
|
|
103
|
-
|
|
104
|
-
const handerQueue = handler.queue;
|
|
105
|
-
return !(queueParams.name === handerQueue.queueParams.name &&
|
|
106
|
-
queueParams.ns === handerQueue.queueParams.ns &&
|
|
107
|
-
groupId === handerQueue.groupId);
|
|
108
|
-
});
|
|
109
|
-
this.logger.info(`Message handler with parameters (${JSON.stringify(queue)}) has been removed.`);
|
|
110
|
-
const handlerInstance = this.getMessageHandlerInstance(queue);
|
|
111
|
-
if (handlerInstance)
|
|
112
|
-
this.shutdownMessageHandler(handlerInstance, cb);
|
|
113
|
-
else
|
|
114
|
-
cb();
|
|
149
|
+
cb();
|
|
115
150
|
}
|
|
116
151
|
}
|
|
117
152
|
addMessageHandler(queue, messageHandler, cb) {
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
cb(new
|
|
153
|
+
if (this.getMessageHandler(queue)) {
|
|
154
|
+
this.logger.warn(`Message handler for queue ${queue.queueParams.name} already exists`);
|
|
155
|
+
return cb(new index_js_2.ConsumerConsumeMessageHandlerAlreadyExistsError());
|
|
156
|
+
}
|
|
157
|
+
const handlerParams = {
|
|
158
|
+
queue,
|
|
159
|
+
messageHandler,
|
|
160
|
+
};
|
|
161
|
+
this.messageHandlers.push(handlerParams);
|
|
162
|
+
this.logger.info(`Message handler registered for queue: ${queue.queueParams.name}. Total handlers: ${this.messageHandlers.length}`);
|
|
163
|
+
if (this.isRunning()) {
|
|
164
|
+
this.runMessageHandler(handlerParams, cb);
|
|
165
|
+
}
|
|
121
166
|
else {
|
|
122
|
-
|
|
123
|
-
queue,
|
|
124
|
-
messageHandler,
|
|
125
|
-
};
|
|
126
|
-
this.messageHandlers.push(handlerParams);
|
|
127
|
-
this.logger.info(`Message handler with parameters (${JSON.stringify(handlerParams)}) has been registered.`);
|
|
128
|
-
if (this.isRunning()) {
|
|
129
|
-
this.runMessageHandler(handlerParams, cb);
|
|
130
|
-
}
|
|
131
|
-
else
|
|
132
|
-
cb();
|
|
167
|
+
cb();
|
|
133
168
|
}
|
|
134
169
|
}
|
|
135
170
|
getQueues() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-handler-runner.js","sourceRoot":"","sources":["../../../../../../src/lib/consumer/message-handler-runner/message-handler-runner.ts"],"names":[],"mappings":";;;AASA,
|
|
1
|
+
{"version":3,"file":"message-handler-runner.js","sourceRoot":"","sources":["../../../../../../src/lib/consumer/message-handler-runner/message-handler-runner.ts"],"names":[],"mappings":";;;AASA,uDAA+E;AAG/E,uDAAyD;AAIzD,iDAAqF;AACrF,8FAAuF;AAKvF,qEAA6D;AAM7D,MAAa,oBAAqB,SAAQ,2BAA4C;IAQpF,YACE,QAAkB,EAClB,WAAwB,EACxB,QAAyB;QAEzB,KAAK,EAAE,CAAC;QATA,4BAAuB,GAAqB,EAAE,CAAC;QAC/C,oBAAe,GAAkC,EAAE,CAAC;QAiJpD,uBAAkB,GAAG,CAAC,EAAmB,EAAQ,EAAE;YAC3D,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;YACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,YAAY,qBAAqB,CAAC,CAAC;YAChE,IAAI,YAAY,KAAK,CAAC;gBAAE,OAAO,EAAE,EAAE,CAAC;YACpC,wBAAK,CAAC,IAAI,CACR,IAAI,CAAC,eAAe,EACpB,CAAC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;gBACzB,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAC9C,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,IAAI,GAAG,EAAE,CAAC;oBACR,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBACvE,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;gBACnD,CAAC;gBACD,EAAE,CAAC,GAAG,CAAC,CAAC;YACV,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;QAKQ,4BAAuB,GAAG,CAAC,EAAmB,EAAQ,EAAE;YAChE,MAAM,YAAY,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC;YACzD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,YAAY,qBAAqB,CAAC,CAAC;YACrE,IAAI,YAAY,KAAK,CAAC;gBAAE,OAAO,EAAE,EAAE,CAAC;YACpC,wBAAK,CAAC,IAAI,CACR,IAAI,CAAC,uBAAuB,EAC5B,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;gBACnB,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC7C,CAAC,EACD,GAAG,EAAE;gBACH,IAAI,CAAC,uBAAuB,GAAG,EAAE,CAAC;gBAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;gBAC7D,EAAE,EAAE,CAAC;YACP,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;QA9KA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,yBAAM,CAAC,SAAS,CAC5B,wBAAa,CAAC,YAAY,EAAE,CAAC,MAAM,EACnC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,CACpC,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8CAA8C,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;YACxE,IAAA,0CAAiB,EAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,qDAAqD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAC7E,CAAC;IACJ,CAAC;IAEkB,SAAS;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAKS,yBAAyB,CACjC,KAAyB;QAEzB,OAAO,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YAC7C,MAAM,YAAY,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;YAClC,OAAO,CACL,YAAY,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,CAAC,WAAW,CAAC,IAAI;gBACxD,YAAY,CAAC,WAAW,CAAC,EAAE,KAAK,KAAK,CAAC,WAAW,CAAC,EAAE;gBACpD,YAAY,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CACvC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAKS,iBAAiB,CACzB,KAAyB;QAEzB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAC9B,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,CAAC,WAAW,CAAC,IAAI;YACnD,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,KAAK,KAAK,CAAC,WAAW,CAAC,EAAE;YAC/C,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CACpC,CAAC;IACJ,CAAC;IAKS,4BAA4B,CACpC,aAA0C;QAE1C,MAAM,QAAQ,GAAG,IAAI,mCAAc,CACjC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,EAChB,aAAa,EACb,IAAI,EACJ,IAAI,CAAC,QAAQ,CACd,CAAC;QACF,QAAQ,CAAC,EAAE,CAAC,+BAA+B,EAAE,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE;YACtE,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,sCAAsC,UAAU,cAAc,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,OAAO,EAAE,CACtG,CAAC;YACF,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,GAAG,EAAE;gBACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;YACpE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,+BAA+B,QAAQ,CAAC,KAAK,EAAE,gBAAgB,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,YAAY,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,CACrJ,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAKS,iBAAiB,CACzB,aAA0C,EAC1C,EAAmB;QAEnB,MAAM,OAAO,GAAG,IAAI,CAAC,4BAA4B,CAAC,aAAa,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YAClB,IAAI,GAAG,EAAE,CAAC;gBACR,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBACnE,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YAChE,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,sCAAsC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,CAC7E,CAAC;gBACF,EAAE,EAAE,CAAC;YACP,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAKS,sBAAsB,CAC9B,cAA8B,EAC9B,EAAmB;QAEnB,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAC;QACxC,cAAc,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,EAAE;YAC9B,IAAI,GAAG,EAAE,CAAC;gBACR,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,oDAAoD,GAAG,CAAC,OAAO,EAAE,CAClE,CAAC;YACJ,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC;YACxD,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAChE,CAAC,OAAO,EAAE,EAAE;gBACV,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;gBAClC,OAAO,CAAC,CACN,MAAM,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,CAAC,WAAW,CAAC,IAAI;oBAClD,MAAM,CAAC,WAAW,CAAC,EAAE,KAAK,KAAK,CAAC,WAAW,CAAC,EAAE;oBAC9C,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CACjC,CAAC;YACJ,CAAC,CACF,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC;YACvD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,WAAW,WAAW,GAAG,UAAU,4CAA4C,UAAU,EAAE,CAC5F,CAAC;YACF,EAAE,EAAE,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;IA6CkB,OAAO;QACxB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAClD,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEkB,SAAS;QAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IAClE,CAAC;IAEkB,WAAW,CAAC,GAAU;QACvC,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YACrB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;YACrE,IAAI,CAAC,IAAI,CACP,qCAAqC,EACrC,GAAG,EACH,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CACtB,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAKD,oBAAoB,CAAC,KAAyB,EAAE,EAAmB;QACjE,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,uCAAuC,KAAK,CAAC,WAAW,CAAC,IAAI,qBAAqB,CACnF,CAAC;YACF,OAAO,EAAE,EAAE,CAAC;QACd,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;QAChD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACvD,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;YAClB,OAAO,CAAC,CACN,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,CAAC,IAAI;gBAC7C,KAAK,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC,WAAW,CAAC,EAAE;gBACzC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,CAC5B,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,8BAA8B,KAAK,CAAC,WAAW,CAAC,IAAI,sBAAsB,WAAW,GAAG,UAAU,oBAAoB,CACvH,CAAC;QAEF,MAAM,eAAe,GAAG,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;QAC9D,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC,sBAAsB,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,EAAE,EAAE,CAAC;QACP,CAAC;IACH,CAAC;IAMD,iBAAiB,CACf,KAAyB,EACzB,cAAuC,EACvC,EAAmB;QAEnB,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,6BAA6B,KAAK,CAAC,WAAW,CAAC,IAAI,iBAAiB,CACrE,CAAC;YACF,OAAO,EAAE,CAAC,IAAI,0DAA+C,EAAE,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,aAAa,GAAgC;YACjD,KAAK;YACL,cAAc;SACf,CAAC;QACF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,yCAAyC,KAAK,CAAC,WAAW,CAAC,IAAI,qBAAqB,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAClH,CAAC;QACF,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YACrB,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,EAAE,EAAE,CAAC;QACP,CAAC;IACH,CAAC;IAKD,SAAS;QACP,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;CACF;AA1RD,oDA0RC"}
|
package/dist/cjs/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ICallback,
|
|
1
|
+
import { ICallback, Timer } from 'redis-smq-common';
|
|
2
2
|
import { RedisClient } from '../../../common/redis-client/redis-client.js';
|
|
3
3
|
import { EventBus } from '../../event-bus/index.js';
|
|
4
4
|
import { Consumer } from '../consumer/consumer.js';
|
|
@@ -8,10 +8,11 @@ import { MessageHandlerRunner } from './message-handler-runner.js';
|
|
|
8
8
|
export declare class MultiplexedMessageHandlerRunner extends MessageHandlerRunner {
|
|
9
9
|
protected timer: Timer;
|
|
10
10
|
protected index: number;
|
|
11
|
-
protected activeMessageHandler: MessageHandler | null
|
|
12
|
-
|
|
11
|
+
protected activeMessageHandler: MessageHandler | null;
|
|
12
|
+
protected readonly tickIntervalMs: number;
|
|
13
|
+
constructor(consumer: Consumer, redisClient: RedisClient, eventBus: EventBus | null);
|
|
13
14
|
protected nextTick(): void;
|
|
14
|
-
protected getNextMessageHandler(): MessageHandler |
|
|
15
|
+
protected getNextMessageHandler(): MessageHandler | null;
|
|
15
16
|
protected execNextMessageHandler: () => void;
|
|
16
17
|
protected createMessageHandlerInstance(handlerParams: IConsumerMessageHandlerArgs): MessageHandler;
|
|
17
18
|
protected shutdownMessageHandler(messageHandler: MessageHandler, cb: ICallback<void>): void;
|
package/dist/cjs/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multiplexed-message-handler-runner.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"multiplexed-message-handler-runner.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,8CAA8C,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,uDAAuD,CAAC;AAEvF,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAMnE,qBAAa,+BAAgC,SAAQ,oBAAoB;IACvE,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IACvB,SAAS,CAAC,KAAK,EAAE,MAAM,CAAK;IAC5B,SAAS,CAAC,oBAAoB,EAAE,cAAc,GAAG,IAAI,CAAQ;IAC7D,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAQ;gBAG/C,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAkB3B,SAAS,CAAC,QAAQ,IAAI,IAAI;IAoB1B,SAAS,CAAC,qBAAqB,IAAI,cAAc,GAAG,IAAI;IAsBxD,SAAS,CAAC,sBAAsB,QAAO,IAAI,CAwBzC;cAKiB,4BAA4B,CAC7C,aAAa,EAAE,2BAA2B,GACzC,cAAc;cAqBE,sBAAsB,CACvC,cAAc,EAAE,cAAc,EAC9B,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,GAClB,IAAI;cAiBY,OAAO,IAAI,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE;cAc5C,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE;CAMlE"}
|
package/dist/cjs/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.js
CHANGED
|
@@ -2,64 +2,99 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MultiplexedMessageHandlerRunner = void 0;
|
|
4
4
|
const redis_smq_common_1 = require("redis-smq-common");
|
|
5
|
-
const multiplexed_message_handler_js_1 = require("../message-handler/multiplexed-message-handler.js");
|
|
5
|
+
const multiplexed_message_handler_js_1 = require("../message-handler/message-handler/multiplexed-message-handler.js");
|
|
6
6
|
const message_handler_runner_js_1 = require("./message-handler-runner.js");
|
|
7
7
|
class MultiplexedMessageHandlerRunner extends message_handler_runner_js_1.MessageHandlerRunner {
|
|
8
|
-
constructor(consumer, redisClient,
|
|
9
|
-
super(consumer, redisClient,
|
|
8
|
+
constructor(consumer, redisClient, eventBus) {
|
|
9
|
+
super(consumer, redisClient, eventBus);
|
|
10
10
|
this.index = 0;
|
|
11
11
|
this.activeMessageHandler = null;
|
|
12
|
+
this.tickIntervalMs = 1000;
|
|
12
13
|
this.execNextMessageHandler = () => {
|
|
14
|
+
if (!this.isRunning()) {
|
|
15
|
+
this.logger.debug('execNextMessageHandler called while not running, ignoring');
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
13
18
|
this.activeMessageHandler = this.getNextMessageHandler();
|
|
14
|
-
if (this.activeMessageHandler
|
|
15
|
-
this.activeMessageHandler.
|
|
19
|
+
if (this.activeMessageHandler) {
|
|
20
|
+
if (this.activeMessageHandler.isRunning()) {
|
|
21
|
+
this.logger.debug(`Triggering dequeue on active handler (ID: ${this.activeMessageHandler.getId()})`);
|
|
22
|
+
this.activeMessageHandler.dequeue();
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
this.logger.debug(`Active handler (ID: ${this.activeMessageHandler.getId()}) is not running, scheduling next tick`);
|
|
26
|
+
this.nextTick();
|
|
27
|
+
}
|
|
16
28
|
}
|
|
17
29
|
else {
|
|
30
|
+
this.logger.debug('No active handler available, scheduling next tick');
|
|
18
31
|
this.nextTick();
|
|
19
32
|
}
|
|
20
33
|
};
|
|
34
|
+
this.logger.info(`Initializing MultiplexedMessageHandlerRunner with ID: ${this.id}`);
|
|
21
35
|
this.timer = new redis_smq_common_1.Timer();
|
|
22
|
-
this.timer.on('error', (err) =>
|
|
36
|
+
this.timer.on('error', (err) => {
|
|
37
|
+
this.logger.error(`Timer error: ${err.message}`);
|
|
38
|
+
this.handleError(err);
|
|
39
|
+
});
|
|
40
|
+
this.logger.debug('Timer initialized and error handler registered');
|
|
23
41
|
}
|
|
24
42
|
nextTick() {
|
|
25
|
-
if (this.isRunning()) {
|
|
26
|
-
this.
|
|
27
|
-
|
|
43
|
+
if (!this.isRunning()) {
|
|
44
|
+
this.logger.debug('nextTick called while not running, ignoring');
|
|
45
|
+
return;
|
|
28
46
|
}
|
|
47
|
+
this.activeMessageHandler = null;
|
|
48
|
+
this.timer.reset();
|
|
49
|
+
this.logger.debug(`Scheduling next message handler execution in ${this.tickIntervalMs}ms`);
|
|
50
|
+
this.timer.setTimeout(() => this.execNextMessageHandler(), this.tickIntervalMs);
|
|
29
51
|
}
|
|
30
52
|
getNextMessageHandler() {
|
|
31
|
-
|
|
32
|
-
|
|
53
|
+
var _a, _b;
|
|
54
|
+
const count = this.messageHandlerInstances.length;
|
|
55
|
+
if (count === 0) {
|
|
56
|
+
this.logger.debug('No message handlers registered');
|
|
57
|
+
return null;
|
|
33
58
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
this.index += 1;
|
|
59
|
+
if (this.index >= count) {
|
|
60
|
+
this.index = 0;
|
|
37
61
|
}
|
|
38
|
-
|
|
62
|
+
const handler = this.messageHandlerInstances[this.index];
|
|
63
|
+
this.logger.debug(`Selected message handler at index ${this.index} (ID: ${(_b = (_a = handler === null || handler === void 0 ? void 0 : handler.getId) === null || _a === void 0 ? void 0 : _a.call(handler)) !== null && _b !== void 0 ? _b : 'N/A'})`);
|
|
64
|
+
this.index = (this.index + 1) % count;
|
|
65
|
+
return handler;
|
|
39
66
|
}
|
|
40
67
|
createMessageHandlerInstance(handlerParams) {
|
|
41
|
-
|
|
68
|
+
this.logger.debug(`Creating MultiplexedMessageHandler for queue: ${JSON.stringify(handlerParams.queue)}`);
|
|
69
|
+
const instance = new multiplexed_message_handler_js_1.MultiplexedMessageHandler(this.consumer, this.redisClient, handlerParams, this.eventBus, this.execNextMessageHandler);
|
|
42
70
|
this.messageHandlerInstances.push(instance);
|
|
43
|
-
this.logger.info(`Created
|
|
71
|
+
this.logger.info(`Created MultiplexedMessageHandler (ID: ${instance.getId()}) for queue: ${handlerParams.queue.queueParams.name}. Total: ${this.messageHandlerInstances.length}`);
|
|
44
72
|
return instance;
|
|
45
73
|
}
|
|
46
74
|
shutdownMessageHandler(messageHandler, cb) {
|
|
75
|
+
const queue = messageHandler.getQueue();
|
|
76
|
+
this.logger.debug(`Shutting down handler (ID: ${messageHandler.getId()}) for queue: ${JSON.stringify(queue)}`);
|
|
47
77
|
super.shutdownMessageHandler(messageHandler, () => {
|
|
48
78
|
if (messageHandler === this.activeMessageHandler) {
|
|
79
|
+
this.logger.debug('Shut down active handler, scheduling next tick');
|
|
49
80
|
this.nextTick();
|
|
50
81
|
}
|
|
51
82
|
cb();
|
|
52
83
|
});
|
|
53
84
|
}
|
|
54
85
|
goingUp() {
|
|
86
|
+
this.logger.info('MultiplexedMessageHandlerRunner going up');
|
|
55
87
|
return super.goingUp().concat([
|
|
56
88
|
(cb) => {
|
|
89
|
+
this.logger.debug('Starting message handler execution cycle');
|
|
57
90
|
this.execNextMessageHandler();
|
|
58
91
|
cb();
|
|
59
92
|
},
|
|
60
93
|
]);
|
|
61
94
|
}
|
|
62
95
|
goingDown() {
|
|
96
|
+
this.logger.info('MultiplexedMessageHandlerRunner going down');
|
|
97
|
+
this.logger.debug('Resetting timer during shutdown');
|
|
63
98
|
this.timer.reset();
|
|
64
99
|
return super.goingDown();
|
|
65
100
|
}
|
package/dist/cjs/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multiplexed-message-handler-runner.js","sourceRoot":"","sources":["../../../../../../src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.ts"],"names":[],"mappings":";;;AASA,
|
|
1
|
+
{"version":3,"file":"multiplexed-message-handler-runner.js","sourceRoot":"","sources":["../../../../../../src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export * from './message-handler.js';
|
|
2
2
|
export * from './consumer-heartbeat.js';
|
|
3
|
-
export * from '../message-handler/
|
|
3
|
+
export * from '../message-handler/message-handler/consume-message/types/index.js';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/consumer/types/index.ts"],"names":[],"mappings":"AASA,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/consumer/types/index.ts"],"names":[],"mappings":"AASA,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mEAAmE,CAAC"}
|
|
@@ -16,5 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./message-handler.js"), exports);
|
|
18
18
|
__exportStar(require("./consumer-heartbeat.js"), exports);
|
|
19
|
-
__exportStar(require("../message-handler/
|
|
19
|
+
__exportStar(require("../message-handler/message-handler/consume-message/types/index.js"), exports);
|
|
20
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/lib/consumer/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AASA,uDAAqC;AACrC,0DAAwC;AACxC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/lib/consumer/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AASA,uDAAqC;AACrC,0DAAwC;AACxC,oGAAkF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delay-unacknowledged.worker.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/consumer/workers/delay-unacknowledged.worker.ts"],"names":[],"mappings":"AASA,OAAO,EAGL,SAAS,EAEV,MAAM,kBAAkB,CAAC;AAS1B,OAAO,EAAE,oCAAoC,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,cAAM,yBAA0B,SAAQ,MAAM;IAC5C,IAAI,OAAQ,SAAS,CAAC,IAAI,CAAC,KAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"delay-unacknowledged.worker.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/consumer/workers/delay-unacknowledged.worker.ts"],"names":[],"mappings":"AASA,OAAO,EAGL,SAAS,EAEV,MAAM,kBAAkB,CAAC;AAS1B,OAAO,EAAE,oCAAoC,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,cAAM,yBAA0B,SAAQ,MAAM;IAC5C,IAAI,OAAQ,SAAS,CAAC,IAAI,CAAC,KAAG,IAAI,CAuJhC;CACH;kCAEwB,oCAAoC;AAA7D,wBACyC"}
|
|
@@ -11,17 +11,24 @@ class DelayUnacknowledgedWorker extends worker_js_1.Worker {
|
|
|
11
11
|
constructor() {
|
|
12
12
|
super(...arguments);
|
|
13
13
|
this.work = (cb) => {
|
|
14
|
+
this.logger.debug('Starting DelayUnacknowledgedWorker work cycle');
|
|
14
15
|
const { keyQueueDelayed, keyQueueScheduled, keyQueueProperties, keyQueueMessages, } = redis_keys_js_1.redisKeys.getQueueKeys(this.queueParsedParams.queueParams, this.queueParsedParams.groupId);
|
|
16
|
+
this.logger.debug(`Working with queue: ${this.queueParsedParams.queueParams.name}, group: ${this.queueParsedParams.groupId || 'none'}`);
|
|
15
17
|
const redisClient = this.redisClient.getInstance();
|
|
16
18
|
if (redisClient instanceof Error) {
|
|
19
|
+
this.logger.error('Failed to get Redis client instance', redisClient);
|
|
17
20
|
cb(redisClient);
|
|
18
21
|
return void 0;
|
|
19
22
|
}
|
|
23
|
+
this.logger.debug(`Fetching delayed messages from ${keyQueueDelayed}`);
|
|
20
24
|
redisClient.lrange(keyQueueDelayed, 0, 9, (err, reply) => {
|
|
21
|
-
if (err)
|
|
25
|
+
if (err) {
|
|
26
|
+
this.logger.error('Error fetching delayed messages', err);
|
|
22
27
|
cb(err);
|
|
28
|
+
}
|
|
23
29
|
else {
|
|
24
30
|
const messageIds = reply !== null && reply !== void 0 ? reply : [];
|
|
31
|
+
this.logger.debug(`Found ${messageIds.length} delayed messages to process`);
|
|
25
32
|
if (messageIds.length) {
|
|
26
33
|
const keys = [];
|
|
27
34
|
const args = [
|
|
@@ -33,45 +40,69 @@ class DelayUnacknowledgedWorker extends worker_js_1.Worker {
|
|
|
33
40
|
index_js_1.EMessageProperty.STATE,
|
|
34
41
|
'1',
|
|
35
42
|
];
|
|
43
|
+
this.logger.debug('Processing delayed messages batch');
|
|
36
44
|
redis_smq_common_1.async.each(messageIds, (messageId, _, done) => {
|
|
45
|
+
this.logger.debug(`Processing delayed message: ${messageId}`);
|
|
37
46
|
(0, _get_message_js_1._getMessage)(redisClient, messageId, (err, message) => {
|
|
38
|
-
if (err)
|
|
47
|
+
if (err) {
|
|
48
|
+
this.logger.error(`Error retrieving message ${messageId}`, err);
|
|
39
49
|
done(err);
|
|
40
|
-
|
|
50
|
+
}
|
|
51
|
+
else if (!message) {
|
|
52
|
+
this.logger.error(`Message ${messageId} not found`);
|
|
41
53
|
cb(new redis_smq_common_1.CallbackEmptyReplyError());
|
|
54
|
+
}
|
|
42
55
|
else {
|
|
43
56
|
const messageId = message.getId();
|
|
57
|
+
this.logger.debug(`Preparing message ${messageId} for scheduling`);
|
|
44
58
|
const { keyMessage } = redis_keys_js_1.redisKeys.getMessageKeys(messageId);
|
|
45
59
|
keys.push(keyQueueMessages, keyQueueProperties, keyMessage, keyQueueScheduled, keyQueueDelayed);
|
|
46
60
|
args.push(messageId, '');
|
|
47
61
|
const delay = message.producibleMessage.getRetryDelay();
|
|
62
|
+
this.logger.debug(`Message ${messageId} retry delay: ${delay}ms`);
|
|
48
63
|
const messageState = message.getMessageState();
|
|
64
|
+
const previousAttempts = messageState.getAttempts();
|
|
49
65
|
messageState.incrAttempts();
|
|
50
66
|
messageState.setNextRetryDelay(delay);
|
|
67
|
+
this.logger.debug(`Message ${messageId} attempts incremented from ${previousAttempts} to ${messageState.getAttempts()}`);
|
|
51
68
|
const timestamp = message.getNextScheduledTimestamp();
|
|
69
|
+
this.logger.debug(`Message ${messageId} scheduled for timestamp: ${timestamp}`);
|
|
52
70
|
args.push(timestamp, JSON.stringify(messageState));
|
|
53
71
|
done();
|
|
54
72
|
}
|
|
55
73
|
});
|
|
56
74
|
}, (err) => {
|
|
57
|
-
if (err)
|
|
75
|
+
if (err) {
|
|
76
|
+
this.logger.error('Error processing delayed messages batch', err);
|
|
58
77
|
cb(err);
|
|
78
|
+
}
|
|
59
79
|
else {
|
|
80
|
+
this.logger.debug('Running SCHEDULE_MESSAGE script for delayed messages');
|
|
60
81
|
redisClient.runScript(scripts_js_1.ELuaScriptName.SCHEDULE_MESSAGE, keys, args, (err, reply) => {
|
|
61
|
-
if (err)
|
|
82
|
+
if (err) {
|
|
83
|
+
this.logger.error('Error running SCHEDULE_MESSAGE script', err);
|
|
62
84
|
cb(err);
|
|
63
|
-
|
|
85
|
+
}
|
|
86
|
+
else if (!reply) {
|
|
87
|
+
this.logger.error('Empty reply from SCHEDULE_MESSAGE script');
|
|
64
88
|
cb(new redis_smq_common_1.CallbackEmptyReplyError());
|
|
65
|
-
|
|
89
|
+
}
|
|
90
|
+
else if (reply !== 'OK') {
|
|
91
|
+
this.logger.error(`Unexpected reply from SCHEDULE_MESSAGE script: ${reply}`);
|
|
66
92
|
cb(new redis_smq_common_1.PanicError(String(reply)));
|
|
67
|
-
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
this.logger.debug('Successfully scheduled delayed messages');
|
|
68
96
|
cb();
|
|
97
|
+
}
|
|
69
98
|
});
|
|
70
99
|
}
|
|
71
100
|
});
|
|
72
101
|
}
|
|
73
|
-
else
|
|
102
|
+
else {
|
|
103
|
+
this.logger.debug('No delayed messages to process');
|
|
74
104
|
cb();
|
|
105
|
+
}
|
|
75
106
|
}
|
|
76
107
|
});
|
|
77
108
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delay-unacknowledged.worker.js","sourceRoot":"","sources":["../../../../../../src/lib/consumer/workers/delay-unacknowledged.worker.ts"],"names":[],"mappings":";;AASA,uDAK0B;AAC1B,gFAAiF;AACjF,4EAAqE;AACrE,qEAA8D;AAC9D,qDAGgC;AAChC,mDAAsD;AAEtD,2CAAqC;AAErC,MAAM,yBAA0B,SAAQ,kBAAM;IAA9C;;QACE,SAAI,GAAG,CAAC,EAAmB,EAAQ,EAAE;YACnC,MAAM,EACJ,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,GACjB,GAAG,yBAAS,CAAC,YAAY,CACxB,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAClC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAC/B,CAAC;
|
|
1
|
+
{"version":3,"file":"delay-unacknowledged.worker.js","sourceRoot":"","sources":["../../../../../../src/lib/consumer/workers/delay-unacknowledged.worker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish-scheduled.worker.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/consumer/workers/publish-scheduled.worker.ts"],"names":[],"mappings":"AASA,OAAO,EAAS,SAAS,EAAc,MAAM,kBAAkB,CAAC;AAShE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAGpE,OAAO,EAAE,oCAAoC,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,cAAM,sBAAuB,SAAQ,MAAM;IACzC,IAAI,OAAQ,SAAS,CAAC,IAAI,CAAC,KAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"publish-scheduled.worker.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/consumer/workers/publish-scheduled.worker.ts"],"names":[],"mappings":"AASA,OAAO,EAAS,SAAS,EAAc,MAAM,kBAAkB,CAAC;AAShE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAGpE,OAAO,EAAE,oCAAoC,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,cAAM,sBAAuB,SAAQ,MAAM;IACzC,IAAI,OAAQ,SAAS,CAAC,IAAI,CAAC,KAAG,IAAI,CAoBhC;IAEF,SAAS,CAAC,eAAe,OAAQ,SAAS,CAAC,MAAM,EAAE,CAAC,KAAG,IAAI,CAqCzD;IAEF,SAAS,CAAC,aAAa,QAChB,MAAM,EAAE,MACT,SAAS,CAAC,eAAe,EAAE,CAAC,KAC/B,IAAI,CA0BL;IAEF,SAAS,CAAC,eAAe,aACb,eAAe,EAAE,MACvB,SAAS,CAAC,IAAI,CAAC,KAClB,IAAI,CAmJL;CACH;kCAEwB,oCAAoC;AAA7D,wBACsC"}
|