redis-smq 8.0.3 → 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.
Files changed (525) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/dist/cjs/src/common/types/event.d.ts +3 -3
  3. package/dist/cjs/src/common/types/event.d.ts.map +1 -1
  4. package/dist/cjs/src/lib/consumer/consumer/_/_get-consumer-queues.d.ts +4 -0
  5. package/dist/cjs/src/lib/consumer/consumer/_/_get-consumer-queues.d.ts.map +1 -0
  6. package/dist/cjs/src/lib/consumer/consumer/_/_get-consumer-queues.js +14 -0
  7. package/dist/cjs/src/lib/consumer/consumer/_/_get-consumer-queues.js.map +1 -0
  8. package/dist/cjs/src/lib/consumer/consumer/consumer.d.ts.map +1 -1
  9. package/dist/cjs/src/lib/consumer/consumer/consumer.js +155 -29
  10. package/dist/cjs/src/lib/consumer/consumer/consumer.js.map +1 -1
  11. package/dist/cjs/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.d.ts +1 -1
  12. package/dist/cjs/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.d.ts.map +1 -1
  13. package/dist/cjs/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.js +47 -9
  14. package/dist/cjs/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.js.map +1 -1
  15. package/dist/cjs/src/lib/consumer/message-handler/index.d.ts +1 -0
  16. package/dist/cjs/src/lib/consumer/message-handler/index.d.ts.map +1 -0
  17. package/dist/cjs/src/lib/consumer/message-handler/index.js +2 -0
  18. package/dist/cjs/src/lib/consumer/message-handler/index.js.map +1 -0
  19. package/dist/cjs/src/lib/consumer/message-handler/{consume-message → message-handler/consume-message}/consume-message.d.ts +13 -10
  20. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/consume-message.d.ts.map +1 -0
  21. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/consume-message.js +322 -0
  22. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/consume-message.js.map +1 -0
  23. package/dist/cjs/src/lib/consumer/message-handler/{consume-message → message-handler/consume-message}/event-bus-publisher.d.ts +1 -1
  24. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/event-bus-publisher.d.ts.map +1 -0
  25. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/event-bus-publisher.js.map +1 -0
  26. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.d.ts +20 -0
  27. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.d.ts.map +1 -0
  28. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.js +185 -0
  29. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.js.map +1 -0
  30. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.d.ts +9 -0
  31. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.d.ts.map +1 -0
  32. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.js +32 -0
  33. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.js.map +1 -0
  34. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/index.d.ts +2 -0
  35. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/index.d.ts.map +1 -0
  36. package/dist/cjs/src/lib/consumer/message-handler/{processing-queue → message-handler/consume-message}/types/index.js +1 -1
  37. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/index.js.map +1 -0
  38. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.d.ts +26 -0
  39. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.d.ts.map +1 -0
  40. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.js +25 -0
  41. package/dist/cjs/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.js.map +1 -0
  42. package/dist/{esm/src/lib/consumer → cjs/src/lib/consumer/message-handler}/message-handler/dequeue-message/dequeue-message.d.ts +6 -6
  43. package/dist/cjs/src/lib/consumer/message-handler/message-handler/dequeue-message/dequeue-message.d.ts.map +1 -0
  44. package/dist/cjs/src/lib/consumer/message-handler/message-handler/dequeue-message/dequeue-message.js +420 -0
  45. package/dist/cjs/src/lib/consumer/message-handler/message-handler/dequeue-message/dequeue-message.js.map +1 -0
  46. package/dist/cjs/src/lib/consumer/message-handler/{dequeue-message → message-handler/dequeue-message}/event-bus-publisher.d.ts +1 -1
  47. package/dist/cjs/src/lib/consumer/message-handler/message-handler/dequeue-message/event-bus-publisher.d.ts.map +1 -0
  48. package/dist/cjs/src/lib/consumer/message-handler/message-handler/dequeue-message/event-bus-publisher.js.map +1 -0
  49. package/dist/cjs/src/lib/consumer/message-handler/message-handler/message-handler.d.ts +3 -4
  50. package/dist/cjs/src/lib/consumer/message-handler/message-handler/message-handler.d.ts.map +1 -1
  51. package/dist/cjs/src/lib/consumer/message-handler/message-handler/message-handler.js +168 -55
  52. package/dist/cjs/src/lib/consumer/message-handler/message-handler/message-handler.js.map +1 -1
  53. package/dist/cjs/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.d.ts +13 -0
  54. package/dist/cjs/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.d.ts.map +1 -0
  55. package/dist/cjs/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.js +29 -0
  56. package/dist/cjs/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.js.map +1 -0
  57. package/dist/cjs/src/lib/consumer/message-handler-runner/message-handler-runner.d.ts +1 -1
  58. package/dist/cjs/src/lib/consumer/message-handler-runner/message-handler-runner.d.ts.map +1 -1
  59. package/dist/cjs/src/lib/consumer/message-handler-runner/message-handler-runner.js +84 -49
  60. package/dist/cjs/src/lib/consumer/message-handler-runner/message-handler-runner.js.map +1 -1
  61. package/dist/cjs/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.d.ts +5 -4
  62. package/dist/cjs/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.d.ts.map +1 -1
  63. package/dist/cjs/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.js +52 -17
  64. package/dist/cjs/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.js.map +1 -1
  65. package/dist/cjs/src/lib/consumer/types/index.d.ts +1 -1
  66. package/dist/cjs/src/lib/consumer/types/index.d.ts.map +1 -1
  67. package/dist/cjs/src/lib/consumer/types/index.js +1 -1
  68. package/dist/cjs/src/lib/consumer/types/index.js.map +1 -1
  69. package/dist/cjs/src/lib/consumer/workers/delay-unacknowledged.worker.d.ts.map +1 -1
  70. package/dist/cjs/src/lib/consumer/workers/delay-unacknowledged.worker.js +40 -9
  71. package/dist/cjs/src/lib/consumer/workers/delay-unacknowledged.worker.js.map +1 -1
  72. package/dist/cjs/src/lib/consumer/workers/publish-scheduled.worker.d.ts.map +1 -1
  73. package/dist/cjs/src/lib/consumer/workers/publish-scheduled.worker.js +125 -67
  74. package/dist/cjs/src/lib/consumer/workers/publish-scheduled.worker.js.map +1 -1
  75. package/dist/cjs/src/lib/consumer/workers/requeue-unacknowledged.worker.d.ts.map +1 -1
  76. package/dist/cjs/src/lib/consumer/workers/requeue-unacknowledged.worker.js +43 -9
  77. package/dist/cjs/src/lib/consumer/workers/requeue-unacknowledged.worker.js.map +1 -1
  78. package/dist/cjs/src/lib/consumer/workers/watch-consumers.worker.d.ts +3 -0
  79. package/dist/cjs/src/lib/consumer/workers/watch-consumers.worker.d.ts.map +1 -1
  80. package/dist/cjs/src/lib/consumer/workers/watch-consumers.worker.js +47 -11
  81. package/dist/cjs/src/lib/consumer/workers/watch-consumers.worker.js.map +1 -1
  82. package/dist/cjs/src/lib/consumer/workers/worker.d.ts.map +1 -1
  83. package/dist/cjs/src/lib/consumer/workers/worker.js +22 -5
  84. package/dist/cjs/src/lib/consumer/workers/worker.js.map +1 -1
  85. package/dist/cjs/src/lib/consumer-groups/consumer-groups.d.ts +2 -2
  86. package/dist/cjs/src/lib/consumer-groups/consumer-groups.d.ts.map +1 -1
  87. package/dist/cjs/src/lib/consumer-groups/consumer-groups.js +159 -48
  88. package/dist/cjs/src/lib/consumer-groups/consumer-groups.js.map +1 -1
  89. package/dist/cjs/src/lib/exchange/exchange-abstract.js +1 -1
  90. package/dist/cjs/src/lib/exchange/exchange-abstract.js.map +1 -1
  91. package/dist/cjs/src/lib/exchange/exchange-fan-out/exchange-fan-out.d.ts +1 -0
  92. package/dist/cjs/src/lib/exchange/exchange-fan-out/exchange-fan-out.d.ts.map +1 -1
  93. package/dist/cjs/src/lib/exchange/exchange-fan-out/exchange-fan-out.js +331 -164
  94. package/dist/cjs/src/lib/exchange/exchange-fan-out/exchange-fan-out.js.map +1 -1
  95. package/dist/cjs/src/lib/exchange/exchange-topic/exchange-topic.d.ts +1 -0
  96. package/dist/cjs/src/lib/exchange/exchange-topic/exchange-topic.d.ts.map +1 -1
  97. package/dist/cjs/src/lib/exchange/exchange-topic/exchange-topic.js +36 -5
  98. package/dist/cjs/src/lib/exchange/exchange-topic/exchange-topic.js.map +1 -1
  99. package/dist/cjs/src/lib/message/message.d.ts.map +1 -1
  100. package/dist/cjs/src/lib/message/message.js +174 -30
  101. package/dist/cjs/src/lib/message/message.js.map +1 -1
  102. package/dist/cjs/src/lib/namespace/namespace.d.ts.map +1 -1
  103. package/dist/cjs/src/lib/namespace/namespace.js +156 -22
  104. package/dist/cjs/src/lib/namespace/namespace.js.map +1 -1
  105. package/dist/cjs/src/lib/producer/producer.d.ts.map +1 -1
  106. package/dist/cjs/src/lib/producer/producer.js +125 -30
  107. package/dist/cjs/src/lib/producer/producer.js.map +1 -1
  108. package/dist/cjs/src/lib/producer/queue-consumer-groups-cache.d.ts +1 -1
  109. package/dist/cjs/src/lib/producer/queue-consumer-groups-cache.d.ts.map +1 -1
  110. package/dist/cjs/src/lib/producer/queue-consumer-groups-cache.js +117 -25
  111. package/dist/cjs/src/lib/producer/queue-consumer-groups-cache.js.map +1 -1
  112. package/dist/cjs/src/lib/queue/_/_delete-queue.d.ts.map +1 -1
  113. package/dist/cjs/src/lib/queue/_/_delete-queue.js +4 -4
  114. package/dist/cjs/src/lib/queue/_/_delete-queue.js.map +1 -1
  115. package/dist/cjs/src/lib/queue/_/_get-queue-consumer-ids.d.ts +4 -0
  116. package/dist/cjs/src/lib/queue/_/_get-queue-consumer-ids.d.ts.map +1 -0
  117. package/dist/cjs/src/lib/queue/_/_get-queue-consumer-ids.js +9 -0
  118. package/dist/cjs/src/lib/queue/_/_get-queue-consumer-ids.js.map +1 -0
  119. package/dist/cjs/src/lib/queue/_/_get-queue-consumers.d.ts +4 -0
  120. package/dist/cjs/src/lib/queue/_/_get-queue-consumers.d.ts.map +1 -0
  121. package/dist/cjs/src/lib/queue/_/_get-queue-consumers.js +19 -0
  122. package/dist/cjs/src/lib/queue/_/_get-queue-consumers.js.map +1 -0
  123. package/dist/cjs/src/lib/queue/queue.d.ts +3 -1
  124. package/dist/cjs/src/lib/queue/queue.d.ts.map +1 -1
  125. package/dist/cjs/src/lib/queue/queue.js +270 -45
  126. package/dist/cjs/src/lib/queue/queue.js.map +1 -1
  127. package/dist/cjs/src/lib/queue-messages/index.d.ts +5 -5
  128. package/dist/cjs/src/lib/queue-messages/index.d.ts.map +1 -1
  129. package/dist/cjs/src/lib/queue-messages/index.js +5 -5
  130. package/dist/cjs/src/lib/queue-messages/index.js.map +1 -1
  131. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.d.ts +5 -0
  132. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.d.ts.map +1 -0
  133. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.js +16 -0
  134. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.js.map +1 -0
  135. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.d.ts +5 -0
  136. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.d.ts.map +1 -0
  137. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.js +16 -0
  138. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.js.map +1 -0
  139. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-messages.d.ts +24 -0
  140. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-messages.d.ts.map +1 -0
  141. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-messages.js +131 -0
  142. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-messages.js.map +1 -0
  143. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/index.d.ts.map +1 -0
  144. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/index.js.map +1 -0
  145. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.d.ts +6 -0
  146. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.d.ts.map +1 -0
  147. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.js +17 -0
  148. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.js.map +1 -0
  149. package/dist/cjs/src/lib/queue-messages/{queue-pending-messages → queue-messages/queue-pending-messages}/queue-pending-messages.d.ts +9 -9
  150. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/queue-pending-messages.d.ts.map +1 -0
  151. package/dist/cjs/src/lib/queue-messages/{queue-pending-messages → queue-messages/queue-pending-messages}/queue-pending-messages.js +11 -11
  152. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/queue-pending-messages.js.map +1 -0
  153. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.d.ts +6 -0
  154. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.d.ts.map +1 -0
  155. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.js +17 -0
  156. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.js.map +1 -0
  157. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-scheduled-messages.d.ts +5 -0
  158. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-scheduled-messages.d.ts.map +1 -0
  159. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-scheduled-messages.js +17 -0
  160. package/dist/cjs/src/lib/queue-messages/queue-messages/queue-scheduled-messages.js.map +1 -0
  161. package/dist/cjs/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.d.ts +25 -0
  162. package/dist/cjs/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.d.ts.map +1 -0
  163. package/dist/cjs/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.js +241 -0
  164. package/dist/cjs/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.js.map +1 -0
  165. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.d.ts +12 -0
  166. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.d.ts.map +1 -0
  167. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.js +127 -0
  168. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.js.map +1 -0
  169. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.d.ts +12 -0
  170. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.d.ts.map +1 -0
  171. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.js +114 -0
  172. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.js.map +1 -0
  173. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.d.ts +12 -0
  174. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.d.ts.map +1 -0
  175. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.js +136 -0
  176. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.js.map +1 -0
  177. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.d.ts +13 -0
  178. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.d.ts.map +1 -0
  179. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.js +13 -0
  180. package/dist/cjs/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.js.map +1 -0
  181. package/dist/cjs/src/lib/queue-messages/types/index.d.ts +1 -1
  182. package/dist/cjs/src/lib/queue-messages/types/index.d.ts.map +1 -1
  183. package/dist/cjs/src/lib/queue-rate-limit/queue-rate-limit.d.ts.map +1 -1
  184. package/dist/cjs/src/lib/queue-rate-limit/queue-rate-limit.js +160 -81
  185. package/dist/cjs/src/lib/queue-rate-limit/queue-rate-limit.js.map +1 -1
  186. package/dist/esm/src/common/types/event.d.ts +3 -3
  187. package/dist/esm/src/common/types/event.d.ts.map +1 -1
  188. package/dist/esm/src/lib/consumer/consumer/_/_get-consumer-queues.d.ts +4 -0
  189. package/dist/esm/src/lib/consumer/consumer/_/_get-consumer-queues.d.ts.map +1 -0
  190. package/dist/esm/src/lib/consumer/consumer/_/_get-consumer-queues.js +11 -0
  191. package/dist/esm/src/lib/consumer/consumer/_/_get-consumer-queues.js.map +1 -0
  192. package/dist/esm/src/lib/consumer/consumer/consumer.d.ts.map +1 -1
  193. package/dist/esm/src/lib/consumer/consumer/consumer.js +154 -29
  194. package/dist/esm/src/lib/consumer/consumer/consumer.js.map +1 -1
  195. package/dist/esm/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.d.ts +1 -1
  196. package/dist/esm/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.d.ts.map +1 -1
  197. package/dist/esm/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.js +48 -10
  198. package/dist/esm/src/lib/consumer/consumer-heartbeat/consumer-heartbeat.js.map +1 -1
  199. package/dist/esm/src/lib/consumer/message-handler/index.d.ts +2 -0
  200. package/dist/esm/src/lib/consumer/message-handler/index.d.ts.map +1 -0
  201. package/dist/esm/src/lib/consumer/message-handler/index.js +2 -0
  202. package/dist/esm/src/lib/consumer/message-handler/index.js.map +1 -0
  203. package/dist/esm/src/lib/consumer/message-handler/{consume-message → message-handler/consume-message}/consume-message.d.ts +13 -10
  204. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/consume-message.d.ts.map +1 -0
  205. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/consume-message.js +324 -0
  206. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/consume-message.js.map +1 -0
  207. package/dist/esm/src/lib/consumer/message-handler/{consume-message → message-handler/consume-message}/event-bus-publisher.d.ts +1 -1
  208. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/event-bus-publisher.d.ts.map +1 -0
  209. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/event-bus-publisher.js.map +1 -0
  210. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.d.ts +20 -0
  211. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.d.ts.map +1 -0
  212. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.js +183 -0
  213. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.js.map +1 -0
  214. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.d.ts +9 -0
  215. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.d.ts.map +1 -0
  216. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.js +29 -0
  217. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.js.map +1 -0
  218. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/index.d.ts +2 -0
  219. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/index.d.ts.map +1 -0
  220. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/index.js +2 -0
  221. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/index.js.map +1 -0
  222. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.d.ts +26 -0
  223. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.d.ts.map +1 -0
  224. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.js +22 -0
  225. package/dist/esm/src/lib/consumer/message-handler/message-handler/consume-message/types/message-unacknowledgement.js.map +1 -0
  226. package/dist/{cjs/src/lib/consumer → esm/src/lib/consumer/message-handler}/message-handler/dequeue-message/dequeue-message.d.ts +6 -6
  227. package/dist/esm/src/lib/consumer/message-handler/message-handler/dequeue-message/dequeue-message.d.ts.map +1 -0
  228. package/dist/esm/src/lib/consumer/message-handler/message-handler/dequeue-message/dequeue-message.js +396 -0
  229. package/dist/esm/src/lib/consumer/message-handler/message-handler/dequeue-message/dequeue-message.js.map +1 -0
  230. package/dist/esm/src/lib/consumer/message-handler/{dequeue-message → message-handler/dequeue-message}/event-bus-publisher.d.ts +1 -1
  231. package/dist/esm/src/lib/consumer/message-handler/message-handler/dequeue-message/event-bus-publisher.d.ts.map +1 -0
  232. package/dist/esm/src/lib/consumer/message-handler/message-handler/dequeue-message/event-bus-publisher.js.map +1 -0
  233. package/dist/esm/src/lib/consumer/message-handler/message-handler/message-handler.d.ts +3 -4
  234. package/dist/esm/src/lib/consumer/message-handler/message-handler/message-handler.d.ts.map +1 -1
  235. package/dist/esm/src/lib/consumer/message-handler/message-handler/message-handler.js +169 -56
  236. package/dist/esm/src/lib/consumer/message-handler/message-handler/message-handler.js.map +1 -1
  237. package/dist/esm/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.d.ts +13 -0
  238. package/dist/esm/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.d.ts.map +1 -0
  239. package/dist/esm/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.js +26 -0
  240. package/dist/esm/src/lib/consumer/message-handler/message-handler/multiplexed-message-handler.js.map +1 -0
  241. package/dist/esm/src/lib/consumer/message-handler-runner/message-handler-runner.d.ts +1 -1
  242. package/dist/esm/src/lib/consumer/message-handler-runner/message-handler-runner.d.ts.map +1 -1
  243. package/dist/esm/src/lib/consumer/message-handler-runner/message-handler-runner.js +84 -49
  244. package/dist/esm/src/lib/consumer/message-handler-runner/message-handler-runner.js.map +1 -1
  245. package/dist/esm/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.d.ts +5 -4
  246. package/dist/esm/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.d.ts.map +1 -1
  247. package/dist/esm/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.js +51 -17
  248. package/dist/esm/src/lib/consumer/message-handler-runner/multiplexed-message-handler-runner.js.map +1 -1
  249. package/dist/esm/src/lib/consumer/types/index.d.ts +1 -1
  250. package/dist/esm/src/lib/consumer/types/index.d.ts.map +1 -1
  251. package/dist/esm/src/lib/consumer/types/index.js +1 -1
  252. package/dist/esm/src/lib/consumer/types/index.js.map +1 -1
  253. package/dist/esm/src/lib/consumer/workers/delay-unacknowledged.worker.d.ts.map +1 -1
  254. package/dist/esm/src/lib/consumer/workers/delay-unacknowledged.worker.js +40 -9
  255. package/dist/esm/src/lib/consumer/workers/delay-unacknowledged.worker.js.map +1 -1
  256. package/dist/esm/src/lib/consumer/workers/publish-scheduled.worker.d.ts.map +1 -1
  257. package/dist/esm/src/lib/consumer/workers/publish-scheduled.worker.js +124 -66
  258. package/dist/esm/src/lib/consumer/workers/publish-scheduled.worker.js.map +1 -1
  259. package/dist/esm/src/lib/consumer/workers/requeue-unacknowledged.worker.d.ts.map +1 -1
  260. package/dist/esm/src/lib/consumer/workers/requeue-unacknowledged.worker.js +43 -9
  261. package/dist/esm/src/lib/consumer/workers/requeue-unacknowledged.worker.js.map +1 -1
  262. package/dist/esm/src/lib/consumer/workers/watch-consumers.worker.d.ts +3 -0
  263. package/dist/esm/src/lib/consumer/workers/watch-consumers.worker.d.ts.map +1 -1
  264. package/dist/esm/src/lib/consumer/workers/watch-consumers.worker.js +50 -10
  265. package/dist/esm/src/lib/consumer/workers/watch-consumers.worker.js.map +1 -1
  266. package/dist/esm/src/lib/consumer/workers/worker.d.ts.map +1 -1
  267. package/dist/esm/src/lib/consumer/workers/worker.js +22 -5
  268. package/dist/esm/src/lib/consumer/workers/worker.js.map +1 -1
  269. package/dist/esm/src/lib/consumer-groups/consumer-groups.d.ts +2 -2
  270. package/dist/esm/src/lib/consumer-groups/consumer-groups.d.ts.map +1 -1
  271. package/dist/esm/src/lib/consumer-groups/consumer-groups.js +159 -48
  272. package/dist/esm/src/lib/consumer-groups/consumer-groups.js.map +1 -1
  273. package/dist/esm/src/lib/exchange/exchange-abstract.js +1 -1
  274. package/dist/esm/src/lib/exchange/exchange-abstract.js.map +1 -1
  275. package/dist/esm/src/lib/exchange/exchange-fan-out/exchange-fan-out.d.ts +1 -0
  276. package/dist/esm/src/lib/exchange/exchange-fan-out/exchange-fan-out.d.ts.map +1 -1
  277. package/dist/esm/src/lib/exchange/exchange-fan-out/exchange-fan-out.js +331 -164
  278. package/dist/esm/src/lib/exchange/exchange-fan-out/exchange-fan-out.js.map +1 -1
  279. package/dist/esm/src/lib/exchange/exchange-topic/exchange-topic.d.ts +1 -0
  280. package/dist/esm/src/lib/exchange/exchange-topic/exchange-topic.d.ts.map +1 -1
  281. package/dist/esm/src/lib/exchange/exchange-topic/exchange-topic.js +36 -5
  282. package/dist/esm/src/lib/exchange/exchange-topic/exchange-topic.js.map +1 -1
  283. package/dist/esm/src/lib/message/message.d.ts.map +1 -1
  284. package/dist/esm/src/lib/message/message.js +174 -30
  285. package/dist/esm/src/lib/message/message.js.map +1 -1
  286. package/dist/esm/src/lib/namespace/namespace.d.ts.map +1 -1
  287. package/dist/esm/src/lib/namespace/namespace.js +156 -22
  288. package/dist/esm/src/lib/namespace/namespace.js.map +1 -1
  289. package/dist/esm/src/lib/producer/producer.d.ts.map +1 -1
  290. package/dist/esm/src/lib/producer/producer.js +125 -29
  291. package/dist/esm/src/lib/producer/producer.js.map +1 -1
  292. package/dist/esm/src/lib/producer/queue-consumer-groups-cache.d.ts +1 -1
  293. package/dist/esm/src/lib/producer/queue-consumer-groups-cache.d.ts.map +1 -1
  294. package/dist/esm/src/lib/producer/queue-consumer-groups-cache.js +115 -23
  295. package/dist/esm/src/lib/producer/queue-consumer-groups-cache.js.map +1 -1
  296. package/dist/esm/src/lib/queue/_/_delete-queue.d.ts.map +1 -1
  297. package/dist/esm/src/lib/queue/_/_delete-queue.js +4 -4
  298. package/dist/esm/src/lib/queue/_/_delete-queue.js.map +1 -1
  299. package/dist/esm/src/lib/queue/_/_get-queue-consumer-ids.d.ts +4 -0
  300. package/dist/esm/src/lib/queue/_/_get-queue-consumer-ids.d.ts.map +1 -0
  301. package/dist/esm/src/lib/queue/_/_get-queue-consumer-ids.js +6 -0
  302. package/dist/esm/src/lib/queue/_/_get-queue-consumer-ids.js.map +1 -0
  303. package/dist/esm/src/lib/queue/_/_get-queue-consumers.d.ts +4 -0
  304. package/dist/esm/src/lib/queue/_/_get-queue-consumers.d.ts.map +1 -0
  305. package/dist/esm/src/lib/queue/_/_get-queue-consumers.js +16 -0
  306. package/dist/esm/src/lib/queue/_/_get-queue-consumers.js.map +1 -0
  307. package/dist/esm/src/lib/queue/queue.d.ts +3 -1
  308. package/dist/esm/src/lib/queue/queue.d.ts.map +1 -1
  309. package/dist/esm/src/lib/queue/queue.js +271 -46
  310. package/dist/esm/src/lib/queue/queue.js.map +1 -1
  311. package/dist/esm/src/lib/queue-messages/index.d.ts +5 -5
  312. package/dist/esm/src/lib/queue-messages/index.d.ts.map +1 -1
  313. package/dist/esm/src/lib/queue-messages/index.js +5 -5
  314. package/dist/esm/src/lib/queue-messages/index.js.map +1 -1
  315. package/dist/esm/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.d.ts +5 -0
  316. package/dist/esm/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.d.ts.map +1 -0
  317. package/dist/esm/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.js +12 -0
  318. package/dist/esm/src/lib/queue-messages/queue-messages/queue-acknowledged-messages.js.map +1 -0
  319. package/dist/esm/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.d.ts +5 -0
  320. package/dist/esm/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.d.ts.map +1 -0
  321. package/dist/esm/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.js +12 -0
  322. package/dist/esm/src/lib/queue-messages/queue-messages/queue-dead-lettered-messages.js.map +1 -0
  323. package/dist/esm/src/lib/queue-messages/queue-messages/queue-messages.d.ts +24 -0
  324. package/dist/esm/src/lib/queue-messages/queue-messages/queue-messages.d.ts.map +1 -0
  325. package/dist/esm/src/lib/queue-messages/queue-messages/queue-messages.js +132 -0
  326. package/dist/esm/src/lib/queue-messages/queue-messages/queue-messages.js.map +1 -0
  327. package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/index.d.ts.map +1 -0
  328. package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/index.js.map +1 -0
  329. package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.d.ts +6 -0
  330. package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.d.ts.map +1 -0
  331. package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.js +13 -0
  332. package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/priority-queue-pending-messages.js.map +1 -0
  333. package/dist/esm/src/lib/queue-messages/{queue-pending-messages → queue-messages/queue-pending-messages}/queue-pending-messages.d.ts +9 -9
  334. package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/queue-pending-messages.d.ts.map +1 -0
  335. package/dist/esm/src/lib/queue-messages/{queue-pending-messages → queue-messages/queue-pending-messages}/queue-pending-messages.js +13 -13
  336. package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/queue-pending-messages.js.map +1 -0
  337. package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.d.ts +6 -0
  338. package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.d.ts.map +1 -0
  339. package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.js +13 -0
  340. package/dist/esm/src/lib/queue-messages/queue-messages/queue-pending-messages/sequential-queue-pending-messages.js.map +1 -0
  341. package/dist/esm/src/lib/queue-messages/queue-messages/queue-scheduled-messages.d.ts +5 -0
  342. package/dist/esm/src/lib/queue-messages/queue-messages/queue-scheduled-messages.d.ts.map +1 -0
  343. package/dist/esm/src/lib/queue-messages/queue-messages/queue-scheduled-messages.js +13 -0
  344. package/dist/esm/src/lib/queue-messages/queue-messages/queue-scheduled-messages.js.map +1 -0
  345. package/dist/esm/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.d.ts +25 -0
  346. package/dist/esm/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.d.ts.map +1 -0
  347. package/dist/esm/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.js +242 -0
  348. package/dist/esm/src/lib/queue-messages/queue-messages-manager/queue-messages-manager-abstract.js.map +1 -0
  349. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.d.ts +12 -0
  350. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.d.ts.map +1 -0
  351. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.js +123 -0
  352. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-message-storage-list.js.map +1 -0
  353. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.d.ts +12 -0
  354. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.d.ts.map +1 -0
  355. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.js +110 -0
  356. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-set.js.map +1 -0
  357. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.d.ts +12 -0
  358. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.d.ts.map +1 -0
  359. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.js +132 -0
  360. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage-sorted-set.js.map +1 -0
  361. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.d.ts +13 -0
  362. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.d.ts.map +1 -0
  363. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.js +11 -0
  364. package/dist/esm/src/lib/queue-messages/queue-messages-storage/queue-messages-storage.js.map +1 -0
  365. package/dist/esm/src/lib/queue-messages/types/index.d.ts +1 -1
  366. package/dist/esm/src/lib/queue-messages/types/index.d.ts.map +1 -1
  367. package/dist/esm/src/lib/queue-rate-limit/queue-rate-limit.d.ts.map +1 -1
  368. package/dist/esm/src/lib/queue-rate-limit/queue-rate-limit.js +160 -81
  369. package/dist/esm/src/lib/queue-rate-limit/queue-rate-limit.js.map +1 -1
  370. package/package.json +2 -2
  371. package/dist/cjs/src/lib/consumer/consumer-queues.d.ts +0 -8
  372. package/dist/cjs/src/lib/consumer/consumer-queues.d.ts.map +0 -1
  373. package/dist/cjs/src/lib/consumer/consumer-queues.js +0 -36
  374. package/dist/cjs/src/lib/consumer/consumer-queues.js.map +0 -1
  375. package/dist/cjs/src/lib/consumer/message-handler/consume-message/consume-message.d.ts.map +0 -1
  376. package/dist/cjs/src/lib/consumer/message-handler/consume-message/consume-message.js +0 -181
  377. package/dist/cjs/src/lib/consumer/message-handler/consume-message/consume-message.js.map +0 -1
  378. package/dist/cjs/src/lib/consumer/message-handler/consume-message/event-bus-publisher.d.ts.map +0 -1
  379. package/dist/cjs/src/lib/consumer/message-handler/consume-message/event-bus-publisher.js.map +0 -1
  380. package/dist/cjs/src/lib/consumer/message-handler/dequeue-message/dequeue-message.d.ts.map +0 -1
  381. package/dist/cjs/src/lib/consumer/message-handler/dequeue-message/dequeue-message.js +0 -282
  382. package/dist/cjs/src/lib/consumer/message-handler/dequeue-message/dequeue-message.js.map +0 -1
  383. package/dist/cjs/src/lib/consumer/message-handler/dequeue-message/event-bus-publisher.d.ts.map +0 -1
  384. package/dist/cjs/src/lib/consumer/message-handler/dequeue-message/event-bus-publisher.js.map +0 -1
  385. package/dist/cjs/src/lib/consumer/message-handler/multiplexed-message-handler.d.ts +0 -14
  386. package/dist/cjs/src/lib/consumer/message-handler/multiplexed-message-handler.d.ts.map +0 -1
  387. package/dist/cjs/src/lib/consumer/message-handler/multiplexed-message-handler.js +0 -21
  388. package/dist/cjs/src/lib/consumer/message-handler/multiplexed-message-handler.js.map +0 -1
  389. package/dist/cjs/src/lib/consumer/message-handler/processing-queue/processing-queue.d.ts +0 -10
  390. package/dist/cjs/src/lib/consumer/message-handler/processing-queue/processing-queue.d.ts.map +0 -1
  391. package/dist/cjs/src/lib/consumer/message-handler/processing-queue/processing-queue.js +0 -146
  392. package/dist/cjs/src/lib/consumer/message-handler/processing-queue/processing-queue.js.map +0 -1
  393. package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/index.d.ts +0 -2
  394. package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/index.d.ts.map +0 -1
  395. package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/index.js.map +0 -1
  396. package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/processing-queue.d.ts +0 -26
  397. package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/processing-queue.d.ts.map +0 -1
  398. package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/processing-queue.js +0 -25
  399. package/dist/cjs/src/lib/consumer/message-handler/processing-queue/types/processing-queue.js.map +0 -1
  400. package/dist/cjs/src/lib/queue-messages/queue-acknowledged-messages.d.ts +0 -6
  401. package/dist/cjs/src/lib/queue-messages/queue-acknowledged-messages.d.ts.map +0 -1
  402. package/dist/cjs/src/lib/queue-messages/queue-acknowledged-messages.js +0 -12
  403. package/dist/cjs/src/lib/queue-messages/queue-acknowledged-messages.js.map +0 -1
  404. package/dist/cjs/src/lib/queue-messages/queue-dead-lettered-messages.d.ts +0 -6
  405. package/dist/cjs/src/lib/queue-messages/queue-dead-lettered-messages.d.ts.map +0 -1
  406. package/dist/cjs/src/lib/queue-messages/queue-dead-lettered-messages.js +0 -12
  407. package/dist/cjs/src/lib/queue-messages/queue-dead-lettered-messages.js.map +0 -1
  408. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-abstract.d.ts +0 -23
  409. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-abstract.d.ts.map +0 -1
  410. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-abstract.js +0 -148
  411. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-abstract.js.map +0 -1
  412. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-list.d.ts +0 -9
  413. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-list.d.ts.map +0 -1
  414. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-list.js +0 -60
  415. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-list.js.map +0 -1
  416. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-set.d.ts +0 -9
  417. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-set.d.ts.map +0 -1
  418. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-set.js +0 -68
  419. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-set.js.map +0 -1
  420. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-sorted-set.d.ts +0 -9
  421. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-sorted-set.d.ts.map +0 -1
  422. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-sorted-set.js +0 -60
  423. package/dist/cjs/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-sorted-set.js.map +0 -1
  424. package/dist/cjs/src/lib/queue-messages/queue-messages.d.ts +0 -22
  425. package/dist/cjs/src/lib/queue-messages/queue-messages.d.ts.map +0 -1
  426. package/dist/cjs/src/lib/queue-messages/queue-messages.js +0 -119
  427. package/dist/cjs/src/lib/queue-messages/queue-messages.js.map +0 -1
  428. package/dist/cjs/src/lib/queue-messages/queue-pending-messages/index.d.ts.map +0 -1
  429. package/dist/cjs/src/lib/queue-messages/queue-pending-messages/index.js.map +0 -1
  430. package/dist/cjs/src/lib/queue-messages/queue-pending-messages/linear-queue-pending-messages.d.ts +0 -7
  431. package/dist/cjs/src/lib/queue-messages/queue-pending-messages/linear-queue-pending-messages.d.ts.map +0 -1
  432. package/dist/cjs/src/lib/queue-messages/queue-pending-messages/linear-queue-pending-messages.js +0 -13
  433. package/dist/cjs/src/lib/queue-messages/queue-pending-messages/linear-queue-pending-messages.js.map +0 -1
  434. package/dist/cjs/src/lib/queue-messages/queue-pending-messages/priority-queue-pending-messages.d.ts +0 -7
  435. package/dist/cjs/src/lib/queue-messages/queue-pending-messages/priority-queue-pending-messages.d.ts.map +0 -1
  436. package/dist/cjs/src/lib/queue-messages/queue-pending-messages/priority-queue-pending-messages.js +0 -13
  437. package/dist/cjs/src/lib/queue-messages/queue-pending-messages/priority-queue-pending-messages.js.map +0 -1
  438. package/dist/cjs/src/lib/queue-messages/queue-pending-messages/queue-pending-messages.d.ts.map +0 -1
  439. package/dist/cjs/src/lib/queue-messages/queue-pending-messages/queue-pending-messages.js.map +0 -1
  440. package/dist/cjs/src/lib/queue-messages/queue-scheduled-messages.d.ts +0 -6
  441. package/dist/cjs/src/lib/queue-messages/queue-scheduled-messages.d.ts.map +0 -1
  442. package/dist/cjs/src/lib/queue-messages/queue-scheduled-messages.js +0 -12
  443. package/dist/cjs/src/lib/queue-messages/queue-scheduled-messages.js.map +0 -1
  444. package/dist/esm/src/lib/consumer/consumer-queues.d.ts +0 -8
  445. package/dist/esm/src/lib/consumer/consumer-queues.d.ts.map +0 -1
  446. package/dist/esm/src/lib/consumer/consumer-queues.js +0 -33
  447. package/dist/esm/src/lib/consumer/consumer-queues.js.map +0 -1
  448. package/dist/esm/src/lib/consumer/message-handler/consume-message/consume-message.d.ts.map +0 -1
  449. package/dist/esm/src/lib/consumer/message-handler/consume-message/consume-message.js +0 -182
  450. package/dist/esm/src/lib/consumer/message-handler/consume-message/consume-message.js.map +0 -1
  451. package/dist/esm/src/lib/consumer/message-handler/consume-message/event-bus-publisher.d.ts.map +0 -1
  452. package/dist/esm/src/lib/consumer/message-handler/consume-message/event-bus-publisher.js.map +0 -1
  453. package/dist/esm/src/lib/consumer/message-handler/dequeue-message/dequeue-message.d.ts.map +0 -1
  454. package/dist/esm/src/lib/consumer/message-handler/dequeue-message/dequeue-message.js +0 -258
  455. package/dist/esm/src/lib/consumer/message-handler/dequeue-message/dequeue-message.js.map +0 -1
  456. package/dist/esm/src/lib/consumer/message-handler/dequeue-message/event-bus-publisher.d.ts.map +0 -1
  457. package/dist/esm/src/lib/consumer/message-handler/dequeue-message/event-bus-publisher.js.map +0 -1
  458. package/dist/esm/src/lib/consumer/message-handler/multiplexed-message-handler.d.ts +0 -14
  459. package/dist/esm/src/lib/consumer/message-handler/multiplexed-message-handler.d.ts.map +0 -1
  460. package/dist/esm/src/lib/consumer/message-handler/multiplexed-message-handler.js +0 -18
  461. package/dist/esm/src/lib/consumer/message-handler/multiplexed-message-handler.js.map +0 -1
  462. package/dist/esm/src/lib/consumer/message-handler/processing-queue/processing-queue.d.ts +0 -10
  463. package/dist/esm/src/lib/consumer/message-handler/processing-queue/processing-queue.d.ts.map +0 -1
  464. package/dist/esm/src/lib/consumer/message-handler/processing-queue/processing-queue.js +0 -143
  465. package/dist/esm/src/lib/consumer/message-handler/processing-queue/processing-queue.js.map +0 -1
  466. package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/index.d.ts +0 -2
  467. package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/index.d.ts.map +0 -1
  468. package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/index.js +0 -2
  469. package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/index.js.map +0 -1
  470. package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/processing-queue.d.ts +0 -26
  471. package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/processing-queue.d.ts.map +0 -1
  472. package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/processing-queue.js +0 -22
  473. package/dist/esm/src/lib/consumer/message-handler/processing-queue/types/processing-queue.js.map +0 -1
  474. package/dist/esm/src/lib/queue-messages/queue-acknowledged-messages.d.ts +0 -6
  475. package/dist/esm/src/lib/queue-messages/queue-acknowledged-messages.d.ts.map +0 -1
  476. package/dist/esm/src/lib/queue-messages/queue-acknowledged-messages.js +0 -5
  477. package/dist/esm/src/lib/queue-messages/queue-acknowledged-messages.js.map +0 -1
  478. package/dist/esm/src/lib/queue-messages/queue-dead-lettered-messages.d.ts +0 -6
  479. package/dist/esm/src/lib/queue-messages/queue-dead-lettered-messages.d.ts.map +0 -1
  480. package/dist/esm/src/lib/queue-messages/queue-dead-lettered-messages.js +0 -5
  481. package/dist/esm/src/lib/queue-messages/queue-dead-lettered-messages.js.map +0 -1
  482. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-abstract.d.ts +0 -23
  483. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-abstract.d.ts.map +0 -1
  484. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-abstract.js +0 -147
  485. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-abstract.js.map +0 -1
  486. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-list.d.ts +0 -9
  487. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-list.d.ts.map +0 -1
  488. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-list.js +0 -56
  489. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-list.js.map +0 -1
  490. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-set.d.ts +0 -9
  491. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-set.d.ts.map +0 -1
  492. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-set.js +0 -64
  493. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-set.js.map +0 -1
  494. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-sorted-set.d.ts +0 -9
  495. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-sorted-set.d.ts.map +0 -1
  496. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-sorted-set.js +0 -56
  497. package/dist/esm/src/lib/queue-messages/queue-messages-paginator/queue-messages-paginator-sorted-set.js.map +0 -1
  498. package/dist/esm/src/lib/queue-messages/queue-messages.d.ts +0 -22
  499. package/dist/esm/src/lib/queue-messages/queue-messages.d.ts.map +0 -1
  500. package/dist/esm/src/lib/queue-messages/queue-messages.js +0 -120
  501. package/dist/esm/src/lib/queue-messages/queue-messages.js.map +0 -1
  502. package/dist/esm/src/lib/queue-messages/queue-pending-messages/index.d.ts.map +0 -1
  503. package/dist/esm/src/lib/queue-messages/queue-pending-messages/index.js.map +0 -1
  504. package/dist/esm/src/lib/queue-messages/queue-pending-messages/linear-queue-pending-messages.d.ts +0 -7
  505. package/dist/esm/src/lib/queue-messages/queue-pending-messages/linear-queue-pending-messages.d.ts.map +0 -1
  506. package/dist/esm/src/lib/queue-messages/queue-pending-messages/linear-queue-pending-messages.js +0 -6
  507. package/dist/esm/src/lib/queue-messages/queue-pending-messages/linear-queue-pending-messages.js.map +0 -1
  508. package/dist/esm/src/lib/queue-messages/queue-pending-messages/priority-queue-pending-messages.d.ts +0 -7
  509. package/dist/esm/src/lib/queue-messages/queue-pending-messages/priority-queue-pending-messages.d.ts.map +0 -1
  510. package/dist/esm/src/lib/queue-messages/queue-pending-messages/priority-queue-pending-messages.js +0 -6
  511. package/dist/esm/src/lib/queue-messages/queue-pending-messages/priority-queue-pending-messages.js.map +0 -1
  512. package/dist/esm/src/lib/queue-messages/queue-pending-messages/queue-pending-messages.d.ts.map +0 -1
  513. package/dist/esm/src/lib/queue-messages/queue-pending-messages/queue-pending-messages.js.map +0 -1
  514. package/dist/esm/src/lib/queue-messages/queue-scheduled-messages.d.ts +0 -6
  515. package/dist/esm/src/lib/queue-messages/queue-scheduled-messages.d.ts.map +0 -1
  516. package/dist/esm/src/lib/queue-messages/queue-scheduled-messages.js +0 -5
  517. package/dist/esm/src/lib/queue-messages/queue-scheduled-messages.js.map +0 -1
  518. /package/dist/cjs/src/lib/consumer/message-handler/{consume-message → message-handler/consume-message}/event-bus-publisher.js +0 -0
  519. /package/dist/cjs/src/lib/consumer/message-handler/{dequeue-message → message-handler/dequeue-message}/event-bus-publisher.js +0 -0
  520. /package/dist/cjs/src/lib/queue-messages/{queue-pending-messages → queue-messages/queue-pending-messages}/index.d.ts +0 -0
  521. /package/dist/cjs/src/lib/queue-messages/{queue-pending-messages → queue-messages/queue-pending-messages}/index.js +0 -0
  522. /package/dist/esm/src/lib/consumer/message-handler/{consume-message → message-handler/consume-message}/event-bus-publisher.js +0 -0
  523. /package/dist/esm/src/lib/consumer/message-handler/{dequeue-message → message-handler/dequeue-message}/event-bus-publisher.js +0 -0
  524. /package/dist/esm/src/lib/queue-messages/{queue-pending-messages → queue-messages/queue-pending-messages}/index.d.ts +0 -0
  525. /package/dist/esm/src/lib/queue-messages/{queue-pending-messages → queue-messages/queue-pending-messages}/index.js +0 -0
@@ -0,0 +1,324 @@
1
+ import { stat } from 'fs';
2
+ import path from 'path';
3
+ import { CallbackEmptyReplyError, logger, Runnable, WorkerCallable, } from 'redis-smq-common';
4
+ import { ELuaScriptName } from '../../../../../common/redis-client/scripts/scripts.js';
5
+ import { redisKeys } from '../../../../../common/redis-keys/redis-keys.js';
6
+ import { Configuration } from '../../../../../config/index.js';
7
+ import { EMessageProperty, EMessagePropertyStatus, } from '../../../../message/index.js';
8
+ import { EMessageUnacknowledgementAction, EMessageUnacknowledgementReason, } from '../../../types/index.js';
9
+ import { ConsumerMessageHandlerFileError, ConsumerMessageHandlerFilenameExtensionError, } from '../../errors/index.js';
10
+ import { MessageUnacknowledgement } from './message-unacknowledgement.js';
11
+ import { eventBusPublisher } from './event-bus-publisher.js';
12
+ export class ConsumeMessage extends Runnable {
13
+ logger;
14
+ keyQueueProcessing;
15
+ keyQueueAcknowledged;
16
+ queue;
17
+ consumerId;
18
+ messageHandler;
19
+ messageHandlerId;
20
+ redisClient;
21
+ messageUnack;
22
+ consumeMessageWorker = null;
23
+ constructor(redisClient, consumer, queue, messageHandlerId, messageHandler, eventBus) {
24
+ super();
25
+ this.queue = queue;
26
+ this.consumerId = consumer.getId();
27
+ this.messageHandler = messageHandler;
28
+ this.messageHandlerId = messageHandlerId;
29
+ this.redisClient = redisClient;
30
+ this.messageUnack = new MessageUnacknowledgement(redisClient);
31
+ this.logger = logger.getLogger(Configuration.getSetConfig().logger, this.constructor.name.toLowerCase());
32
+ this.logger.debug(`Initializing ConsumeMessage for consumer ${this.consumerId}, queue ${JSON.stringify(this.queue)}, messageHandlerId ${this.messageHandlerId}`);
33
+ const { keyQueueProcessing } = redisKeys.getQueueConsumerKeys(this.queue.queueParams, this.consumerId);
34
+ const { keyQueueAcknowledged } = redisKeys.getQueueKeys(this.queue.queueParams, this.queue.groupId);
35
+ this.keyQueueAcknowledged = keyQueueAcknowledged;
36
+ this.keyQueueProcessing = keyQueueProcessing;
37
+ this.logger.debug(`Queue processing key: ${this.keyQueueProcessing}, acknowledged key: ${this.keyQueueAcknowledged}`);
38
+ if (eventBus) {
39
+ this.logger.debug('Event bus provided, setting up event bus publisher');
40
+ eventBusPublisher(this, eventBus, this.logger);
41
+ }
42
+ else {
43
+ this.logger.debug('No event bus provided, skipping event bus publisher setup');
44
+ }
45
+ this.logger.info(`ConsumeMessage initialized for consumer ${this.consumerId}, queue ${this.queue.queueParams.name}`);
46
+ }
47
+ getLogger() {
48
+ return this.logger;
49
+ }
50
+ acknowledgeMessage(message) {
51
+ const messageId = message.getId();
52
+ this.logger.debug(`Acknowledging message ${messageId}`);
53
+ const { store, queueSize, expire } = Configuration.getSetConfig().messages.store.acknowledged;
54
+ const { keyMessage } = redisKeys.getMessageKeys(messageId);
55
+ this.logger.debug(`Message key: ${keyMessage}, store: ${store}, queueSize: ${queueSize}, expire: ${expire}`);
56
+ const redisClient = this.redisClient.getInstance();
57
+ if (redisClient instanceof Error) {
58
+ this.logger.error(`Failed to get Redis client: ${redisClient.message}`);
59
+ this.handleError(redisClient);
60
+ return void 0;
61
+ }
62
+ this.logger.debug(`Running ACKNOWLEDGE_MESSAGE script for message ${messageId}`);
63
+ redisClient.runScript(ELuaScriptName.ACKNOWLEDGE_MESSAGE, [this.keyQueueProcessing, this.keyQueueAcknowledged, keyMessage], [
64
+ EMessageProperty.STATUS,
65
+ EMessagePropertyStatus.ACKNOWLEDGED,
66
+ Number(store),
67
+ expire,
68
+ queueSize * -1,
69
+ ], (err) => {
70
+ if (err) {
71
+ this.logger.error(`Failed to acknowledge message ${messageId}: ${err.message}`);
72
+ this.handleError(err);
73
+ }
74
+ else {
75
+ this.logger.info(`Message ${messageId} acknowledged successfully`);
76
+ this.emit('consumer.consumeMessage.messageAcknowledged', messageId, this.queue, this.messageHandlerId, this.consumerId);
77
+ this.logger.debug(`Emitted consumer.consumeMessage.messageAcknowledged event for message ${messageId}`);
78
+ }
79
+ });
80
+ }
81
+ unacknowledgeMessage(message, unacknowledgmentReason) {
82
+ this.messageUnack.unacknowledgeMessage(this.consumerId, message, unacknowledgmentReason, (err, reply) => {
83
+ if (err)
84
+ return this.handleError(err);
85
+ if (!reply)
86
+ return this.handleError(new CallbackEmptyReplyError());
87
+ this.handleMessageUnacknowledgementResult(unacknowledgmentReason, reply);
88
+ });
89
+ }
90
+ handleMessageUnacknowledgementResult(unacknowledgmentReason, messageUnacknowledgementStatus) {
91
+ for (const messageId in messageUnacknowledgementStatus) {
92
+ this.logger.info(`Message ${messageId} unacknowledged successfully with reason: ${unacknowledgmentReason}`);
93
+ this.emit('consumer.consumeMessage.messageUnacknowledged', messageId, this.queue, this.messageHandlerId, this.consumerId, unacknowledgmentReason);
94
+ this.logger.debug(`Emitted consumer.consumeMessage.messageUnacknowledged event for message ${messageId}`);
95
+ const unknowledgment = messageUnacknowledgementStatus[messageId];
96
+ if (unknowledgment.action === EMessageUnacknowledgementAction.DEAD_LETTER) {
97
+ this.logger.info(`Message ${messageId} moved to dead letter queue with reason: ${unknowledgment.deadLetterReason}`);
98
+ this.emit('consumer.consumeMessage.messageDeadLettered', messageId, this.queue, this.messageHandlerId, this.consumerId, unknowledgment.deadLetterReason);
99
+ this.logger.debug(`Emitted consumer.consumeMessage.messageDeadLettered event for message ${messageId}`);
100
+ }
101
+ else if (unknowledgment.action === EMessageUnacknowledgementAction.DELAY) {
102
+ this.logger.info(`Message ${messageId} delayed for retry`);
103
+ this.emit('consumer.consumeMessage.messageDelayed', messageId, this.queue, this.messageHandlerId, this.consumerId);
104
+ this.logger.debug(`Emitted consumer.consumeMessage.messageDelayed event for message ${messageId}`);
105
+ }
106
+ else {
107
+ this.logger.info(`Message ${messageId} requeued for retry`);
108
+ this.emit('consumer.consumeMessage.messageRequeued', messageId, this.queue, this.messageHandlerId, this.consumerId);
109
+ this.logger.debug(`Emitted consumer.consumeMessage.messageRequeued event for message ${messageId}`);
110
+ }
111
+ }
112
+ }
113
+ getConsumeMessageWorker(messageHandlerFilename) {
114
+ this.logger.debug(`Getting consume message worker for handler file: ${messageHandlerFilename}`);
115
+ if (!this.consumeMessageWorker) {
116
+ this.logger.debug(`Creating new WorkerCallable for handler file: ${messageHandlerFilename}`);
117
+ this.consumeMessageWorker = new WorkerCallable(messageHandlerFilename);
118
+ }
119
+ return this.consumeMessageWorker;
120
+ }
121
+ invokeMessageHandler(messageHandler, msg, cb) {
122
+ const messageId = msg.id;
123
+ this.logger.debug(`Invoking message handler for message ${messageId}`);
124
+ if (typeof messageHandler === 'string') {
125
+ this.logger.debug(`Using worker-based message handler: ${messageHandler}`);
126
+ this.getConsumeMessageWorker(messageHandler).call(msg, (err) => {
127
+ if (err) {
128
+ this.logger.error(`Worker-based message handler failed for message ${messageId}: ${err.message}`);
129
+ }
130
+ else {
131
+ this.logger.debug(`Worker-based message handler completed successfully for message ${messageId}`);
132
+ }
133
+ cb(err);
134
+ });
135
+ }
136
+ else {
137
+ this.logger.debug(`Using function-based message handler for message ${messageId}`);
138
+ try {
139
+ messageHandler(msg, (err) => {
140
+ if (err) {
141
+ this.logger.error(`Function-based message handler failed for message ${messageId}: ${err.message}`);
142
+ }
143
+ else {
144
+ this.logger.debug(`Function-based message handler completed successfully for message ${messageId}`);
145
+ }
146
+ cb(err);
147
+ });
148
+ }
149
+ catch (err) {
150
+ this.logger.error(`Exception in function-based message handler for message ${messageId}: ${err}`);
151
+ cb(err instanceof Error ? err : new Error(String(err)));
152
+ }
153
+ }
154
+ }
155
+ consumeMessage(msg) {
156
+ const messageId = msg.getId();
157
+ this.logger.debug(`Consuming message ${messageId}`);
158
+ let isTimeout = false;
159
+ let timer = null;
160
+ try {
161
+ const consumeTimeout = msg.producibleMessage.getConsumeTimeout();
162
+ if (consumeTimeout) {
163
+ this.logger.debug(`Setting consume timeout of ${consumeTimeout}ms for message ${messageId}`);
164
+ timer = setTimeout(() => {
165
+ isTimeout = true;
166
+ timer = null;
167
+ this.logger.warn(`Consume timeout (${consumeTimeout}ms) reached for message ${messageId}`);
168
+ this.unacknowledgeMessage(msg, EMessageUnacknowledgementReason.TIMEOUT);
169
+ }, consumeTimeout);
170
+ }
171
+ const onConsumed = (err) => {
172
+ if (this.isRunning() && !isTimeout) {
173
+ if (timer) {
174
+ this.logger.debug(`Clearing consume timeout for message ${messageId}`);
175
+ clearTimeout(timer);
176
+ }
177
+ if (err) {
178
+ this.logger.error(`Error consuming message ${messageId}: ${err.message}`);
179
+ this.unacknowledgeMessage(msg, EMessageUnacknowledgementReason.UNACKNOWLEDGED);
180
+ }
181
+ else {
182
+ this.logger.debug(`Message ${messageId} consumed successfully, acknowledging`);
183
+ this.acknowledgeMessage(msg);
184
+ }
185
+ }
186
+ else if (isTimeout) {
187
+ this.logger.debug(`Ignoring onConsumed callback for timed out message ${messageId}`);
188
+ }
189
+ else {
190
+ this.logger.debug(`Ignoring onConsumed callback for message ${messageId} as consumer is not running`);
191
+ }
192
+ };
193
+ this.logger.debug(`Transferring message ${messageId} for handler invocation`);
194
+ this.invokeMessageHandler(this.messageHandler, msg.transfer(), onConsumed);
195
+ }
196
+ catch (error) {
197
+ this.logger.error(`Exception during message consumption for message ${messageId}: ${error}`);
198
+ if (timer) {
199
+ this.logger.debug(`Clearing consume timeout for message ${messageId} due to exception`);
200
+ clearTimeout(timer);
201
+ }
202
+ this.unacknowledgeMessage(msg, EMessageUnacknowledgementReason.CONSUME_ERROR);
203
+ }
204
+ }
205
+ validateMessageHandler = (cb) => {
206
+ if (typeof this.messageHandler === 'string') {
207
+ this.logger.debug(`Validating message handler file: ${this.messageHandler}`);
208
+ const fileExtension = path.extname(this.messageHandler);
209
+ if (!['.js', '.cjs'].includes(fileExtension)) {
210
+ this.logger.error(`Invalid message handler file extension: ${fileExtension}, expected .js or .cjs`);
211
+ cb(new ConsumerMessageHandlerFilenameExtensionError());
212
+ }
213
+ else {
214
+ this.logger.debug(`Checking if message handler file exists: ${this.messageHandler}`);
215
+ stat(this.messageHandler, (err) => {
216
+ if (err) {
217
+ this.logger.error(`Message handler file not found: ${this.messageHandler}, error: ${err.message}`);
218
+ cb(new ConsumerMessageHandlerFileError());
219
+ }
220
+ else {
221
+ this.logger.debug(`Message handler file validated successfully: ${this.messageHandler}`);
222
+ cb();
223
+ }
224
+ });
225
+ }
226
+ }
227
+ else {
228
+ this.logger.debug('Using function-based message handler, no file validation needed');
229
+ cb();
230
+ }
231
+ };
232
+ goingUp() {
233
+ this.logger.info(`ConsumeMessage going up for consumer ${this.consumerId}, queue ${this.queue.queueParams.name}`);
234
+ return super.goingUp().concat([
235
+ (cb) => {
236
+ this.logger.debug('Initializing Redis client');
237
+ this.redisClient.init((err) => {
238
+ if (err) {
239
+ this.logger.error(`Failed to initialize Redis client: ${err.message}`);
240
+ }
241
+ else {
242
+ this.logger.debug('Redis client initialized successfully');
243
+ }
244
+ cb(err);
245
+ });
246
+ },
247
+ (cb) => {
248
+ this.logger.debug('Validating message handler');
249
+ this.validateMessageHandler((err) => {
250
+ if (err) {
251
+ this.logger.error(`Message handler validation failed: ${err.message}`);
252
+ }
253
+ else {
254
+ this.logger.debug('Message handler validated successfully');
255
+ }
256
+ cb(err);
257
+ });
258
+ },
259
+ ]);
260
+ }
261
+ goingDown() {
262
+ this.logger.info(`ConsumeMessage going down for consumer ${this.consumerId}, queue ${this.queue.queueParams.name}`);
263
+ return [
264
+ (cb) => {
265
+ this.logger.debug('Unacknowledging any processing messages');
266
+ const unacknowledgementReason = EMessageUnacknowledgementReason.OFFLINE_MESSAGE_HANDLER;
267
+ this.messageUnack.unacknowledgeMessagesInProcess(this.consumerId, [this.queue.queueParams], unacknowledgementReason, (err, result) => {
268
+ if (err) {
269
+ this.logger.warn(`Error during message unacknowledgement: ${err.message} (ignoring)`);
270
+ }
271
+ else if (result) {
272
+ this.handleMessageUnacknowledgementResult(unacknowledgementReason, result);
273
+ }
274
+ else {
275
+ this.logger.debug('No messages to unacknowledge during cleanup');
276
+ }
277
+ cb();
278
+ });
279
+ },
280
+ (cb) => {
281
+ if (this.consumeMessageWorker) {
282
+ this.logger.debug('Shutting down consume message worker');
283
+ this.consumeMessageWorker.shutdown((err) => {
284
+ if (err) {
285
+ this.logger.warn(`Error shutting down consume message worker: ${err.message}`);
286
+ }
287
+ else {
288
+ this.logger.debug('Consume message worker shut down successfully');
289
+ }
290
+ cb();
291
+ });
292
+ }
293
+ else {
294
+ this.logger.debug('No consume message worker to shut down');
295
+ cb();
296
+ }
297
+ },
298
+ ].concat(super.goingDown());
299
+ }
300
+ handleError(err) {
301
+ this.logger.error(`ConsumeMessage error: ${err.message}`, err);
302
+ this.emit('consumer.consumeMessage.error', err, this.consumerId, this.queue);
303
+ this.logger.debug(`Emitted consumer.consumeMessage.error event`);
304
+ super.handleError(err);
305
+ }
306
+ handleReceivedMessage(message) {
307
+ const messageId = message.getId();
308
+ this.logger.debug(`Received message ${messageId}`);
309
+ if (this.isRunning()) {
310
+ if (message.getSetExpired()) {
311
+ this.logger.info(`Message ${messageId} has expired, unacknowledging with TTL_EXPIRED reason`);
312
+ this.unacknowledgeMessage(message, EMessageUnacknowledgementReason.TTL_EXPIRED);
313
+ }
314
+ else {
315
+ this.logger.debug(`Message ${messageId} is valid, proceeding with consumption`);
316
+ this.consumeMessage(message);
317
+ }
318
+ }
319
+ else {
320
+ this.logger.warn(`Ignoring received message ${messageId} as consumer is not running`);
321
+ }
322
+ }
323
+ }
324
+ //# sourceMappingURL=consume-message.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consume-message.js","sourceRoot":"","sources":["../../../../../../../../src/lib/consumer/message-handler/message-handler/consume-message/consume-message.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ILogger } from 'redis-smq-common';
2
- import { EventBus } from '../../../event-bus/index.js';
2
+ import { EventBus } from '../../../../event-bus/index.js';
3
3
  import { ConsumeMessage } from './consume-message.js';
4
4
  export declare function eventBusPublisher(consumeMessage: ConsumeMessage, eventBus: EventBus, logger: ILogger): void;
5
5
  //# sourceMappingURL=event-bus-publisher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-bus-publisher.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/consumer/message-handler/message-handler/consume-message/event-bus-publisher.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,wBAAgB,iBAAiB,CAC/B,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,OAAO,GACd,IAAI,CAgDN"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-bus-publisher.js","sourceRoot":"","sources":["../../../../../../../../src/lib/consumer/message-handler/message-handler/consume-message/event-bus-publisher.ts"],"names":[],"mappings":"AAcA,MAAM,UAAU,iBAAiB,CAC/B,cAA8B,EAC9B,QAAkB,EAClB,MAAe;IAEf,MAAM,mBAAmB,GACvB,CAAC,GAAG,IAAI,EAAE,EAAE;QACV,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,QAAQ,YAAY,KAAK;YAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;;YAEpD,QAAQ,CAAC,IAAI,CAAC,6CAA6C,EAAE,GAAG,IAAI,CAAC,CAAC;IAC1E,CAAC,CAAC;IACJ,MAAM,cAAc,GAClB,CAAC,GAAG,IAAI,EAAE,EAAE;QACV,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,QAAQ,YAAY,KAAK;YAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;;YACjD,QAAQ,CAAC,IAAI,CAAC,wCAAwC,EAAE,GAAG,IAAI,CAAC,CAAC;IACxE,CAAC,CAAC;IACJ,MAAM,eAAe,GACnB,CAAC,GAAG,IAAI,EAAE,EAAE;QACV,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,QAAQ,YAAY,KAAK;YAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;;YACjD,QAAQ,CAAC,IAAI,CAAC,yCAAyC,EAAE,GAAG,IAAI,CAAC,CAAC;IACzE,CAAC,CAAC;IACJ,MAAM,mBAAmB,GACvB,CAAC,GAAG,IAAI,EAAE,EAAE;QACV,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,QAAQ,YAAY,KAAK;YAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;;YAEpD,QAAQ,CAAC,IAAI,CAAC,6CAA6C,EAAE,GAAG,IAAI,CAAC,CAAC;IAC1E,CAAC,CAAC;IACJ,MAAM,qBAAqB,GACzB,CAAC,GAAG,IAAI,EAAE,EAAE;QACV,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,QAAQ,YAAY,KAAK;YAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;;YAEpD,QAAQ,CAAC,IAAI,CAAC,+CAA+C,EAAE,GAAG,IAAI,CAAC,CAAC;IAC5E,CAAC,CAAC;IACJ,MAAM,KAAK,GAAkE,CAC3E,GAAG,IAAI,EACP,EAAE;QACF,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,QAAQ,YAAY,KAAK;YAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;;YACjD,QAAQ,CAAC,IAAI,CAAC,+BAA+B,EAAE,GAAG,IAAI,CAAC,CAAC;IAC/D,CAAC,CAAC;IACF,cAAc;SACX,EAAE,CAAC,+BAA+B,EAAE,KAAK,CAAC;SAC1C,EAAE,CAAC,+CAA+C,EAAE,qBAAqB,CAAC;SAC1E,EAAE,CAAC,6CAA6C,EAAE,mBAAmB,CAAC;SACtE,EAAE,CAAC,6CAA6C,EAAE,mBAAmB,CAAC;SACtE,EAAE,CAAC,yCAAyC,EAAE,eAAe,CAAC;SAC9D,EAAE,CAAC,wCAAwC,EAAE,cAAc,CAAC,CAAC;AAClE,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { ICallback } from 'redis-smq-common';
2
+ import { RedisClient } from '../../../../../common/redis-client/redis-client.js';
3
+ import { MessageEnvelope } from '../../../../message/message-envelope.js';
4
+ import { IQueueParams } from '../../../../queue/index.js';
5
+ import { EMessageUnacknowledgementReason, TMessageUnacknowledgementAction, TMessageUnacknowledgementStatus } from './types/index.js';
6
+ export declare class MessageUnacknowledgement {
7
+ protected readonly logger: import("redis-smq-common").ILogger;
8
+ protected readonly redisClient: RedisClient;
9
+ constructor(redisClient: RedisClient);
10
+ protected getMessageUnacknowledgementAction(message: MessageEnvelope, unacknowledgedReason: EMessageUnacknowledgementReason): TMessageUnacknowledgementAction;
11
+ protected getMessageUnacknowledgementParameters(consumerId: string, messageOrQueue: MessageEnvelope | IQueueParams, unacknowledgementReason: EMessageUnacknowledgementReason, done: ICallback<{
12
+ keys: string[];
13
+ args: (string | number)[];
14
+ unacknowledgementStatus: TMessageUnacknowledgementStatus;
15
+ }>): void;
16
+ protected executeMessageUnacknowledgement(keys: string[], argv: (string | number)[], messageHandlingStatus: TMessageUnacknowledgementStatus, cb: ICallback<TMessageUnacknowledgementStatus>): void;
17
+ unacknowledgeMessage(consumerId: string, msg: MessageEnvelope, unacknowledgementReason: EMessageUnacknowledgementReason, cb: ICallback<TMessageUnacknowledgementStatus>): void;
18
+ unacknowledgeMessagesInProcess(consumerId: string, queues: IQueueParams[] | null, unacknowledgementReason: EMessageUnacknowledgementReason, cb: ICallback<TMessageUnacknowledgementStatus>): void;
19
+ }
20
+ //# sourceMappingURL=message-unacknowledgement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-unacknowledgement.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.ts"],"names":[],"mappings":"AASA,OAAO,EAGL,SAAS,EAEV,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,oDAAoD,CAAC;AAQjF,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAI1D,OAAO,EAGL,+BAA+B,EAC/B,+BAA+B,EAC/B,+BAA+B,EAChC,MAAM,kBAAkB,CAAC;AAW1B,qBAAa,wBAAwB;IACnC,SAAS,CAAC,QAAQ,CAAC,MAAM,qCAAC;IAC1B,SAAS,CAAC,QAAQ,CAAC,WAAW,cAAC;gBAOnB,WAAW,EAAE,WAAW;IAepC,SAAS,CAAC,iCAAiC,CACzC,OAAO,EAAE,eAAe,EACxB,oBAAoB,EAAE,+BAA+B,GACpD,+BAA+B;IA+ClC,SAAS,CAAC,qCAAqC,CAC7C,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,eAAe,GAAG,YAAY,EAC9C,uBAAuB,EAAE,+BAA+B,EACxD,IAAI,EAAE,SAAS,CAAC;QACd,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;QAC1B,uBAAuB,EAAE,+BAA+B,CAAC;KAC1D,CAAC,GACD,IAAI;IAiGP,SAAS,CAAC,+BAA+B,CACvC,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EACzB,qBAAqB,EAAE,+BAA+B,EACtD,EAAE,EAAE,SAAS,CAAC,+BAA+B,CAAC,GAC7C,IAAI;IA8DA,oBAAoB,CACzB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,eAAe,EACpB,uBAAuB,EAAE,+BAA+B,EACxD,EAAE,EAAE,SAAS,CAAC,+BAA+B,CAAC,GAC7C,IAAI;IA4BA,8BAA8B,CACnC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,EAC7B,uBAAuB,EAAE,+BAA+B,EACxD,EAAE,EAAE,SAAS,CAAC,+BAA+B,CAAC,GAC7C,IAAI;CA2FR"}
@@ -0,0 +1,183 @@
1
+ import { async, CallbackEmptyReplyError, logger, } from 'redis-smq-common';
2
+ import { ELuaScriptName } from '../../../../../common/redis-client/scripts/scripts.js';
3
+ import { redisKeys } from '../../../../../common/redis-keys/redis-keys.js';
4
+ import { Configuration } from '../../../../../config/index.js';
5
+ import { EMessageProperty, EMessagePropertyStatus, } from '../../../../message/index.js';
6
+ import { MessageEnvelope } from '../../../../message/message-envelope.js';
7
+ import { _getConsumerQueues } from '../../../consumer/_/_get-consumer-queues.js';
8
+ import { ConsumerError } from '../../../errors/index.js';
9
+ import { processingQueue } from './processing-queue.js';
10
+ import { EMessageUnacknowledgementAction, EMessageUnacknowledgementDeadLetterReason, EMessageUnacknowledgementReason, } from './types/index.js';
11
+ export class MessageUnacknowledgement {
12
+ logger;
13
+ redisClient;
14
+ constructor(redisClient) {
15
+ this.redisClient = redisClient;
16
+ this.logger = logger.getLogger(Configuration.getSetConfig().logger, this.constructor.name.toLowerCase());
17
+ }
18
+ getMessageUnacknowledgementAction(message, unacknowledgedReason) {
19
+ if (unacknowledgedReason === EMessageUnacknowledgementReason.TTL_EXPIRED ||
20
+ message.getSetExpired()) {
21
+ return {
22
+ action: EMessageUnacknowledgementAction.DEAD_LETTER,
23
+ deadLetterReason: EMessageUnacknowledgementDeadLetterReason.TTL_EXPIRED,
24
+ };
25
+ }
26
+ if (message.isPeriodic()) {
27
+ return {
28
+ action: EMessageUnacknowledgementAction.DEAD_LETTER,
29
+ deadLetterReason: EMessageUnacknowledgementDeadLetterReason.PERIODIC_MESSAGE,
30
+ };
31
+ }
32
+ if (message.hasRetryThresholdExceeded()) {
33
+ return {
34
+ action: EMessageUnacknowledgementAction.DEAD_LETTER,
35
+ deadLetterReason: EMessageUnacknowledgementDeadLetterReason.RETRY_THRESHOLD_EXCEEDED,
36
+ };
37
+ }
38
+ const delay = message.producibleMessage.getRetryDelay();
39
+ return delay
40
+ ? { action: EMessageUnacknowledgementAction.DELAY }
41
+ : { action: EMessageUnacknowledgementAction.REQUEUE };
42
+ }
43
+ getMessageUnacknowledgementParameters(consumerId, messageOrQueue, unacknowledgementReason, done) {
44
+ const [queue, message] = messageOrQueue instanceof MessageEnvelope
45
+ ? [messageOrQueue.getDestinationQueue(), messageOrQueue]
46
+ : [messageOrQueue, null];
47
+ const keys = [];
48
+ const args = [];
49
+ const unacknowledgementStatus = {};
50
+ args.push(JSON.stringify(queue), consumerId);
51
+ const { keyConsumerQueues } = redisKeys.getConsumerKeys(consumerId);
52
+ const { keyQueueProcessing } = redisKeys.getQueueConsumerKeys(queue, consumerId);
53
+ const { keyQueueDL, keyQueueProcessingQueues, keyQueueConsumers, keyQueueProperties, keyQueueDelayed, keyQueueRequeued, } = redisKeys.getQueueKeys(queue, null);
54
+ keys.push(keyQueueProcessing, keyQueueDelayed, keyQueueRequeued, keyQueueDL, keyQueueProcessingQueues, keyQueueConsumers, keyConsumerQueues, keyQueueProperties);
55
+ if (!message) {
56
+ keys.push('');
57
+ args.push('', '', '', unacknowledgementReason, '');
58
+ return done(null, { keys, args, unacknowledgementStatus });
59
+ }
60
+ const messageId = message.getId();
61
+ const { keyMessage } = redisKeys.getMessageKeys(messageId);
62
+ keys.push(keyMessage);
63
+ args.push(messageId);
64
+ const unacknowledgementAction = this.getMessageUnacknowledgementAction(message, unacknowledgementReason);
65
+ const { action } = unacknowledgementAction;
66
+ const messageStatus = action === EMessageUnacknowledgementAction.DEAD_LETTER
67
+ ? EMessagePropertyStatus.DEAD_LETTERED
68
+ : action === EMessageUnacknowledgementAction.REQUEUE
69
+ ? EMessagePropertyStatus.UNACK_REQUEUING
70
+ : EMessagePropertyStatus.UNACK_DELAYING;
71
+ args.push(action, action === EMessageUnacknowledgementAction.DEAD_LETTER
72
+ ? unacknowledgementAction.deadLetterReason
73
+ : '', unacknowledgementReason, messageStatus);
74
+ unacknowledgementStatus[messageId] = unacknowledgementAction;
75
+ done(null, {
76
+ args,
77
+ keys,
78
+ unacknowledgementStatus,
79
+ });
80
+ }
81
+ executeMessageUnacknowledgement(keys, argv, messageHandlingStatus, cb) {
82
+ this.redisClient.getSetInstance((err, client) => {
83
+ if (err)
84
+ return cb(err);
85
+ if (!client)
86
+ return cb(new CallbackEmptyReplyError());
87
+ const { store, expire, queueSize } = Configuration.getSetConfig().messages.store.deadLettered;
88
+ const execKeys = [...keys];
89
+ const execArgs = [
90
+ EMessageUnacknowledgementAction.DELAY,
91
+ EMessageUnacknowledgementAction.REQUEUE,
92
+ EMessageUnacknowledgementAction.DEAD_LETTER,
93
+ Number(store),
94
+ expire,
95
+ queueSize * -1,
96
+ EMessageProperty.STATUS,
97
+ EMessageUnacknowledgementReason.OFFLINE_CONSUMER,
98
+ EMessageUnacknowledgementReason.OFFLINE_MESSAGE_HANDLER,
99
+ ...argv,
100
+ ];
101
+ client.runScript(ELuaScriptName.HANDLE_PROCESSING_QUEUE, execKeys, execArgs, (err, reply) => {
102
+ if (err) {
103
+ return cb(err);
104
+ }
105
+ if (reply !== 'OK') {
106
+ return cb(new ConsumerError(reply ? String(reply) : undefined));
107
+ }
108
+ Object.keys(messageHandlingStatus).forEach((messageId) => {
109
+ const action = messageHandlingStatus[messageId].action ===
110
+ EMessageUnacknowledgementAction.DEAD_LETTER
111
+ ? 'dead-lettered'
112
+ : 'unacknowledged';
113
+ this.logger.debug(`Message ID ${messageId} has been ${action}.`);
114
+ });
115
+ cb(null, messageHandlingStatus);
116
+ });
117
+ });
118
+ }
119
+ unacknowledgeMessage(consumerId, msg, unacknowledgementReason, cb) {
120
+ this.getMessageUnacknowledgementParameters(consumerId, msg, unacknowledgementReason, (err, reply) => {
121
+ if (err)
122
+ return cb(err);
123
+ if (!reply)
124
+ return cb(new CallbackEmptyReplyError());
125
+ const { keys, args, unacknowledgementStatus } = reply;
126
+ this.executeMessageUnacknowledgement(keys, args, unacknowledgementStatus ?? {}, cb);
127
+ });
128
+ }
129
+ unacknowledgeMessagesInProcess(consumerId, queues, unacknowledgementReason, cb) {
130
+ const keys = [];
131
+ const args = [];
132
+ const messageHandlingStatus = {};
133
+ async.waterfall([
134
+ (next) => {
135
+ if (queues === null) {
136
+ this.redisClient.getSetInstance((err, client) => {
137
+ if (err)
138
+ return next(err);
139
+ if (!client)
140
+ return next(new CallbackEmptyReplyError());
141
+ _getConsumerQueues(client, consumerId, next);
142
+ });
143
+ }
144
+ else {
145
+ next(null, queues);
146
+ }
147
+ },
148
+ (queueParams, next) => {
149
+ if (!queueParams.length) {
150
+ return next();
151
+ }
152
+ async.eachOf(queueParams, (queue, _, done) => {
153
+ const { keyQueueProcessing } = redisKeys.getQueueConsumerKeys(queue, consumerId);
154
+ processingQueue.fetchMessageFromProcessingQueue(this.redisClient, keyQueueProcessing, (err, message) => {
155
+ if (err)
156
+ return done(err);
157
+ this.getMessageUnacknowledgementParameters(consumerId, message ?? queue, unacknowledgementReason, (err, reply) => {
158
+ if (err) {
159
+ return done(err);
160
+ }
161
+ if (!reply) {
162
+ return done(new CallbackEmptyReplyError());
163
+ }
164
+ keys.push(...reply.keys);
165
+ args.push(...reply.args);
166
+ Object.assign(messageHandlingStatus, reply.unacknowledgementStatus);
167
+ done();
168
+ });
169
+ });
170
+ }, next);
171
+ },
172
+ ], (err) => {
173
+ if (err) {
174
+ return cb(err);
175
+ }
176
+ if (!keys.length) {
177
+ return cb(null, {});
178
+ }
179
+ this.executeMessageUnacknowledgement(keys, args, messageHandlingStatus, cb);
180
+ });
181
+ }
182
+ }
183
+ //# sourceMappingURL=message-unacknowledgement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-unacknowledgement.js","sourceRoot":"","sources":["../../../../../../../../src/lib/consumer/message-handler/message-handler/consume-message/message-unacknowledgement.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { ICallback, IRedisClient } from 'redis-smq-common';
2
+ import { RedisClient } from '../../../../../common/redis-client/redis-client.js';
3
+ import { MessageEnvelope } from '../../../../message/message-envelope.js';
4
+ import { IQueueParams } from '../../../../queue/index.js';
5
+ export declare const processingQueue: {
6
+ fetchMessageFromProcessingQueue(redisClient: RedisClient, keyQueueProcessing: string, cb: ICallback<MessageEnvelope>): void;
7
+ getQueueProcessingQueues(redisClient: IRedisClient, queue: IQueueParams, cb: ICallback<Record<string, string>>): void;
8
+ };
9
+ //# sourceMappingURL=processing-queue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processing-queue.d.ts","sourceRoot":"","sources":["../../../../../../../../src/lib/consumer/message-handler/message-handler/consume-message/processing-queue.ts"],"names":[],"mappings":"AASA,OAAO,EAEL,SAAS,EACT,YAAY,EACb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,oDAAoD,CAAC;AAGjF,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,eAAO,MAAM,eAAe;iDAEX,WAAW,sBACJ,MAAM,MACtB,SAAS,CAAC,eAAe,CAAC,GAC7B,IAAI;0CAiBQ,YAAY,SAClB,YAAY,MACf,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GACpC,IAAI;CAIR,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { CallbackEmptyReplyError, } from 'redis-smq-common';
2
+ import { redisKeys } from '../../../../../common/redis-keys/redis-keys.js';
3
+ import { _getMessage } from '../../../../message/_/_get-message.js';
4
+ export const processingQueue = {
5
+ fetchMessageFromProcessingQueue(redisClient, keyQueueProcessing, cb) {
6
+ redisClient.getSetInstance((err, client) => {
7
+ if (err)
8
+ return cb(err);
9
+ if (!client)
10
+ return cb(new CallbackEmptyReplyError());
11
+ client.lrange(keyQueueProcessing, 0, 0, (err, range) => {
12
+ if (err) {
13
+ return cb(err);
14
+ }
15
+ if (range && range.length) {
16
+ _getMessage(client, range[0], cb);
17
+ }
18
+ else {
19
+ cb();
20
+ }
21
+ });
22
+ });
23
+ },
24
+ getQueueProcessingQueues(redisClient, queue, cb) {
25
+ const { keyQueueProcessingQueues } = redisKeys.getQueueKeys(queue, null);
26
+ redisClient.hgetall(keyQueueProcessingQueues, cb);
27
+ },
28
+ };
29
+ //# sourceMappingURL=processing-queue.js.map