@azure/service-bus 7.10.0-beta.1 → 7.10.0-beta.3

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 (848) hide show
  1. package/README.md +114 -57
  2. package/dist/browser/connectionContext.d.ts +109 -0
  3. package/dist/browser/connectionContext.d.ts.map +1 -0
  4. package/{dist-esm/src → dist/browser}/connectionContext.js +9 -9
  5. package/dist/browser/connectionContext.js.map +1 -0
  6. package/dist/browser/constructorHelpers.d.ts +79 -0
  7. package/dist/browser/constructorHelpers.d.ts.map +1 -0
  8. package/{dist-esm/src → dist/browser}/constructorHelpers.js +5 -5
  9. package/dist/browser/constructorHelpers.js.map +1 -0
  10. package/dist/browser/core/autoLockRenewer.d.ts +58 -0
  11. package/dist/browser/core/autoLockRenewer.d.ts.map +1 -0
  12. package/{dist-esm/src → dist/browser}/core/autoLockRenewer.js +12 -8
  13. package/dist/browser/core/autoLockRenewer.js.map +1 -0
  14. package/dist/browser/core/batchingReceiver.d.ts +120 -0
  15. package/dist/browser/core/batchingReceiver.d.ts.map +1 -0
  16. package/{dist-esm/src → dist/browser}/core/batchingReceiver.js +23 -13
  17. package/dist/browser/core/batchingReceiver.js.map +1 -0
  18. package/dist/browser/core/linkEntity.d.ts +192 -0
  19. package/dist/browser/core/linkEntity.d.ts.map +1 -0
  20. package/{dist-esm/src → dist/browser}/core/linkEntity.js +77 -14
  21. package/dist/browser/core/linkEntity.js.map +1 -0
  22. package/dist/browser/core/managementClient.d.ts +312 -0
  23. package/dist/browser/core/managementClient.d.ts.map +1 -0
  24. package/{dist-esm/src → dist/browser}/core/managementClient.js +37 -33
  25. package/dist/browser/core/managementClient.js.map +1 -0
  26. package/dist/browser/core/messageReceiver.d.ts +147 -0
  27. package/dist/browser/core/messageReceiver.d.ts.map +1 -0
  28. package/{dist-esm/src → dist/browser}/core/messageReceiver.js +36 -14
  29. package/dist/browser/core/messageReceiver.js.map +1 -0
  30. package/dist/browser/core/messageSender.d.ts +93 -0
  31. package/dist/browser/core/messageSender.d.ts.map +1 -0
  32. package/{dist-esm/src → dist/browser}/core/messageSender.js +36 -12
  33. package/dist/browser/core/messageSender.js.map +1 -0
  34. package/dist/browser/core/receiverHelper.d.ts +45 -0
  35. package/dist/browser/core/receiverHelper.d.ts.map +1 -0
  36. package/{dist-esm/src → dist/browser}/core/receiverHelper.js +6 -5
  37. package/dist/browser/core/receiverHelper.js.map +1 -0
  38. package/dist/browser/core/shared.d.ts +34 -0
  39. package/dist/browser/core/shared.d.ts.map +1 -0
  40. package/{dist-esm/src → dist/browser}/core/shared.js +3 -3
  41. package/dist/browser/core/shared.js.map +1 -0
  42. package/dist/browser/core/streamingReceiver.d.ts +142 -0
  43. package/dist/browser/core/streamingReceiver.d.ts.map +1 -0
  44. package/{dist-esm/src → dist/browser}/core/streamingReceiver.js +73 -36
  45. package/dist/browser/core/streamingReceiver.js.map +1 -0
  46. package/dist/browser/dataTransformer.d.ts +77 -0
  47. package/dist/browser/dataTransformer.d.ts.map +1 -0
  48. package/{dist-esm/src → dist/browser}/dataTransformer.js +2 -2
  49. package/dist/browser/dataTransformer.js.map +1 -0
  50. package/dist/browser/diagnostics/instrumentServiceBusMessage.d.ts +50 -0
  51. package/dist/browser/diagnostics/instrumentServiceBusMessage.d.ts.map +1 -0
  52. package/{dist-esm/src → dist/browser}/diagnostics/instrumentServiceBusMessage.js +2 -2
  53. package/dist/browser/diagnostics/instrumentServiceBusMessage.js.map +1 -0
  54. package/dist/browser/diagnostics/tracing.d.ts +21 -0
  55. package/dist/browser/diagnostics/tracing.d.ts.map +1 -0
  56. package/{dist-esm/src → dist/browser}/diagnostics/tracing.js +2 -2
  57. package/dist/browser/diagnostics/tracing.js.map +1 -0
  58. package/dist/browser/experimental/index.d.ts +10 -0
  59. package/dist/browser/experimental/index.d.ts.map +1 -0
  60. package/dist/browser/experimental/index.js +4 -0
  61. package/dist/browser/experimental/index.js.map +1 -0
  62. package/dist/browser/index.d.ts +26 -0
  63. package/dist/browser/index.d.ts.map +1 -0
  64. package/{dist-esm/src → dist/browser}/index.js +5 -5
  65. package/dist/browser/index.js.map +1 -0
  66. package/dist/browser/log.d.ts +70 -0
  67. package/dist/browser/log.d.ts.map +1 -0
  68. package/{dist-esm/src → dist/browser}/log.js +1 -1
  69. package/dist/browser/log.js.map +1 -0
  70. package/dist/browser/models.d.ts +328 -0
  71. package/dist/browser/models.d.ts.map +1 -0
  72. package/dist/browser/models.js +4 -0
  73. package/dist/browser/models.js.map +1 -0
  74. package/dist/browser/modelsToBeSharedWithEventHubs.d.ts +18 -0
  75. package/dist/browser/modelsToBeSharedWithEventHubs.d.ts.map +1 -0
  76. package/dist/browser/modelsToBeSharedWithEventHubs.js +4 -0
  77. package/dist/browser/modelsToBeSharedWithEventHubs.js.map +1 -0
  78. package/dist/browser/package.json +3 -0
  79. package/dist/browser/receivers/receiver.d.ts +299 -0
  80. package/dist/browser/receivers/receiver.d.ts.map +1 -0
  81. package/{dist-esm/src → dist/browser}/receivers/receiver.js +40 -22
  82. package/dist/browser/receivers/receiver.js.map +1 -0
  83. package/dist/browser/receivers/receiverCommon.d.ts +81 -0
  84. package/dist/browser/receivers/receiverCommon.d.ts.map +1 -0
  85. package/{dist-esm/src → dist/browser}/receivers/receiverCommon.js +7 -8
  86. package/dist/browser/receivers/receiverCommon.js.map +1 -0
  87. package/dist/browser/receivers/sessionReceiver.d.ts +189 -0
  88. package/dist/browser/receivers/sessionReceiver.d.ts.map +1 -0
  89. package/{dist-esm/src → dist/browser}/receivers/sessionReceiver.js +32 -24
  90. package/dist/browser/receivers/sessionReceiver.js.map +1 -0
  91. package/dist/browser/sender.d.ts +125 -0
  92. package/dist/browser/sender.d.ts.map +1 -0
  93. package/{dist-esm/src → dist/browser}/sender.js +19 -13
  94. package/dist/browser/sender.js.map +1 -0
  95. package/dist/browser/serializers/namespaceResourceSerializer.d.ts +46 -0
  96. package/dist/browser/serializers/namespaceResourceSerializer.d.ts.map +1 -0
  97. package/{dist-esm/src → dist/browser}/serializers/namespaceResourceSerializer.js +3 -3
  98. package/dist/browser/serializers/namespaceResourceSerializer.js.map +1 -0
  99. package/dist/browser/serializers/queueResourceSerializer.d.ts +461 -0
  100. package/dist/browser/serializers/queueResourceSerializer.d.ts.map +1 -0
  101. package/{dist-esm/src → dist/browser}/serializers/queueResourceSerializer.js +4 -4
  102. package/dist/browser/serializers/queueResourceSerializer.js.map +1 -0
  103. package/dist/browser/serializers/ruleResourceSerializer.d.ts +135 -0
  104. package/dist/browser/serializers/ruleResourceSerializer.d.ts.map +1 -0
  105. package/{dist-esm/src → dist/browser}/serializers/ruleResourceSerializer.js +4 -4
  106. package/dist/browser/serializers/ruleResourceSerializer.js.map +1 -0
  107. package/dist/browser/serializers/subscriptionResourceSerializer.d.ts +396 -0
  108. package/dist/browser/serializers/subscriptionResourceSerializer.d.ts.map +1 -0
  109. package/{dist-esm/src → dist/browser}/serializers/subscriptionResourceSerializer.js +5 -5
  110. package/dist/browser/serializers/subscriptionResourceSerializer.js.map +1 -0
  111. package/dist/browser/serializers/topicResourceSerializer.d.ts +335 -0
  112. package/dist/browser/serializers/topicResourceSerializer.d.ts.map +1 -0
  113. package/{dist-esm/src → dist/browser}/serializers/topicResourceSerializer.js +4 -4
  114. package/dist/browser/serializers/topicResourceSerializer.js.map +1 -0
  115. package/dist/browser/serviceBusAtomManagementClient.d.ts +652 -0
  116. package/dist/browser/serviceBusAtomManagementClient.d.ts.map +1 -0
  117. package/{dist-esm/src → dist/browser}/serviceBusAtomManagementClient.js +78 -109
  118. package/dist/browser/serviceBusAtomManagementClient.js.map +1 -0
  119. package/dist/browser/serviceBusClient.d.ts +231 -0
  120. package/dist/browser/serviceBusClient.d.ts.map +1 -0
  121. package/{dist-esm/src → dist/browser}/serviceBusClient.js +24 -11
  122. package/dist/browser/serviceBusClient.js.map +1 -0
  123. package/dist/browser/serviceBusError.d.ts +119 -0
  124. package/dist/browser/serviceBusError.d.ts.map +1 -0
  125. package/{dist-esm/src → dist/browser}/serviceBusError.js +21 -1
  126. package/dist/browser/serviceBusError.js.map +1 -0
  127. package/dist/browser/serviceBusMessage.d.ts +529 -0
  128. package/dist/browser/serviceBusMessage.d.ts.map +1 -0
  129. package/{dist-esm/src → dist/browser}/serviceBusMessage.js +193 -5
  130. package/dist/browser/serviceBusMessage.js.map +1 -0
  131. package/dist/browser/serviceBusMessageBatch.d.ts +153 -0
  132. package/dist/browser/serviceBusMessageBatch.d.ts.map +1 -0
  133. package/{dist-esm/src → dist/browser}/serviceBusMessageBatch.js +37 -13
  134. package/dist/browser/serviceBusMessageBatch.js.map +1 -0
  135. package/dist/browser/serviceBusRuleManager.d.ts +103 -0
  136. package/dist/browser/serviceBusRuleManager.d.ts.map +1 -0
  137. package/{dist-esm/src → dist/browser}/serviceBusRuleManager.js +16 -13
  138. package/dist/browser/serviceBusRuleManager.js.map +1 -0
  139. package/dist/browser/session/messageSession.d.ts +236 -0
  140. package/dist/browser/session/messageSession.d.ts.map +1 -0
  141. package/{dist-esm/src → dist/browser}/session/messageSession.js +145 -30
  142. package/dist/browser/session/messageSession.js.map +1 -0
  143. package/dist/browser/util/atomXmlHelper.d.ts +56 -0
  144. package/dist/browser/util/atomXmlHelper.d.ts.map +1 -0
  145. package/{dist-esm/src → dist/browser}/util/atomXmlHelper.js +7 -7
  146. package/dist/browser/util/atomXmlHelper.js.map +1 -0
  147. package/dist/browser/util/compat/compatibility.d.ts +109 -0
  148. package/dist/browser/util/compat/compatibility.d.ts.map +1 -0
  149. package/{dist-esm/src → dist/browser}/util/compat/compatibility.js +2 -2
  150. package/dist/browser/util/compat/compatibility.js.map +1 -0
  151. package/dist/browser/util/compat/httpHeaders.d.ts +136 -0
  152. package/dist/browser/util/compat/httpHeaders.d.ts.map +1 -0
  153. package/{dist-esm/src → dist/browser}/util/compat/httpHeaders.js +2 -1
  154. package/dist/browser/util/compat/httpHeaders.js.map +1 -0
  155. package/dist/browser/util/compat/index.d.ts +3 -0
  156. package/dist/browser/util/compat/index.d.ts.map +1 -0
  157. package/dist/browser/util/compat/index.js +5 -0
  158. package/dist/browser/util/compat/index.js.map +1 -0
  159. package/dist/browser/util/connectionStringUtils.d.ts +53 -0
  160. package/dist/browser/util/connectionStringUtils.d.ts.map +1 -0
  161. package/{dist-esm/src → dist/browser}/util/connectionStringUtils.js +8 -2
  162. package/dist/browser/util/connectionStringUtils.js.map +1 -0
  163. package/dist/browser/util/constants.d.ts +322 -0
  164. package/dist/browser/util/constants.d.ts.map +1 -0
  165. package/{dist-esm/src → dist/browser}/util/constants.js +3 -3
  166. package/{dist-esm/src → dist/browser}/util/constants.js.map +1 -1
  167. package/dist/browser/util/crypto-browser.d.mts.map +1 -0
  168. package/dist/browser/util/crypto-browser.mjs.map +1 -0
  169. package/dist/browser/util/crypto.d.ts +5 -0
  170. package/{dist-esm/src/util/crypto.browser.js → dist/browser/util/crypto.js} +2 -4
  171. package/dist/browser/util/errors.d.ts +130 -0
  172. package/dist/browser/util/errors.d.ts.map +1 -0
  173. package/{dist-esm/src → dist/browser}/util/errors.js +4 -4
  174. package/dist/browser/util/errors.js.map +1 -0
  175. package/dist/browser/util/parseUrl-browser.d.mts.map +1 -0
  176. package/dist/browser/util/parseUrl-browser.mjs.map +1 -0
  177. package/dist/browser/util/parseUrl.d.ts +5 -0
  178. package/{dist-esm/src/util/parseUrl.browser.js → dist/browser/util/parseUrl.js} +1 -3
  179. package/dist/browser/util/runtimeInfo-browser.d.mts.map +1 -0
  180. package/dist/browser/util/runtimeInfo-browser.mjs.map +1 -0
  181. package/dist/browser/util/runtimeInfo.d.ts +7 -0
  182. package/{dist-esm/src/util/runtimeInfo.browser.js → dist/browser/util/runtimeInfo.js} +2 -2
  183. package/dist/browser/util/sasServiceClientCredentials.d.ts +31 -0
  184. package/dist/browser/util/sasServiceClientCredentials.d.ts.map +1 -0
  185. package/{dist-esm/src → dist/browser}/util/sasServiceClientCredentials.js +9 -3
  186. package/dist/browser/util/sasServiceClientCredentials.js.map +1 -0
  187. package/dist/browser/util/semaphore.d.ts +38 -0
  188. package/dist/browser/util/semaphore.d.ts.map +1 -0
  189. package/{dist-esm/src → dist/browser}/util/semaphore.js +7 -3
  190. package/dist/browser/util/semaphore.js.map +1 -0
  191. package/dist/browser/util/typeGuards.d.ts +8 -0
  192. package/dist/browser/util/typeGuards.d.ts.map +1 -0
  193. package/{dist-esm/src → dist/browser}/util/typeGuards.js +2 -2
  194. package/dist/browser/util/typeGuards.js.map +1 -0
  195. package/dist/browser/util/utils.d.ts +247 -0
  196. package/dist/browser/util/utils.d.ts.map +1 -0
  197. package/{dist-esm/src → dist/browser}/util/utils.js +5 -7
  198. package/dist/browser/util/utils.js.map +1 -0
  199. package/dist/commonjs/connectionContext.d.ts +109 -0
  200. package/dist/commonjs/connectionContext.d.ts.map +1 -0
  201. package/dist/commonjs/connectionContext.js +358 -0
  202. package/dist/commonjs/connectionContext.js.map +1 -0
  203. package/dist/commonjs/constructorHelpers.d.ts +79 -0
  204. package/dist/commonjs/constructorHelpers.d.ts.map +1 -0
  205. package/dist/commonjs/constructorHelpers.js +103 -0
  206. package/dist/commonjs/constructorHelpers.js.map +1 -0
  207. package/dist/commonjs/core/autoLockRenewer.d.ts +58 -0
  208. package/dist/commonjs/core/autoLockRenewer.d.ts.map +1 -0
  209. package/dist/commonjs/core/autoLockRenewer.js +178 -0
  210. package/dist/commonjs/core/autoLockRenewer.js.map +1 -0
  211. package/dist/commonjs/core/batchingReceiver.d.ts +120 -0
  212. package/dist/commonjs/core/batchingReceiver.d.ts.map +1 -0
  213. package/dist/commonjs/core/batchingReceiver.js +405 -0
  214. package/dist/commonjs/core/batchingReceiver.js.map +1 -0
  215. package/dist/commonjs/core/linkEntity.d.ts +192 -0
  216. package/dist/commonjs/core/linkEntity.d.ts.map +1 -0
  217. package/dist/commonjs/core/linkEntity.js +344 -0
  218. package/dist/commonjs/core/linkEntity.js.map +1 -0
  219. package/dist/commonjs/core/managementClient.d.ts +312 -0
  220. package/dist/commonjs/core/managementClient.d.ts.map +1 -0
  221. package/dist/commonjs/core/managementClient.js +1078 -0
  222. package/dist/commonjs/core/managementClient.js.map +1 -0
  223. package/dist/commonjs/core/messageReceiver.d.ts +147 -0
  224. package/dist/commonjs/core/messageReceiver.d.ts.map +1 -0
  225. package/dist/commonjs/core/messageReceiver.js +169 -0
  226. package/dist/commonjs/core/messageReceiver.js.map +1 -0
  227. package/dist/commonjs/core/messageSender.d.ts +93 -0
  228. package/dist/commonjs/core/messageSender.d.ts.map +1 -0
  229. package/dist/commonjs/core/messageSender.js +307 -0
  230. package/dist/commonjs/core/messageSender.js.map +1 -0
  231. package/dist/commonjs/core/receiverHelper.d.ts +45 -0
  232. package/dist/commonjs/core/receiverHelper.d.ts.map +1 -0
  233. package/dist/commonjs/core/receiverHelper.js +123 -0
  234. package/dist/commonjs/core/receiverHelper.js.map +1 -0
  235. package/dist/commonjs/core/shared.d.ts +34 -0
  236. package/dist/commonjs/core/shared.d.ts.map +1 -0
  237. package/dist/commonjs/core/shared.js +70 -0
  238. package/dist/commonjs/core/shared.js.map +1 -0
  239. package/dist/commonjs/core/streamingReceiver.d.ts +142 -0
  240. package/dist/commonjs/core/streamingReceiver.d.ts.map +1 -0
  241. package/dist/commonjs/core/streamingReceiver.js +526 -0
  242. package/dist/commonjs/core/streamingReceiver.js.map +1 -0
  243. package/dist/commonjs/dataTransformer.d.ts +77 -0
  244. package/dist/commonjs/dataTransformer.d.ts.map +1 -0
  245. package/dist/commonjs/dataTransformer.js +169 -0
  246. package/dist/commonjs/dataTransformer.js.map +1 -0
  247. package/dist/commonjs/diagnostics/instrumentServiceBusMessage.d.ts +50 -0
  248. package/dist/commonjs/diagnostics/instrumentServiceBusMessage.d.ts.map +1 -0
  249. package/dist/commonjs/diagnostics/instrumentServiceBusMessage.js +107 -0
  250. package/dist/commonjs/diagnostics/instrumentServiceBusMessage.js.map +1 -0
  251. package/dist/commonjs/diagnostics/tracing.d.ts +21 -0
  252. package/dist/commonjs/diagnostics/tracing.d.ts.map +1 -0
  253. package/dist/commonjs/diagnostics/tracing.js +41 -0
  254. package/dist/commonjs/diagnostics/tracing.js.map +1 -0
  255. package/dist/commonjs/experimental/index.d.ts +10 -0
  256. package/dist/commonjs/experimental/index.d.ts.map +1 -0
  257. package/dist/commonjs/experimental/index.js +5 -0
  258. package/dist/commonjs/experimental/index.js.map +1 -0
  259. package/dist/commonjs/index.d.ts +26 -0
  260. package/dist/commonjs/index.d.ts.map +1 -0
  261. package/dist/commonjs/index.js +22 -0
  262. package/dist/commonjs/index.js.map +1 -0
  263. package/dist/commonjs/log.d.ts +70 -0
  264. package/dist/commonjs/log.d.ts.map +1 -0
  265. package/dist/commonjs/log.js +94 -0
  266. package/dist/commonjs/log.js.map +1 -0
  267. package/dist/commonjs/models.d.ts +328 -0
  268. package/dist/commonjs/models.d.ts.map +1 -0
  269. package/dist/commonjs/models.js +5 -0
  270. package/dist/commonjs/models.js.map +1 -0
  271. package/dist/commonjs/modelsToBeSharedWithEventHubs.d.ts +18 -0
  272. package/dist/commonjs/modelsToBeSharedWithEventHubs.d.ts.map +1 -0
  273. package/dist/commonjs/modelsToBeSharedWithEventHubs.js +5 -0
  274. package/dist/commonjs/modelsToBeSharedWithEventHubs.js.map +1 -0
  275. package/dist/commonjs/package.json +3 -0
  276. package/dist/commonjs/receivers/receiver.d.ts +299 -0
  277. package/dist/commonjs/receivers/receiver.d.ts.map +1 -0
  278. package/dist/commonjs/receivers/receiver.js +383 -0
  279. package/dist/commonjs/receivers/receiver.js.map +1 -0
  280. package/dist/commonjs/receivers/receiverCommon.d.ts +81 -0
  281. package/dist/commonjs/receivers/receiverCommon.d.ts.map +1 -0
  282. package/dist/commonjs/receivers/receiverCommon.js +269 -0
  283. package/dist/commonjs/receivers/receiverCommon.js.map +1 -0
  284. package/dist/commonjs/receivers/sessionReceiver.d.ts +189 -0
  285. package/dist/commonjs/receivers/sessionReceiver.d.ts.map +1 -0
  286. package/dist/commonjs/receivers/sessionReceiver.js +432 -0
  287. package/dist/commonjs/receivers/sessionReceiver.js.map +1 -0
  288. package/dist/commonjs/sender.d.ts +125 -0
  289. package/dist/commonjs/sender.d.ts.map +1 -0
  290. package/dist/commonjs/sender.js +191 -0
  291. package/dist/commonjs/sender.js.map +1 -0
  292. package/dist/commonjs/serializers/namespaceResourceSerializer.d.ts +46 -0
  293. package/dist/commonjs/serializers/namespaceResourceSerializer.d.ts.map +1 -0
  294. package/dist/commonjs/serializers/namespaceResourceSerializer.js +39 -0
  295. package/dist/commonjs/serializers/namespaceResourceSerializer.js.map +1 -0
  296. package/dist/commonjs/serializers/queueResourceSerializer.d.ts +461 -0
  297. package/dist/commonjs/serializers/queueResourceSerializer.d.ts.map +1 -0
  298. package/dist/commonjs/serializers/queueResourceSerializer.js +107 -0
  299. package/dist/commonjs/serializers/queueResourceSerializer.js.map +1 -0
  300. package/dist/commonjs/serializers/ruleResourceSerializer.d.ts +135 -0
  301. package/dist/commonjs/serializers/ruleResourceSerializer.d.ts.map +1 -0
  302. package/dist/commonjs/serializers/ruleResourceSerializer.js +287 -0
  303. package/dist/commonjs/serializers/ruleResourceSerializer.js.map +1 -0
  304. package/dist/commonjs/serializers/subscriptionResourceSerializer.d.ts +396 -0
  305. package/dist/commonjs/serializers/subscriptionResourceSerializer.d.ts.map +1 -0
  306. package/dist/commonjs/serializers/subscriptionResourceSerializer.js +103 -0
  307. package/dist/commonjs/serializers/subscriptionResourceSerializer.js.map +1 -0
  308. package/dist/commonjs/serializers/topicResourceSerializer.d.ts +335 -0
  309. package/dist/commonjs/serializers/topicResourceSerializer.d.ts.map +1 -0
  310. package/dist/commonjs/serializers/topicResourceSerializer.js +97 -0
  311. package/dist/commonjs/serializers/topicResourceSerializer.js.map +1 -0
  312. package/dist/commonjs/serviceBusAtomManagementClient.d.ts +652 -0
  313. package/dist/commonjs/serviceBusAtomManagementClient.d.ts.map +1 -0
  314. package/dist/commonjs/serviceBusAtomManagementClient.js +1648 -0
  315. package/dist/commonjs/serviceBusAtomManagementClient.js.map +1 -0
  316. package/dist/commonjs/serviceBusClient.d.ts +231 -0
  317. package/dist/commonjs/serviceBusClient.d.ts.map +1 -0
  318. package/dist/commonjs/serviceBusClient.js +221 -0
  319. package/dist/commonjs/serviceBusClient.js.map +1 -0
  320. package/dist/commonjs/serviceBusError.d.ts +119 -0
  321. package/dist/commonjs/serviceBusError.d.ts.map +1 -0
  322. package/dist/commonjs/serviceBusError.js +109 -0
  323. package/dist/commonjs/serviceBusError.js.map +1 -0
  324. package/dist/commonjs/serviceBusMessage.d.ts +529 -0
  325. package/dist/commonjs/serviceBusMessage.d.ts.map +1 -0
  326. package/dist/commonjs/serviceBusMessage.js +611 -0
  327. package/dist/commonjs/serviceBusMessage.js.map +1 -0
  328. package/dist/commonjs/serviceBusMessageBatch.d.ts +153 -0
  329. package/dist/commonjs/serviceBusMessageBatch.d.ts.map +1 -0
  330. package/dist/commonjs/serviceBusMessageBatch.js +196 -0
  331. package/dist/commonjs/serviceBusMessageBatch.js.map +1 -0
  332. package/dist/commonjs/serviceBusRuleManager.d.ts +103 -0
  333. package/dist/commonjs/serviceBusRuleManager.d.ts.map +1 -0
  334. package/dist/commonjs/serviceBusRuleManager.js +153 -0
  335. package/dist/commonjs/serviceBusRuleManager.js.map +1 -0
  336. package/dist/commonjs/session/messageSession.d.ts +236 -0
  337. package/dist/commonjs/session/messageSession.d.ts.map +1 -0
  338. package/dist/commonjs/session/messageSession.js +759 -0
  339. package/dist/commonjs/session/messageSession.js.map +1 -0
  340. package/dist/commonjs/tsdoc-metadata.json +11 -0
  341. package/dist/commonjs/util/atomXmlHelper.d.ts +56 -0
  342. package/dist/commonjs/util/atomXmlHelper.d.ts.map +1 -0
  343. package/dist/commonjs/util/atomXmlHelper.js +386 -0
  344. package/dist/commonjs/util/atomXmlHelper.js.map +1 -0
  345. package/dist/commonjs/util/compat/compatibility.d.ts +109 -0
  346. package/dist/commonjs/util/compat/compatibility.d.ts.map +1 -0
  347. package/dist/commonjs/util/compat/compatibility.js +30 -0
  348. package/dist/commonjs/util/compat/compatibility.js.map +1 -0
  349. package/dist/commonjs/util/compat/httpHeaders.d.ts +136 -0
  350. package/dist/commonjs/util/compat/httpHeaders.d.ts.map +1 -0
  351. package/dist/commonjs/util/compat/httpHeaders.js +157 -0
  352. package/dist/commonjs/util/compat/httpHeaders.js.map +1 -0
  353. package/dist/commonjs/util/compat/index.d.ts +3 -0
  354. package/dist/commonjs/util/compat/index.d.ts.map +1 -0
  355. package/dist/commonjs/util/compat/index.js +8 -0
  356. package/dist/commonjs/util/compat/index.js.map +1 -0
  357. package/dist/commonjs/util/connectionStringUtils.d.ts +53 -0
  358. package/dist/commonjs/util/connectionStringUtils.d.ts.map +1 -0
  359. package/dist/commonjs/util/connectionStringUtils.js +51 -0
  360. package/dist/commonjs/util/connectionStringUtils.js.map +1 -0
  361. package/dist/commonjs/util/constants.d.ts +322 -0
  362. package/dist/commonjs/util/constants.d.ts.map +1 -0
  363. package/dist/commonjs/util/constants.js +327 -0
  364. package/dist/commonjs/util/constants.js.map +1 -0
  365. package/dist/commonjs/util/crypto.d.ts +5 -0
  366. package/dist/commonjs/util/crypto.d.ts.map +1 -0
  367. package/dist/commonjs/util/crypto.js +15 -0
  368. package/dist/commonjs/util/crypto.js.map +1 -0
  369. package/dist/commonjs/util/errors.d.ts +130 -0
  370. package/dist/commonjs/util/errors.d.ts.map +1 -0
  371. package/dist/commonjs/util/errors.js +236 -0
  372. package/dist/commonjs/util/errors.js.map +1 -0
  373. package/dist/commonjs/util/parseUrl.d.ts +5 -0
  374. package/dist/commonjs/util/parseUrl.d.ts.map +1 -0
  375. package/dist/commonjs/util/parseUrl.js +13 -0
  376. package/dist/commonjs/util/parseUrl.js.map +1 -0
  377. package/dist/commonjs/util/runtimeInfo.d.ts +7 -0
  378. package/dist/commonjs/util/runtimeInfo.d.ts.map +1 -0
  379. package/dist/commonjs/util/runtimeInfo.js +24 -0
  380. package/dist/commonjs/util/runtimeInfo.js.map +1 -0
  381. package/dist/commonjs/util/sasServiceClientCredentials.d.ts +31 -0
  382. package/dist/commonjs/util/sasServiceClientCredentials.d.ts.map +1 -0
  383. package/dist/commonjs/util/sasServiceClientCredentials.js +56 -0
  384. package/dist/commonjs/util/sasServiceClientCredentials.js.map +1 -0
  385. package/dist/commonjs/util/semaphore.d.ts +38 -0
  386. package/dist/commonjs/util/semaphore.d.ts.map +1 -0
  387. package/dist/commonjs/util/semaphore.js +85 -0
  388. package/dist/commonjs/util/semaphore.js.map +1 -0
  389. package/dist/commonjs/util/typeGuards.d.ts +8 -0
  390. package/dist/commonjs/util/typeGuards.d.ts.map +1 -0
  391. package/dist/commonjs/util/typeGuards.js +15 -0
  392. package/dist/commonjs/util/typeGuards.js.map +1 -0
  393. package/dist/commonjs/util/utils.d.ts +247 -0
  394. package/dist/commonjs/util/utils.d.ts.map +1 -0
  395. package/dist/commonjs/util/utils.js +524 -0
  396. package/dist/commonjs/util/utils.js.map +1 -0
  397. package/dist/esm/connectionContext.d.ts +109 -0
  398. package/dist/esm/connectionContext.d.ts.map +1 -0
  399. package/dist/esm/connectionContext.js +355 -0
  400. package/dist/esm/connectionContext.js.map +1 -0
  401. package/dist/esm/constructorHelpers.d.ts +79 -0
  402. package/dist/esm/constructorHelpers.d.ts.map +1 -0
  403. package/dist/esm/constructorHelpers.js +96 -0
  404. package/dist/esm/constructorHelpers.js.map +1 -0
  405. package/dist/esm/core/autoLockRenewer.d.ts +58 -0
  406. package/dist/esm/core/autoLockRenewer.d.ts.map +1 -0
  407. package/dist/esm/core/autoLockRenewer.js +174 -0
  408. package/dist/esm/core/autoLockRenewer.js.map +1 -0
  409. package/dist/esm/core/batchingReceiver.d.ts +120 -0
  410. package/dist/esm/core/batchingReceiver.d.ts.map +1 -0
  411. package/dist/esm/core/batchingReceiver.js +399 -0
  412. package/dist/esm/core/batchingReceiver.js.map +1 -0
  413. package/dist/esm/core/linkEntity.d.ts +192 -0
  414. package/dist/esm/core/linkEntity.d.ts.map +1 -0
  415. package/dist/esm/core/linkEntity.js +340 -0
  416. package/dist/esm/core/linkEntity.js.map +1 -0
  417. package/dist/esm/core/managementClient.d.ts +312 -0
  418. package/dist/esm/core/managementClient.d.ts.map +1 -0
  419. package/dist/esm/core/managementClient.js +1072 -0
  420. package/dist/esm/core/managementClient.js.map +1 -0
  421. package/dist/esm/core/messageReceiver.d.ts +147 -0
  422. package/dist/esm/core/messageReceiver.d.ts.map +1 -0
  423. package/dist/esm/core/messageReceiver.js +165 -0
  424. package/dist/esm/core/messageReceiver.js.map +1 -0
  425. package/dist/esm/core/messageSender.d.ts +93 -0
  426. package/dist/esm/core/messageSender.d.ts.map +1 -0
  427. package/dist/esm/core/messageSender.js +303 -0
  428. package/dist/esm/core/messageSender.js.map +1 -0
  429. package/dist/esm/core/receiverHelper.d.ts +45 -0
  430. package/dist/esm/core/receiverHelper.d.ts.map +1 -0
  431. package/dist/esm/core/receiverHelper.js +119 -0
  432. package/dist/esm/core/receiverHelper.js.map +1 -0
  433. package/dist/esm/core/shared.d.ts +34 -0
  434. package/dist/esm/core/shared.d.ts.map +1 -0
  435. package/dist/esm/core/shared.js +66 -0
  436. package/dist/esm/core/shared.js.map +1 -0
  437. package/dist/esm/core/streamingReceiver.d.ts +142 -0
  438. package/dist/esm/core/streamingReceiver.d.ts.map +1 -0
  439. package/dist/esm/core/streamingReceiver.js +522 -0
  440. package/dist/esm/core/streamingReceiver.js.map +1 -0
  441. package/dist/esm/dataTransformer.d.ts +77 -0
  442. package/dist/esm/dataTransformer.d.ts.map +1 -0
  443. package/dist/esm/dataTransformer.js +163 -0
  444. package/dist/esm/dataTransformer.js.map +1 -0
  445. package/dist/esm/diagnostics/instrumentServiceBusMessage.d.ts +50 -0
  446. package/dist/esm/diagnostics/instrumentServiceBusMessage.d.ts.map +1 -0
  447. package/dist/esm/diagnostics/instrumentServiceBusMessage.js +101 -0
  448. package/dist/esm/diagnostics/instrumentServiceBusMessage.js.map +1 -0
  449. package/dist/esm/diagnostics/tracing.d.ts +21 -0
  450. package/dist/esm/diagnostics/tracing.d.ts.map +1 -0
  451. package/dist/esm/diagnostics/tracing.js +37 -0
  452. package/dist/esm/diagnostics/tracing.js.map +1 -0
  453. package/dist/esm/experimental/index.d.ts +10 -0
  454. package/dist/esm/experimental/index.d.ts.map +1 -0
  455. package/dist/esm/experimental/index.js +4 -0
  456. package/dist/esm/experimental/index.js.map +1 -0
  457. package/dist/esm/index.d.ts +26 -0
  458. package/dist/esm/index.d.ts.map +1 -0
  459. package/dist/esm/index.js +10 -0
  460. package/dist/esm/index.js.map +1 -0
  461. package/dist/esm/log.d.ts +70 -0
  462. package/dist/esm/log.d.ts.map +1 -0
  463. package/dist/esm/log.js +89 -0
  464. package/dist/esm/log.js.map +1 -0
  465. package/dist/esm/models.d.ts +328 -0
  466. package/dist/esm/models.d.ts.map +1 -0
  467. package/dist/esm/models.js +4 -0
  468. package/dist/esm/models.js.map +1 -0
  469. package/dist/esm/modelsToBeSharedWithEventHubs.d.ts +18 -0
  470. package/dist/esm/modelsToBeSharedWithEventHubs.d.ts.map +1 -0
  471. package/dist/esm/modelsToBeSharedWithEventHubs.js +4 -0
  472. package/dist/esm/modelsToBeSharedWithEventHubs.js.map +1 -0
  473. package/dist/esm/package.json +3 -0
  474. package/dist/esm/receivers/receiver.d.ts +299 -0
  475. package/dist/esm/receivers/receiver.d.ts.map +1 -0
  476. package/dist/esm/receivers/receiver.js +379 -0
  477. package/dist/esm/receivers/receiver.js.map +1 -0
  478. package/dist/esm/receivers/receiverCommon.d.ts +81 -0
  479. package/dist/esm/receivers/receiverCommon.d.ts.map +1 -0
  480. package/dist/esm/receivers/receiverCommon.js +257 -0
  481. package/dist/esm/receivers/receiverCommon.js.map +1 -0
  482. package/dist/esm/receivers/sessionReceiver.d.ts +189 -0
  483. package/dist/esm/receivers/sessionReceiver.d.ts.map +1 -0
  484. package/dist/esm/receivers/sessionReceiver.js +428 -0
  485. package/dist/esm/receivers/sessionReceiver.js.map +1 -0
  486. package/dist/esm/sender.d.ts +125 -0
  487. package/dist/esm/sender.d.ts.map +1 -0
  488. package/dist/esm/sender.js +186 -0
  489. package/dist/esm/sender.js.map +1 -0
  490. package/dist/esm/serializers/namespaceResourceSerializer.d.ts +46 -0
  491. package/dist/esm/serializers/namespaceResourceSerializer.d.ts.map +1 -0
  492. package/dist/esm/serializers/namespaceResourceSerializer.js +34 -0
  493. package/dist/esm/serializers/namespaceResourceSerializer.js.map +1 -0
  494. package/dist/esm/serializers/queueResourceSerializer.d.ts +461 -0
  495. package/dist/esm/serializers/queueResourceSerializer.d.ts.map +1 -0
  496. package/dist/esm/serializers/queueResourceSerializer.js +99 -0
  497. package/dist/esm/serializers/queueResourceSerializer.js.map +1 -0
  498. package/dist/esm/serializers/ruleResourceSerializer.d.ts +135 -0
  499. package/dist/esm/serializers/ruleResourceSerializer.d.ts.map +1 -0
  500. package/dist/esm/serializers/ruleResourceSerializer.js +278 -0
  501. package/dist/esm/serializers/ruleResourceSerializer.js.map +1 -0
  502. package/dist/esm/serializers/subscriptionResourceSerializer.d.ts +396 -0
  503. package/dist/esm/serializers/subscriptionResourceSerializer.d.ts.map +1 -0
  504. package/dist/esm/serializers/subscriptionResourceSerializer.js +95 -0
  505. package/dist/esm/serializers/subscriptionResourceSerializer.js.map +1 -0
  506. package/dist/esm/serializers/topicResourceSerializer.d.ts +335 -0
  507. package/dist/esm/serializers/topicResourceSerializer.d.ts.map +1 -0
  508. package/dist/esm/serializers/topicResourceSerializer.js +89 -0
  509. package/dist/esm/serializers/topicResourceSerializer.js.map +1 -0
  510. package/dist/esm/serviceBusAtomManagementClient.d.ts +652 -0
  511. package/dist/esm/serviceBusAtomManagementClient.d.ts.map +1 -0
  512. package/dist/esm/serviceBusAtomManagementClient.js +1643 -0
  513. package/dist/esm/serviceBusAtomManagementClient.js.map +1 -0
  514. package/dist/esm/serviceBusClient.d.ts +231 -0
  515. package/dist/esm/serviceBusClient.d.ts.map +1 -0
  516. package/dist/esm/serviceBusClient.js +216 -0
  517. package/dist/esm/serviceBusClient.js.map +1 -0
  518. package/dist/esm/serviceBusError.d.ts +119 -0
  519. package/dist/esm/serviceBusError.d.ts.map +1 -0
  520. package/dist/esm/serviceBusError.js +103 -0
  521. package/dist/esm/serviceBusError.js.map +1 -0
  522. package/dist/esm/serviceBusMessage.d.ts +529 -0
  523. package/dist/esm/serviceBusMessage.d.ts.map +1 -0
  524. package/dist/esm/serviceBusMessage.js +598 -0
  525. package/dist/esm/serviceBusMessage.js.map +1 -0
  526. package/dist/esm/serviceBusMessageBatch.d.ts +153 -0
  527. package/dist/esm/serviceBusMessageBatch.d.ts.map +1 -0
  528. package/dist/esm/serviceBusMessageBatch.js +192 -0
  529. package/dist/esm/serviceBusMessageBatch.js.map +1 -0
  530. package/dist/esm/serviceBusRuleManager.d.ts +103 -0
  531. package/dist/esm/serviceBusRuleManager.d.ts.map +1 -0
  532. package/dist/esm/serviceBusRuleManager.js +149 -0
  533. package/dist/esm/serviceBusRuleManager.js.map +1 -0
  534. package/dist/esm/session/messageSession.d.ts +236 -0
  535. package/dist/esm/session/messageSession.d.ts.map +1 -0
  536. package/dist/esm/session/messageSession.js +755 -0
  537. package/dist/esm/session/messageSession.js.map +1 -0
  538. package/dist/esm/util/atomXmlHelper.d.ts +56 -0
  539. package/dist/esm/util/atomXmlHelper.d.ts.map +1 -0
  540. package/dist/esm/util/atomXmlHelper.js +378 -0
  541. package/dist/esm/util/atomXmlHelper.js.map +1 -0
  542. package/dist/esm/util/compat/compatibility.d.ts +109 -0
  543. package/dist/esm/util/compat/compatibility.d.ts.map +1 -0
  544. package/dist/esm/util/compat/compatibility.js +27 -0
  545. package/dist/esm/util/compat/compatibility.js.map +1 -0
  546. package/dist/esm/util/compat/httpHeaders.d.ts +136 -0
  547. package/dist/esm/util/compat/httpHeaders.d.ts.map +1 -0
  548. package/dist/esm/util/compat/httpHeaders.js +152 -0
  549. package/dist/esm/util/compat/httpHeaders.js.map +1 -0
  550. package/dist/esm/util/compat/index.d.ts +3 -0
  551. package/dist/esm/util/compat/index.d.ts.map +1 -0
  552. package/dist/esm/util/compat/index.js +5 -0
  553. package/dist/esm/util/compat/index.js.map +1 -0
  554. package/dist/esm/util/connectionStringUtils.d.ts +53 -0
  555. package/dist/esm/util/connectionStringUtils.d.ts.map +1 -0
  556. package/dist/esm/util/connectionStringUtils.js +48 -0
  557. package/dist/esm/util/connectionStringUtils.js.map +1 -0
  558. package/dist/esm/util/constants.d.ts +322 -0
  559. package/dist/esm/util/constants.d.ts.map +1 -0
  560. package/dist/esm/util/constants.js +324 -0
  561. package/dist/esm/util/constants.js.map +1 -0
  562. package/dist/esm/util/crypto.d.ts +5 -0
  563. package/dist/esm/util/crypto.d.ts.map +1 -0
  564. package/{dist-esm/src → dist/esm}/util/crypto.js +1 -3
  565. package/dist/esm/util/crypto.js.map +1 -0
  566. package/dist/esm/util/errors.d.ts +130 -0
  567. package/dist/esm/util/errors.d.ts.map +1 -0
  568. package/dist/esm/util/errors.js +220 -0
  569. package/dist/esm/util/errors.js.map +1 -0
  570. package/dist/esm/util/parseUrl.d.ts +5 -0
  571. package/dist/esm/util/parseUrl.d.ts.map +1 -0
  572. package/{dist-esm/src → dist/esm}/util/parseUrl.js +0 -6
  573. package/dist/esm/util/parseUrl.js.map +1 -0
  574. package/dist/esm/util/runtimeInfo.d.ts +7 -0
  575. package/dist/esm/util/runtimeInfo.d.ts.map +1 -0
  576. package/{dist-esm/src → dist/esm}/util/runtimeInfo.js +2 -2
  577. package/dist/esm/util/runtimeInfo.js.map +1 -0
  578. package/dist/esm/util/sasServiceClientCredentials.d.ts +31 -0
  579. package/dist/esm/util/sasServiceClientCredentials.d.ts.map +1 -0
  580. package/dist/esm/util/sasServiceClientCredentials.js +52 -0
  581. package/dist/esm/util/sasServiceClientCredentials.js.map +1 -0
  582. package/dist/esm/util/semaphore.d.ts +38 -0
  583. package/dist/esm/util/semaphore.d.ts.map +1 -0
  584. package/dist/esm/util/semaphore.js +81 -0
  585. package/dist/esm/util/semaphore.js.map +1 -0
  586. package/dist/esm/util/typeGuards.d.ts +8 -0
  587. package/dist/esm/util/typeGuards.d.ts.map +1 -0
  588. package/dist/esm/util/typeGuards.js +12 -0
  589. package/dist/esm/util/typeGuards.js.map +1 -0
  590. package/dist/esm/util/utils.d.ts +247 -0
  591. package/dist/esm/util/utils.d.ts.map +1 -0
  592. package/dist/esm/util/utils.js +496 -0
  593. package/dist/esm/util/utils.js.map +1 -0
  594. package/dist/react-native/connectionContext.d.ts +109 -0
  595. package/dist/react-native/connectionContext.d.ts.map +1 -0
  596. package/dist/react-native/connectionContext.js +355 -0
  597. package/dist/react-native/connectionContext.js.map +1 -0
  598. package/dist/react-native/constructorHelpers.d.ts +79 -0
  599. package/dist/react-native/constructorHelpers.d.ts.map +1 -0
  600. package/dist/react-native/constructorHelpers.js +96 -0
  601. package/dist/react-native/constructorHelpers.js.map +1 -0
  602. package/dist/react-native/core/autoLockRenewer.d.ts +58 -0
  603. package/dist/react-native/core/autoLockRenewer.d.ts.map +1 -0
  604. package/dist/react-native/core/autoLockRenewer.js +174 -0
  605. package/dist/react-native/core/autoLockRenewer.js.map +1 -0
  606. package/dist/react-native/core/batchingReceiver.d.ts +120 -0
  607. package/dist/react-native/core/batchingReceiver.d.ts.map +1 -0
  608. package/dist/react-native/core/batchingReceiver.js +399 -0
  609. package/dist/react-native/core/batchingReceiver.js.map +1 -0
  610. package/dist/react-native/core/linkEntity.d.ts +192 -0
  611. package/dist/react-native/core/linkEntity.d.ts.map +1 -0
  612. package/dist/react-native/core/linkEntity.js +340 -0
  613. package/dist/react-native/core/linkEntity.js.map +1 -0
  614. package/dist/react-native/core/managementClient.d.ts +312 -0
  615. package/dist/react-native/core/managementClient.d.ts.map +1 -0
  616. package/dist/react-native/core/managementClient.js +1072 -0
  617. package/dist/react-native/core/managementClient.js.map +1 -0
  618. package/dist/react-native/core/messageReceiver.d.ts +147 -0
  619. package/dist/react-native/core/messageReceiver.d.ts.map +1 -0
  620. package/dist/react-native/core/messageReceiver.js +165 -0
  621. package/dist/react-native/core/messageReceiver.js.map +1 -0
  622. package/dist/react-native/core/messageSender.d.ts +93 -0
  623. package/dist/react-native/core/messageSender.d.ts.map +1 -0
  624. package/dist/react-native/core/messageSender.js +303 -0
  625. package/dist/react-native/core/messageSender.js.map +1 -0
  626. package/dist/react-native/core/receiverHelper.d.ts +45 -0
  627. package/dist/react-native/core/receiverHelper.d.ts.map +1 -0
  628. package/dist/react-native/core/receiverHelper.js +119 -0
  629. package/dist/react-native/core/receiverHelper.js.map +1 -0
  630. package/dist/react-native/core/shared.d.ts +34 -0
  631. package/dist/react-native/core/shared.d.ts.map +1 -0
  632. package/dist/react-native/core/shared.js +66 -0
  633. package/dist/react-native/core/shared.js.map +1 -0
  634. package/dist/react-native/core/streamingReceiver.d.ts +142 -0
  635. package/dist/react-native/core/streamingReceiver.d.ts.map +1 -0
  636. package/dist/react-native/core/streamingReceiver.js +522 -0
  637. package/dist/react-native/core/streamingReceiver.js.map +1 -0
  638. package/dist/react-native/dataTransformer.d.ts +77 -0
  639. package/dist/react-native/dataTransformer.d.ts.map +1 -0
  640. package/dist/react-native/dataTransformer.js +163 -0
  641. package/dist/react-native/dataTransformer.js.map +1 -0
  642. package/dist/react-native/diagnostics/instrumentServiceBusMessage.d.ts +50 -0
  643. package/dist/react-native/diagnostics/instrumentServiceBusMessage.d.ts.map +1 -0
  644. package/dist/react-native/diagnostics/instrumentServiceBusMessage.js +101 -0
  645. package/dist/react-native/diagnostics/instrumentServiceBusMessage.js.map +1 -0
  646. package/dist/react-native/diagnostics/tracing.d.ts +21 -0
  647. package/dist/react-native/diagnostics/tracing.d.ts.map +1 -0
  648. package/dist/react-native/diagnostics/tracing.js +37 -0
  649. package/dist/react-native/diagnostics/tracing.js.map +1 -0
  650. package/dist/react-native/experimental/index.d.ts +10 -0
  651. package/dist/react-native/experimental/index.d.ts.map +1 -0
  652. package/dist/react-native/experimental/index.js +4 -0
  653. package/dist/react-native/experimental/index.js.map +1 -0
  654. package/dist/react-native/index.d.ts +26 -0
  655. package/dist/react-native/index.d.ts.map +1 -0
  656. package/dist/react-native/index.js +10 -0
  657. package/dist/react-native/index.js.map +1 -0
  658. package/dist/react-native/log.d.ts +70 -0
  659. package/dist/react-native/log.d.ts.map +1 -0
  660. package/dist/react-native/log.js +89 -0
  661. package/dist/react-native/log.js.map +1 -0
  662. package/dist/react-native/models.d.ts +328 -0
  663. package/dist/react-native/models.d.ts.map +1 -0
  664. package/dist/react-native/models.js +4 -0
  665. package/dist/react-native/models.js.map +1 -0
  666. package/dist/react-native/modelsToBeSharedWithEventHubs.d.ts +18 -0
  667. package/dist/react-native/modelsToBeSharedWithEventHubs.d.ts.map +1 -0
  668. package/dist/react-native/modelsToBeSharedWithEventHubs.js +4 -0
  669. package/dist/react-native/modelsToBeSharedWithEventHubs.js.map +1 -0
  670. package/dist/react-native/package.json +3 -0
  671. package/dist/react-native/receivers/receiver.d.ts +299 -0
  672. package/dist/react-native/receivers/receiver.d.ts.map +1 -0
  673. package/dist/react-native/receivers/receiver.js +379 -0
  674. package/dist/react-native/receivers/receiver.js.map +1 -0
  675. package/dist/react-native/receivers/receiverCommon.d.ts +81 -0
  676. package/dist/react-native/receivers/receiverCommon.d.ts.map +1 -0
  677. package/dist/react-native/receivers/receiverCommon.js +257 -0
  678. package/dist/react-native/receivers/receiverCommon.js.map +1 -0
  679. package/dist/react-native/receivers/sessionReceiver.d.ts +189 -0
  680. package/dist/react-native/receivers/sessionReceiver.d.ts.map +1 -0
  681. package/dist/react-native/receivers/sessionReceiver.js +428 -0
  682. package/dist/react-native/receivers/sessionReceiver.js.map +1 -0
  683. package/dist/react-native/sender.d.ts +125 -0
  684. package/dist/react-native/sender.d.ts.map +1 -0
  685. package/dist/react-native/sender.js +186 -0
  686. package/dist/react-native/sender.js.map +1 -0
  687. package/dist/react-native/serializers/namespaceResourceSerializer.d.ts +46 -0
  688. package/dist/react-native/serializers/namespaceResourceSerializer.d.ts.map +1 -0
  689. package/dist/react-native/serializers/namespaceResourceSerializer.js +34 -0
  690. package/dist/react-native/serializers/namespaceResourceSerializer.js.map +1 -0
  691. package/dist/react-native/serializers/queueResourceSerializer.d.ts +461 -0
  692. package/dist/react-native/serializers/queueResourceSerializer.d.ts.map +1 -0
  693. package/dist/react-native/serializers/queueResourceSerializer.js +99 -0
  694. package/dist/react-native/serializers/queueResourceSerializer.js.map +1 -0
  695. package/dist/react-native/serializers/ruleResourceSerializer.d.ts +135 -0
  696. package/dist/react-native/serializers/ruleResourceSerializer.d.ts.map +1 -0
  697. package/dist/react-native/serializers/ruleResourceSerializer.js +278 -0
  698. package/dist/react-native/serializers/ruleResourceSerializer.js.map +1 -0
  699. package/dist/react-native/serializers/subscriptionResourceSerializer.d.ts +396 -0
  700. package/dist/react-native/serializers/subscriptionResourceSerializer.d.ts.map +1 -0
  701. package/dist/react-native/serializers/subscriptionResourceSerializer.js +95 -0
  702. package/dist/react-native/serializers/subscriptionResourceSerializer.js.map +1 -0
  703. package/dist/react-native/serializers/topicResourceSerializer.d.ts +335 -0
  704. package/dist/react-native/serializers/topicResourceSerializer.d.ts.map +1 -0
  705. package/dist/react-native/serializers/topicResourceSerializer.js +89 -0
  706. package/dist/react-native/serializers/topicResourceSerializer.js.map +1 -0
  707. package/dist/react-native/serviceBusAtomManagementClient.d.ts +652 -0
  708. package/dist/react-native/serviceBusAtomManagementClient.d.ts.map +1 -0
  709. package/dist/react-native/serviceBusAtomManagementClient.js +1643 -0
  710. package/dist/react-native/serviceBusAtomManagementClient.js.map +1 -0
  711. package/dist/react-native/serviceBusClient.d.ts +231 -0
  712. package/dist/react-native/serviceBusClient.d.ts.map +1 -0
  713. package/dist/react-native/serviceBusClient.js +216 -0
  714. package/dist/react-native/serviceBusClient.js.map +1 -0
  715. package/dist/react-native/serviceBusError.d.ts +119 -0
  716. package/dist/react-native/serviceBusError.d.ts.map +1 -0
  717. package/dist/react-native/serviceBusError.js +103 -0
  718. package/dist/react-native/serviceBusError.js.map +1 -0
  719. package/dist/react-native/serviceBusMessage.d.ts +529 -0
  720. package/dist/react-native/serviceBusMessage.d.ts.map +1 -0
  721. package/dist/react-native/serviceBusMessage.js +598 -0
  722. package/dist/react-native/serviceBusMessage.js.map +1 -0
  723. package/dist/react-native/serviceBusMessageBatch.d.ts +153 -0
  724. package/dist/react-native/serviceBusMessageBatch.d.ts.map +1 -0
  725. package/dist/react-native/serviceBusMessageBatch.js +192 -0
  726. package/dist/react-native/serviceBusMessageBatch.js.map +1 -0
  727. package/dist/react-native/serviceBusRuleManager.d.ts +103 -0
  728. package/dist/react-native/serviceBusRuleManager.d.ts.map +1 -0
  729. package/dist/react-native/serviceBusRuleManager.js +149 -0
  730. package/dist/react-native/serviceBusRuleManager.js.map +1 -0
  731. package/dist/react-native/session/messageSession.d.ts +236 -0
  732. package/dist/react-native/session/messageSession.d.ts.map +1 -0
  733. package/dist/react-native/session/messageSession.js +755 -0
  734. package/dist/react-native/session/messageSession.js.map +1 -0
  735. package/dist/react-native/util/atomXmlHelper.d.ts +56 -0
  736. package/dist/react-native/util/atomXmlHelper.d.ts.map +1 -0
  737. package/dist/react-native/util/atomXmlHelper.js +378 -0
  738. package/dist/react-native/util/atomXmlHelper.js.map +1 -0
  739. package/dist/react-native/util/compat/compatibility.d.ts +109 -0
  740. package/dist/react-native/util/compat/compatibility.d.ts.map +1 -0
  741. package/dist/react-native/util/compat/compatibility.js +27 -0
  742. package/dist/react-native/util/compat/compatibility.js.map +1 -0
  743. package/dist/react-native/util/compat/httpHeaders.d.ts +136 -0
  744. package/dist/react-native/util/compat/httpHeaders.d.ts.map +1 -0
  745. package/dist/react-native/util/compat/httpHeaders.js +152 -0
  746. package/dist/react-native/util/compat/httpHeaders.js.map +1 -0
  747. package/dist/react-native/util/compat/index.d.ts +3 -0
  748. package/dist/react-native/util/compat/index.d.ts.map +1 -0
  749. package/dist/react-native/util/compat/index.js +5 -0
  750. package/dist/react-native/util/compat/index.js.map +1 -0
  751. package/dist/react-native/util/connectionStringUtils.d.ts +53 -0
  752. package/dist/react-native/util/connectionStringUtils.d.ts.map +1 -0
  753. package/dist/react-native/util/connectionStringUtils.js +48 -0
  754. package/dist/react-native/util/connectionStringUtils.js.map +1 -0
  755. package/dist/react-native/util/constants.d.ts +322 -0
  756. package/dist/react-native/util/constants.d.ts.map +1 -0
  757. package/dist/react-native/util/constants.js +324 -0
  758. package/dist/react-native/util/constants.js.map +1 -0
  759. package/dist/react-native/util/crypto.d.ts +5 -0
  760. package/dist/react-native/util/crypto.d.ts.map +1 -0
  761. package/dist/react-native/util/crypto.js +11 -0
  762. package/dist/react-native/util/crypto.js.map +1 -0
  763. package/dist/react-native/util/errors.d.ts +130 -0
  764. package/dist/react-native/util/errors.d.ts.map +1 -0
  765. package/dist/react-native/util/errors.js +220 -0
  766. package/dist/react-native/util/errors.js.map +1 -0
  767. package/dist/react-native/util/parseUrl.d.ts +5 -0
  768. package/dist/react-native/util/parseUrl.d.ts.map +1 -0
  769. package/dist/react-native/util/parseUrl.js +9 -0
  770. package/dist/react-native/util/parseUrl.js.map +1 -0
  771. package/dist/react-native/util/runtimeInfo-react-native.d.mts.map +1 -0
  772. package/dist/react-native/util/runtimeInfo-react-native.mjs.map +1 -0
  773. package/dist/react-native/util/runtimeInfo.d.ts +7 -0
  774. package/{dist-esm/src/util/runtimeInfo.native.js → dist/react-native/util/runtimeInfo.js} +3 -3
  775. package/dist/react-native/util/sasServiceClientCredentials.d.ts +31 -0
  776. package/dist/react-native/util/sasServiceClientCredentials.d.ts.map +1 -0
  777. package/dist/react-native/util/sasServiceClientCredentials.js +52 -0
  778. package/dist/react-native/util/sasServiceClientCredentials.js.map +1 -0
  779. package/dist/react-native/util/semaphore.d.ts +38 -0
  780. package/dist/react-native/util/semaphore.d.ts.map +1 -0
  781. package/dist/react-native/util/semaphore.js +81 -0
  782. package/dist/react-native/util/semaphore.js.map +1 -0
  783. package/dist/react-native/util/typeGuards.d.ts +8 -0
  784. package/dist/react-native/util/typeGuards.d.ts.map +1 -0
  785. package/dist/react-native/util/typeGuards.js +12 -0
  786. package/dist/react-native/util/typeGuards.js.map +1 -0
  787. package/dist/react-native/util/utils.d.ts +247 -0
  788. package/dist/react-native/util/utils.d.ts.map +1 -0
  789. package/dist/react-native/util/utils.js +496 -0
  790. package/dist/react-native/util/utils.js.map +1 -0
  791. package/package.json +123 -104
  792. package/dist/index.js +0 -10438
  793. package/dist/index.js.map +0 -1
  794. package/dist-esm/src/connectionContext.js.map +0 -1
  795. package/dist-esm/src/constructorHelpers.js.map +0 -1
  796. package/dist-esm/src/core/autoLockRenewer.js.map +0 -1
  797. package/dist-esm/src/core/batchingReceiver.js.map +0 -1
  798. package/dist-esm/src/core/linkEntity.js.map +0 -1
  799. package/dist-esm/src/core/managementClient.js.map +0 -1
  800. package/dist-esm/src/core/messageReceiver.js.map +0 -1
  801. package/dist-esm/src/core/messageSender.js.map +0 -1
  802. package/dist-esm/src/core/receiverHelper.js.map +0 -1
  803. package/dist-esm/src/core/shared.js.map +0 -1
  804. package/dist-esm/src/core/streamingReceiver.js.map +0 -1
  805. package/dist-esm/src/dataTransformer.js.map +0 -1
  806. package/dist-esm/src/diagnostics/instrumentServiceBusMessage.js.map +0 -1
  807. package/dist-esm/src/diagnostics/tracing.js.map +0 -1
  808. package/dist-esm/src/index.js.map +0 -1
  809. package/dist-esm/src/log.js.map +0 -1
  810. package/dist-esm/src/models.js +0 -4
  811. package/dist-esm/src/models.js.map +0 -1
  812. package/dist-esm/src/modelsToBeSharedWithEventHubs.js +0 -4
  813. package/dist-esm/src/modelsToBeSharedWithEventHubs.js.map +0 -1
  814. package/dist-esm/src/receivers/receiver.js.map +0 -1
  815. package/dist-esm/src/receivers/receiverCommon.js.map +0 -1
  816. package/dist-esm/src/receivers/sessionReceiver.js.map +0 -1
  817. package/dist-esm/src/sender.js.map +0 -1
  818. package/dist-esm/src/serializers/namespaceResourceSerializer.js.map +0 -1
  819. package/dist-esm/src/serializers/queueResourceSerializer.js.map +0 -1
  820. package/dist-esm/src/serializers/ruleResourceSerializer.js.map +0 -1
  821. package/dist-esm/src/serializers/subscriptionResourceSerializer.js.map +0 -1
  822. package/dist-esm/src/serializers/topicResourceSerializer.js.map +0 -1
  823. package/dist-esm/src/serviceBusAtomManagementClient.js.map +0 -1
  824. package/dist-esm/src/serviceBusClient.js.map +0 -1
  825. package/dist-esm/src/serviceBusError.js.map +0 -1
  826. package/dist-esm/src/serviceBusMessage.js.map +0 -1
  827. package/dist-esm/src/serviceBusMessageBatch.js.map +0 -1
  828. package/dist-esm/src/serviceBusRuleManager.js.map +0 -1
  829. package/dist-esm/src/session/messageSession.js.map +0 -1
  830. package/dist-esm/src/util/atomXmlHelper.js.map +0 -1
  831. package/dist-esm/src/util/compat/compatibility.js.map +0 -1
  832. package/dist-esm/src/util/compat/httpHeaders.js.map +0 -1
  833. package/dist-esm/src/util/compat/index.js +0 -5
  834. package/dist-esm/src/util/compat/index.js.map +0 -1
  835. package/dist-esm/src/util/connectionStringUtils.js.map +0 -1
  836. package/dist-esm/src/util/crypto.browser.js.map +0 -1
  837. package/dist-esm/src/util/crypto.js.map +0 -1
  838. package/dist-esm/src/util/errors.js.map +0 -1
  839. package/dist-esm/src/util/parseUrl.browser.js.map +0 -1
  840. package/dist-esm/src/util/parseUrl.js.map +0 -1
  841. package/dist-esm/src/util/runtimeInfo.browser.js.map +0 -1
  842. package/dist-esm/src/util/runtimeInfo.js.map +0 -1
  843. package/dist-esm/src/util/runtimeInfo.native.js.map +0 -1
  844. package/dist-esm/src/util/sasServiceClientCredentials.js.map +0 -1
  845. package/dist-esm/src/util/semaphore.js.map +0 -1
  846. package/dist-esm/src/util/typeGuards.js.map +0 -1
  847. package/dist-esm/src/util/utils.js.map +0 -1
  848. package/types/latest/service-bus-beta.d.ts +0 -3197
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managementClient.js","sourceRoot":"","sources":["../../../src/core/managementClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport Long from \"long\";\nimport type {\n EventContext,\n ReceiverOptions,\n SenderOptions,\n Typed,\n Message as RheaMessage,\n} from \"rhea-promise\";\nimport {\n message as RheaMessageUtil,\n generate_uuid,\n string_to_uuid,\n types,\n ReceiverEvents,\n} from \"rhea-promise\";\nimport type {\n MessagingError,\n SendRequestOptions,\n RetryOptions,\n AmqpAnnotatedMessage,\n} from \"@azure/core-amqp\";\nimport {\n ConditionErrorNameMapper,\n Constants,\n defaultCancellableLock,\n RequestResponseLink,\n} from \"@azure/core-amqp\";\nimport type { ConnectionContext } from \"../connectionContext.js\";\nimport type { ServiceBusReceivedMessage, ServiceBusMessage } from \"../serviceBusMessage.js\";\nimport {\n DispositionType,\n ServiceBusMessageImpl,\n toRheaMessage,\n fromRheaMessage,\n updateScheduledTime,\n updateMessageId,\n} from \"../serviceBusMessage.js\";\nimport type { RequestResponseLinkOptions } from \"./linkEntity.js\";\nimport { LinkEntity } from \"./linkEntity.js\";\nimport type { ServiceBusLogger } from \"../log.js\";\nimport { managementClientLogger, receiverLogger, senderLogger } from \"../log.js\";\nimport { toBuffer, waitForSendable } from \"../util/utils.js\";\nimport {\n InvalidMaxMessageCountError,\n throwErrorIfConnectionClosed,\n throwTypeErrorIfParameterIsEmptyString,\n throwTypeErrorIfParameterMissing,\n throwTypeErrorIfParameterNotLong,\n throwTypeErrorIfParameterTypeMismatch,\n} from \"../util/errors.js\";\nimport { max32BitNumber } from \"../util/constants.js\";\nimport { Buffer } from \"buffer\";\nimport type { OperationOptionsBase } from \"./../modelsToBeSharedWithEventHubs.js\";\nimport type { AbortSignalLike } from \"@azure/abort-controller\";\nimport type { ReceiveMode } from \"../models.js\";\nimport { translateServiceBusError } from \"../serviceBusError.js\";\nimport { defaultDataTransformer, tryToJsonDecode } from \"../dataTransformer.js\";\nimport { delay, isDefined, isObjectWithProperties } from \"@azure/core-util\";\nimport type {\n RuleProperties,\n SqlRuleAction,\n SqlRuleFilter,\n} from \"../serializers/ruleResourceSerializer.js\";\nimport type { ListRequestOptions } from \"../serviceBusAtomManagementClient.js\";\n\n/**\n * @internal\n */\nexport interface SendManagementRequestOptions extends SendRequestOptions {\n /**\n * The name of the sender or receiver link associated with the managmenet operations.\n * This is used for service side optimization.\n */\n associatedLinkName?: string;\n /**\n * Option to disable the client from running JSON.parse() on the message body when receiving the message.\n * Not applicable if the message was sent with AMQP body type value or sequence. Use this option when you\n * prefer to work directly with the bytes present in the message body than have the client attempt to parse it.\n */\n skipParsingBodyAsJson?: boolean;\n /**\n * Whether to skip converting Date type on properties of message annotations\n * or application properties into numbers when receiving the message. By\n * default, properties of Date type is converted into UNIX epoch number for\n * compatibility.\n */\n skipConvertingDate?: boolean;\n}\n\n/**\n * Represents the correlation filter expression.\n * A CorrelationRuleFilter holds a set of conditions that are matched against user and system properties\n * of incoming messages from a Subscription.\n */\nexport interface CorrelationRuleFilter {\n /**\n * Value to be matched with the `correlationId` property of the incoming message.\n */\n correlationId?: string;\n /**\n * Value to be matched with the `messageId` property of the incoming message.\n */\n messageId?: string;\n /**\n * Value to be matched with the `to` property of the incoming message.\n */\n to?: string;\n /**\n * Value to be matched with the `replyTo` property of the incoming message.\n */\n replyTo?: string;\n /**\n * Value to be matched with the `subject` property of the incoming message.\n */\n subject?: string;\n /**\n * Value to be matched with the `sessionId` property of the incoming message.\n */\n sessionId?: string;\n /**\n * Value to be matched with the `replyToSessionId` property of the incoming message.\n */\n replyToSessionId?: string;\n /**\n * Value to be matched with the `contentType` property of the incoming message.\n */\n contentType?: string;\n /**\n * Value to be matched with the user properties of the incoming message.\n */\n applicationProperties?: { [key: string]: string | number | boolean | Date };\n}\n\n/**\n * @internal\n */\nconst sqlRuleProperties = [\"sqlExpression\"];\n\nfunction isSqlRuleFilter(obj: unknown): obj is SqlRuleFilter {\n if (obj) {\n return sqlRuleProperties.some((validProperty) => isObjectWithProperties(obj, [validProperty]));\n }\n\n return false;\n}\n\n/**\n * @internal\n */\nconst correlationProperties = [\n \"correlationId\",\n \"messageId\",\n \"to\",\n \"replyTo\",\n \"subject\",\n \"sessionId\",\n \"replyToSessionId\",\n \"contentType\",\n \"applicationProperties\",\n];\n\nfunction isCorrelationRuleFilter(obj: unknown): obj is CorrelationRuleFilter {\n if (obj) {\n return correlationProperties.some((validProperty) =>\n isObjectWithProperties(obj, [validProperty]),\n );\n }\n\n return false;\n}\n\n/**\n * @internal\n * Options to set when updating the disposition status\n */\nexport interface DispositionStatusOptions extends OperationOptionsBase {\n /**\n * A map of Service Bus brokered message properties\n * to modify.\n */\n propertiesToModify?: { [key: string]: any };\n /**\n * The deadletter reason. May be set if disposition status\n * is set to suspended.\n */\n deadLetterReason?: string;\n /**\n * The deadletter description. May be set if disposition status\n * is set to suspended.\n */\n deadLetterDescription?: string;\n /**\n * This should only be provided if `session` is enabled for a Queue or Topic.\n */\n sessionId?: string;\n /**\n * Retry options.\n */\n retryOptions: RetryOptions | undefined;\n}\n\n/**\n * @internal\n * Options passed to the constructor of ManagementClient\n */\nexport interface ManagementClientOptions {\n address?: string;\n audience?: string;\n}\n\n/**\n * @internal\n * Describes the ServiceBus Management Client that talks\n * to the $management endpoint over AMQP connection.\n */\nexport class ManagementClient extends LinkEntity<RequestResponseLink> {\n /**\n * The reply to Guid for the management client.\n */\n replyTo: string = generate_uuid();\n /**\n * Provides the sequence number of the last peeked message.\n */\n private _lastPeekedSequenceNumber: Long = Long.ZERO;\n /**\n * lock token for init operation\n */\n private _initLock: string = `initMgmtLink-${generate_uuid()}`;\n /**\n * Instantiates the management client.\n * @param context - The connection context\n * @param entityPath - The name/path of the entity (queue/topic/subscription name)\n * for which the management request needs to be made.\n * @param options - Options to be provided for creating the\n * \"$management\" client.\n */\n constructor(context: ConnectionContext, entityPath: string, options?: ManagementClientOptions) {\n super(`${entityPath}/$management`, entityPath, context, \"mgmt\", managementClientLogger, {\n address: options && options.address ? options.address : Constants.management,\n audience:\n options && options.audience\n ? options.audience\n : `${context.config.endpoint}${entityPath}/$management`,\n });\n this._context = context;\n }\n\n /**\n * initialize link with unique this.replyTo address.\n * @param options -\n * @returns updated options bag that has adjusted `timeoutInMs` to account for init time\n */\n private async initWithUniqueReplyTo(\n options: SendManagementRequestOptions = {},\n ): Promise<SendManagementRequestOptions> {\n const retryTimeoutInMs = options.timeoutInMs ?? Constants.defaultOperationTimeoutInMs;\n const initOperationStartTime = Date.now();\n return defaultCancellableLock.acquire(\n this._initLock,\n async () => {\n managementClientLogger.verbose(\n `${this.logPrefix} lock acquired for initializing replyTo address and link`,\n );\n if (!this.isOpen()) {\n this.replyTo = generate_uuid();\n managementClientLogger.verbose(\n `${this.logPrefix} new replyTo address: ${this.replyTo} generated`,\n );\n }\n const { abortSignal } = options;\n const aborter = new AbortController();\n\n const abortListener = (): void => {\n aborter.abort();\n };\n abortSignal?.addEventListener(\"abort\", abortListener);\n\n if (!this.isOpen()) {\n await Promise.race([\n this._init(aborter.signal),\n delay(retryTimeoutInMs, { abortSignal: aborter.signal }).then(\n function onfulfilled() {\n throw {\n name: \"OperationTimeoutError\",\n message:\n \"The initialization of management client timed out. Please try again later.\",\n };\n },\n function onrejected(_) {\n managementClientLogger.verbose(\n `The management client initialization has either completed or been cancelled.`,\n );\n },\n ),\n ]).finally(() => {\n aborter.abort();\n abortSignal?.removeEventListener(\"abort\", abortListener);\n });\n }\n\n // time taken by the init operation\n const timeTakenByInit = Date.now() - initOperationStartTime;\n return {\n ...options,\n // Left over time\n timeoutInMs: retryTimeoutInMs - timeTakenByInit,\n };\n },\n {\n abortSignal: options.abortSignal,\n timeoutInMs: retryTimeoutInMs,\n },\n );\n }\n\n private async _init(abortSignal?: AbortSignalLike): Promise<void> {\n throwErrorIfConnectionClosed(this._context);\n try {\n const rxopt: ReceiverOptions = {\n source: { address: this.address },\n name: this.replyTo,\n target: { address: this.replyTo },\n onSessionError: (context: EventContext) => {\n const sbError = translateServiceBusError(context.session!.error!);\n managementClientLogger.logError(\n sbError,\n `${this.logPrefix} An error occurred on the session for request/response links for $management`,\n );\n },\n };\n const sropt: SenderOptions = {\n target: { address: this.address },\n onError: (context: EventContext) => {\n const ehError = translateServiceBusError(context.sender!.error!);\n managementClientLogger.logError(\n ehError,\n `${this.logPrefix} An error occurred on the $management sender link`,\n );\n },\n };\n\n // Even if multiple parallel requests reach here, the initLink secures a lock\n // to ensure there won't be multiple initializations\n await this.initLink(\n {\n senderOptions: sropt,\n receiverOptions: rxopt,\n },\n abortSignal,\n );\n } catch (err: any) {\n const translatedError = translateServiceBusError(err);\n managementClientLogger.logError(\n translatedError,\n `${this.logPrefix} An error occurred while establishing the $management links`,\n );\n throw translatedError;\n }\n }\n\n protected async createRheaLink(\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n options: RequestResponseLinkOptions,\n ): Promise<RequestResponseLink> {\n const rheaLink = await RequestResponseLink.create(\n this._context.connection,\n options.senderOptions,\n options.receiverOptions,\n );\n // Attach listener for the `receiver_error` events to log the errors.\n\n // \"message\" event listener is added in core-amqp.\n // \"rhea\" doesn't allow setting only the \"onError\" handler in the options if it is not accompanied by an \"onMessage\" handler.\n // Hence, not passing onError handler in the receiver options, adding a handler below.\n rheaLink.receiver.on(ReceiverEvents.receiverError, (context: EventContext) => {\n const ehError = translateServiceBusError(context.receiver!.error!);\n managementClientLogger.logError(\n ehError,\n `${this.logPrefix} An error occurred on the $management receiver link`,\n );\n });\n return rheaLink;\n }\n\n /**\n * Given array of typed values, returns the element in given index\n */\n private _safelyGetTypedValueFromArray(data: Typed[], index: number): any {\n return Array.isArray(data) && data.length > index && data[index]\n ? data[index].value\n : undefined;\n }\n\n private _decodeApplicationPropertiesMap(\n obj: Typed,\n ): Record<string, string | number | boolean | Date> {\n if (!types.is_map(obj)) {\n throw new Error(\"object to decode is not of Map types\");\n }\n const array = obj.value as Array<Typed>;\n const result: Record<string, string | number | boolean | Date> = {};\n for (let i = 0; i < array.length; i += 2) {\n const key = array[i].value as string;\n result[key] = array[i + 1].value as string | number | boolean | Date;\n }\n\n return result;\n }\n\n private async _makeManagementRequest(\n request: RheaMessage,\n internalLogger: ServiceBusLogger,\n sendRequestOptions: SendManagementRequestOptions = {},\n ): Promise<RheaMessage> {\n if (request.message_id === undefined) {\n request.message_id = generate_uuid();\n }\n\n try {\n const { timeoutInMs } = sendRequestOptions;\n await waitForSendable(\n internalLogger,\n this.logPrefix,\n this.name,\n timeoutInMs ?? Constants.defaultOperationTimeoutInMs,\n this.link?.sender,\n this.link?.session?.outgoing?.available(),\n );\n\n return await this.link!.sendRequest(request, sendRequestOptions);\n } catch (err: any) {\n const translatedError = translateServiceBusError(err);\n internalLogger.logError(\n translatedError,\n \"%s An error occurred during send on management request-response link with address '%s'\",\n this.logPrefix,\n this.address,\n );\n throw translatedError;\n }\n }\n\n /**\n * Closes the AMQP management session to the ServiceBus namespace for this client,\n * returning a promise that will be resolved when disconnection is completed.\n */\n async close(): Promise<void> {\n try {\n // Always clear the timeout, as the isOpen check may report\n // false without ever having cleared the timeout otherwise.\n\n // NOTE: management link currently doesn't have a separate concept of \"detaching\" like\n // the other links do. When we add handling of this (via the onDetached call, like other links)\n // we can change this back to closeLink(\"permanent\").\n await this.closeLink();\n managementClientLogger.verbose(\"Successfully closed the management session.\");\n } catch (err: any) {\n managementClientLogger.logError(\n err,\n `${this.logPrefix} An error occurred while closing the management session`,\n );\n throw err;\n }\n }\n\n /**\n * Fetches the next batch of active messages. The first call to `peek()` fetches the first\n * active message for this client. Each subsequent call fetches the subsequent message in the\n * entity.\n *\n * Unlike a `received` message, `peeked` message will not have lock token associated with it,\n * and hence it cannot be `Completed/Abandoned/Deferred/Deadlettered/Renewed`. This method will\n * also fetch even Deferred messages (but not Deadlettered message).\n *\n * @param messageCount - The number of messages to retrieve. Default value `1`.\n * @param omitMessageBody - Whether to omit message body when peeking. Default value `false`.\n */\n async peek(\n messageCount: number,\n omitMessageBody?: boolean,\n options?: OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<ServiceBusReceivedMessage[]> {\n throwErrorIfConnectionClosed(this._context);\n return this.peekBySequenceNumber(\n this._lastPeekedSequenceNumber.add(1),\n messageCount,\n undefined,\n omitMessageBody,\n options,\n );\n }\n\n /**\n * Fetches the next batch of active messages in the current MessageSession. The first call to\n * `peek()` fetches the first active message for this client. Each subsequent call fetches the\n * subsequent message in the entity.\n *\n * Unlike a `received` message, `peeked` message will not have lock token associated with it,\n * and hence it cannot be `Completed/Abandoned/Deferred/Deadlettered/Renewed`. This method will\n * also fetch even Deferred messages (but not Deadlettered message).\n *\n * @param sessionId - The sessionId from which messages need to be peeked.\n * @param messageCount - The number of messages to retrieve. Default value `1`.\n * @param omitMessageBody - Whether to omit message body when peeking Default value `false`.\n */\n async peekMessagesBySession(\n sessionId: string,\n messageCount: number,\n omitMessageBody?: boolean,\n options?: OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<ServiceBusReceivedMessage[]> {\n throwErrorIfConnectionClosed(this._context);\n return this.peekBySequenceNumber(\n this._lastPeekedSequenceNumber.add(1),\n messageCount,\n sessionId,\n omitMessageBody,\n options,\n );\n }\n\n /**\n * Peeks the desired number of messages from the specified sequence number.\n *\n * @param fromSequenceNumber - The sequence number from where to read the message.\n * @param messageCount - The number of messages to retrieve. Default value `1`.\n * @param sessionId - The sessionId from which messages need to be peeked.\n * @param omitMessageBody - Whether to omit message body when peeking. Default value `false`.\n */\n async peekBySequenceNumber(\n fromSequenceNumber: Long,\n maxMessageCount: number,\n sessionId?: string,\n omitMessageBody?: boolean,\n options?: OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<ServiceBusReceivedMessage[]> {\n throwErrorIfConnectionClosed(this._context);\n const connId = this._context.connectionId;\n\n // Checks for fromSequenceNumber\n throwTypeErrorIfParameterMissing(connId, \"fromSequenceNumber\", fromSequenceNumber);\n throwTypeErrorIfParameterNotLong(connId, \"fromSequenceNumber\", fromSequenceNumber);\n\n // Checks for maxMessageCount\n throwTypeErrorIfParameterMissing(\n this._context.connectionId,\n \"maxMessageCount\",\n maxMessageCount,\n );\n throwTypeErrorIfParameterTypeMismatch(\n this._context.connectionId,\n \"maxMessageCount\",\n maxMessageCount,\n \"number\",\n );\n\n if (isNaN(maxMessageCount) || maxMessageCount < 1) {\n throw new TypeError(InvalidMaxMessageCountError);\n }\n\n const messageList: ServiceBusReceivedMessage[] = [];\n try {\n const messageBody: any = {};\n messageBody[Constants.fromSequenceNumber] = types.wrap_long(\n Buffer.from(fromSequenceNumber.toBytesBE()),\n );\n messageBody[Constants.messageCount] = types.wrap_int(maxMessageCount!);\n if (isDefined(sessionId)) {\n messageBody[Constants.sessionIdMapKey] = sessionId;\n }\n if (isDefined(omitMessageBody)) {\n const omitMessageBodyKey = \"omit-message-body\"; // TODO: Service Bus specific. Put it somewhere\n messageBody[omitMessageBodyKey] = types.wrap_boolean(omitMessageBody);\n }\n const updatedOptions = await this.initWithUniqueReplyTo(options);\n const request: RheaMessage = {\n body: messageBody,\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.peekMessage,\n },\n };\n if (updatedOptions?.associatedLinkName) {\n request.application_properties![Constants.associatedLinkName] =\n updatedOptions?.associatedLinkName;\n }\n request.application_properties![Constants.trackingId] = generate_uuid();\n\n // TODO: it'd be nice to attribute this peek request to the actual receiver that made it. So have them pass in a\n // log prefix rather than just falling back to the management links.\n receiverLogger.verbose(\n \"%s Peek by sequence number request body: %O.\",\n this.logPrefix,\n request.body,\n );\n\n const result = await this._makeManagementRequest(request, receiverLogger, updatedOptions);\n if (result.application_properties!.statusCode !== 204) {\n const messages = result.body.messages as { message: Buffer }[];\n for (const msg of messages) {\n const decodedMessage = RheaMessageUtil.decode(msg.message);\n const message = fromRheaMessage(decodedMessage as any, {\n skipParsingBodyAsJson: updatedOptions?.skipParsingBodyAsJson ?? false,\n skipConvertingDate: updatedOptions?.skipConvertingDate ?? false,\n });\n messageList.push(message);\n this._lastPeekedSequenceNumber = message.sequenceNumber!;\n }\n }\n } catch (err: any) {\n const error = translateServiceBusError(err) as MessagingError;\n receiverLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the request to peek messages to $management endpoint`,\n );\n // statusCode == 404 then do not throw\n if (error.code !== ConditionErrorNameMapper[\"com.microsoft:message-not-found\"]) {\n throw error;\n }\n }\n return messageList;\n }\n\n /**\n * Renews the lock on the message. The lock will be renewed based on the setting specified on\n * the queue.\n *\n * When a message is received in `PeekLock` mode, the message is locked on the server for this\n * receiver instance for a duration as specified during the Queue/Subscription creation\n * (LockDuration). If processing of the message requires longer than this duration, the\n * lock needs to be renewed. For each renewal, it resets the time the message is locked by the\n * LockDuration set on the Entity.\n *\n * @param lockToken - Lock token of the message\n * @param options - Options that can be set while sending the request.\n * @returns New lock token expiry date and time in UTC format.\n */\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n async renewLock(lockToken: string, options?: SendManagementRequestOptions): Promise<Date> {\n throwErrorIfConnectionClosed(this._context);\n if (!options) options = {};\n if (options.timeoutInMs == null) options.timeoutInMs = 5000;\n\n try {\n const messageBody: any = {};\n\n messageBody[Constants.lockTokens] = types.wrap_array(\n [string_to_uuid(lockToken)],\n 0x98,\n undefined,\n );\n const updatedOptions = await this.initWithUniqueReplyTo(options);\n const request: RheaMessage = {\n body: messageBody,\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.renewLock,\n },\n };\n request.application_properties![Constants.trackingId] = generate_uuid();\n if (updatedOptions.associatedLinkName) {\n request.application_properties![Constants.associatedLinkName] =\n updatedOptions.associatedLinkName;\n }\n receiverLogger.verbose(\n \"[%s] Renew message Lock request: %O.\",\n this._context.connectionId,\n request,\n );\n const result = await this._makeManagementRequest(request, receiverLogger, {\n abortSignal: updatedOptions?.abortSignal,\n requestName: \"renewLock\",\n });\n const lockedUntilUtc = new Date(result.body.expirations[0]);\n return lockedUntilUtc;\n } catch (err: any) {\n const error = translateServiceBusError(err);\n receiverLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the renew lock request to $management endpoint`,\n );\n throw error;\n }\n }\n\n /**\n * Schedules an array of messages to appear on Service Bus at a later time.\n *\n * @param scheduledEnqueueTimeUtc - The UTC time at which the messages should be enqueued.\n * @param messages - An array of messages that needs to be scheduled.\n * @returns The sequence numbers of messages that were scheduled.\n */\n async scheduleMessages(\n scheduledEnqueueTimeUtc: Date,\n messages: ServiceBusMessage[] | AmqpAnnotatedMessage[],\n options?: OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<Long[]> {\n throwErrorIfConnectionClosed(this._context);\n if (!messages.length) {\n return [];\n }\n const messageBody: any[] = [];\n for (let i = 0; i < messages.length; i++) {\n const item = messages[i];\n\n try {\n const rheaMessage = toRheaMessage(item, defaultDataTransformer);\n updateMessageId(rheaMessage, rheaMessage.message_id || generate_uuid());\n updateScheduledTime(rheaMessage, scheduledEnqueueTimeUtc);\n\n const entry: {\n message: Buffer;\n [\"message-id\"]: ServiceBusMessage[\"messageId\"];\n [\"partition-key\"]?: ServiceBusMessage[\"partitionKey\"];\n [Constants.sessionIdMapKey]?: string | undefined;\n } = {\n message: RheaMessageUtil.encode(rheaMessage),\n \"message-id\": rheaMessage.message_id,\n };\n\n if (rheaMessage.group_id) {\n entry[Constants.sessionIdMapKey] = rheaMessage.group_id;\n }\n\n if (rheaMessage.message_annotations?.[Constants.partitionKey]) {\n entry[\"partition-key\"] = rheaMessage.message_annotations[Constants.partitionKey];\n }\n\n // Will be required later for implementing Transactions\n // if (item.viaPartitionKey) {\n // entry[\"via-partition-key\"] = item.viaPartitionKey;\n // }\n\n const wrappedEntry = types.wrap_map(entry);\n messageBody.push(wrappedEntry);\n } catch (err: any) {\n const error = translateServiceBusError(err);\n senderLogger.logError(\n error,\n `${this.logPrefix} An error occurred while encoding the item at position ${i} in the messages array`,\n );\n throw error;\n }\n }\n const updatedOptions = await this.initWithUniqueReplyTo(options);\n try {\n const request: RheaMessage = {\n body: { messages: messageBody },\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.scheduleMessage,\n },\n };\n if (updatedOptions?.associatedLinkName) {\n request.application_properties![Constants.associatedLinkName] =\n updatedOptions?.associatedLinkName;\n }\n request.application_properties![Constants.trackingId] = generate_uuid();\n senderLogger.verbose(\"%s Schedule messages request body: %O.\", this.logPrefix, request.body);\n const result = await this._makeManagementRequest(request, senderLogger, updatedOptions);\n const sequenceNumbers = result.body[Constants.sequenceNumbers];\n const sequenceNumbersAsLong = [];\n for (let i = 0; i < sequenceNumbers.length; i++) {\n if (typeof sequenceNumbers[i] === \"number\") {\n sequenceNumbersAsLong.push(Long.fromNumber(sequenceNumbers[i]));\n } else {\n sequenceNumbersAsLong.push(Long.fromBytesBE(sequenceNumbers[i]));\n }\n }\n return sequenceNumbersAsLong;\n } catch (err: any) {\n const error = translateServiceBusError(err);\n senderLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the request to schedule messages to $management endpoint`,\n );\n throw error;\n }\n }\n\n /**\n * Cancels an array of messages that were scheduled.\n * @param sequenceNumbers - An Array of sequence numbers of the message to be cancelled.\n */\n async cancelScheduledMessages(\n sequenceNumbers: Long[],\n options?: OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<void> {\n throwErrorIfConnectionClosed(this._context);\n if (!sequenceNumbers.length) {\n return;\n }\n const messageBody: any = {};\n messageBody[Constants.sequenceNumbers] = [];\n for (let i = 0; i < sequenceNumbers.length; i++) {\n const sequenceNumber = sequenceNumbers[i];\n try {\n messageBody[Constants.sequenceNumbers].push(Buffer.from(sequenceNumber.toBytesBE()));\n } catch (err: any) {\n const error = translateServiceBusError(err);\n senderLogger.logError(\n error,\n `${this.logPrefix} An error occurred while encoding the item at position ${i} in the sequenceNumbers array`,\n );\n throw error;\n }\n }\n\n try {\n messageBody[Constants.sequenceNumbers] = types.wrap_array(\n messageBody[Constants.sequenceNumbers],\n 0x81,\n undefined,\n );\n const updatedOptions = await this.initWithUniqueReplyTo(options);\n const request: RheaMessage = {\n body: messageBody,\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.cancelScheduledMessage,\n },\n };\n\n if (updatedOptions?.associatedLinkName) {\n request.application_properties![Constants.associatedLinkName] =\n updatedOptions?.associatedLinkName;\n }\n request.application_properties![Constants.trackingId] = generate_uuid();\n senderLogger.verbose(\n \"%s Cancel scheduled messages request body: %O.\",\n this.logPrefix,\n request.body,\n );\n\n await this._makeManagementRequest(request, senderLogger, updatedOptions);\n return;\n } catch (err: any) {\n const error = translateServiceBusError(err);\n senderLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the request to cancel the scheduled message to $management endpoint`,\n );\n throw error;\n }\n }\n\n /**\n * Receives a list of deferred messages identified by `sequenceNumbers`.\n *\n * @param sequenceNumbers - A list containing the sequence numbers to receive.\n * @param receiveMode - The mode in which the receiver was created.\n * @returns a list of messages identified by the given sequenceNumbers or an empty list if no messages are found.\n * - Throws an error if the messages have not been deferred.\n */\n async receiveDeferredMessages(\n sequenceNumbers: Long[],\n receiveMode: ReceiveMode,\n sessionId?: string,\n options?: OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<ServiceBusMessageImpl[]> {\n throwErrorIfConnectionClosed(this._context);\n\n if (!sequenceNumbers.length) {\n return [];\n }\n\n const messageList: ServiceBusMessageImpl[] = [];\n const messageBody: any = {};\n messageBody[Constants.sequenceNumbers] = [];\n for (let i = 0; i < sequenceNumbers.length; i++) {\n const sequenceNumber = sequenceNumbers[i];\n try {\n messageBody[Constants.sequenceNumbers].push(Buffer.from(sequenceNumber.toBytesBE()));\n } catch (err: any) {\n const error = translateServiceBusError(err);\n receiverLogger.logError(\n error,\n `${this.logPrefix} An error occurred while encoding the item at position ${i} in the sequenceNumbers array`,\n );\n throw error;\n }\n }\n\n try {\n messageBody[Constants.sequenceNumbers] = types.wrap_array(\n messageBody[Constants.sequenceNumbers],\n 0x81,\n undefined,\n );\n const receiverSettleMode: number = receiveMode === \"receiveAndDelete\" ? 0 : 1;\n messageBody[Constants.receiverSettleMode] = types.wrap_uint(receiverSettleMode);\n if (sessionId != null) {\n messageBody[Constants.sessionIdMapKey] = sessionId;\n }\n const updatedOptions = await this.initWithUniqueReplyTo(options);\n const request: RheaMessage = {\n body: messageBody,\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.receiveBySequenceNumber,\n },\n };\n if (updatedOptions?.associatedLinkName) {\n request.application_properties![Constants.associatedLinkName] =\n updatedOptions?.associatedLinkName;\n }\n request.application_properties![Constants.trackingId] = generate_uuid();\n receiverLogger.verbose(\n \"%s Receive deferred messages request body: %O.\",\n this.logPrefix,\n request.body,\n );\n\n const result = await this._makeManagementRequest(request, receiverLogger, updatedOptions);\n const messages = result.body.messages as {\n message: Buffer;\n \"lock-token\": Buffer;\n }[];\n for (const msg of messages) {\n const decodedMessage = RheaMessageUtil.decode(msg.message);\n const message = new ServiceBusMessageImpl(\n decodedMessage as any,\n { tag: msg[\"lock-token\"] } as any,\n false,\n receiveMode,\n updatedOptions?.skipParsingBodyAsJson ?? false,\n false,\n );\n messageList.push(message);\n }\n return messageList;\n } catch (err: any) {\n const error = translateServiceBusError(err);\n receiverLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the request to receive deferred messages to $management endpoint`,\n );\n throw error;\n }\n }\n\n private async _deleteMessages(\n messageCount: number,\n enqueueTimeUtcOlderThan: Date,\n sessionId?: string,\n options?: OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<number> {\n try {\n const messageBody: any = {};\n messageBody[Constants.messageCount] = types.wrap_int(messageCount);\n messageBody[Constants.enqueuedTimeUtc] = enqueueTimeUtcOlderThan;\n if (isDefined(sessionId)) {\n messageBody[Constants.sessionIdMapKey] = sessionId;\n }\n\n const updatedOptions = await this.initWithUniqueReplyTo(options);\n const request: RheaMessage = {\n body: messageBody,\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.deleteMessages,\n },\n };\n if (updatedOptions?.associatedLinkName) {\n request.application_properties![Constants.associatedLinkName] =\n updatedOptions?.associatedLinkName;\n }\n request.application_properties![Constants.trackingId] = generate_uuid();\n receiverLogger.verbose(\"%s delete messages request body: %O.\", this.logPrefix, request.body);\n\n const result = await this._makeManagementRequest(request, receiverLogger, updatedOptions);\n if (result.application_properties!.statusCode === 200) {\n return result.body[\"message-count\"];\n } else if (\n result.application_properties!.statusCode === 204 &&\n result.application_properties!.errorCondition === \"com.microsoft:message-not-found\"\n ) {\n return 0;\n } else {\n throw new Error(\n `Unexpected response with status code of ${result.application_properties!.statusCode}`,\n );\n }\n } catch (err: any) {\n const error = translateServiceBusError(err) as MessagingError;\n receiverLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the request to delete messages to $management endpoint`,\n );\n throw error;\n }\n }\n\n /**\n * Delete messages. If no option is specified, all messages will be deleted.\n *\n * @param messageCount - number of messages to delete in a batch.\n * @param enqueueTimeUtcOlderThan - Delete messages whose enqueue time (UTC) are older than this.\n * @returns number of messages deleted.\n */\n async deleteMessages(\n messageCount: number,\n enqueueTimeUtcOlderThan?: Date,\n sessionId?: string,\n options: OperationOptionsBase & SendManagementRequestOptions = {},\n ): Promise<number> {\n throwTypeErrorIfParameterMissing(this._context.connectionId, \"messageCount\", messageCount);\n throwTypeErrorIfParameterTypeMismatch(\n this._context.connectionId,\n \"messageCount\",\n messageCount,\n \"number\",\n );\n\n if (isNaN(messageCount) || messageCount < 1) {\n throw new TypeError(\"'messageCount' must be a number greater than 0.\");\n }\n\n enqueueTimeUtcOlderThan ??= new Date();\n\n return this._deleteMessages(messageCount, enqueueTimeUtcOlderThan, sessionId, options);\n }\n\n /**\n * Updates the disposition status of deferred messages.\n *\n * @param lockTokens - Message lock tokens to update disposition status.\n * @param dispositionStatus - The disposition status to be set\n * @param options - Optional parameters that can be provided while updating the disposition status.\n */\n async updateDispositionStatus(\n lockToken: string,\n dispositionType: DispositionType,\n // TODO: mgmt link retry<> will come in the next PR.\n options?: Omit<DispositionStatusOptions, \"retryOptions\"> & SendManagementRequestOptions,\n ): Promise<void> {\n throwErrorIfConnectionClosed(this._context);\n if (!options) options = {};\n try {\n let dispositionStatus: \"completed\" | \"defered\" | \"suspended\" | \"abandoned\";\n\n if (dispositionType === DispositionType.abandon) dispositionStatus = \"abandoned\";\n else if (dispositionType === DispositionType.complete) dispositionStatus = \"completed\";\n else if (dispositionType === DispositionType.defer) dispositionStatus = \"defered\";\n else if (dispositionType === DispositionType.deadletter) dispositionStatus = \"suspended\";\n else throw new Error(`Provided \"dispositionType\" - ${dispositionType} is invalid`);\n\n const messageBody: any = {};\n const lockTokenBuffer: Buffer[] = [];\n lockTokenBuffer.push(string_to_uuid(lockToken));\n messageBody[Constants.lockTokens] = types.wrap_array(lockTokenBuffer, 0x98, undefined);\n messageBody[Constants.dispositionStatus] = dispositionStatus;\n if (options.deadLetterDescription != null) {\n messageBody[Constants.deadLetterDescription] = options.deadLetterDescription;\n }\n if (options.deadLetterReason != null) {\n messageBody[Constants.deadLetterReason] = options.deadLetterReason;\n }\n if (options.propertiesToModify != null) {\n messageBody[Constants.propertiesToModify] = options.propertiesToModify;\n }\n if (options.sessionId != null) {\n messageBody[Constants.sessionIdMapKey] = options.sessionId;\n }\n const updatedOptions = await this.initWithUniqueReplyTo(options);\n const request: RheaMessage = {\n body: messageBody,\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.updateDisposition,\n },\n };\n if (updatedOptions.associatedLinkName) {\n request.application_properties![Constants.associatedLinkName] =\n updatedOptions.associatedLinkName;\n }\n request.application_properties![Constants.trackingId] = generate_uuid();\n receiverLogger.verbose(\n \"%s Update disposition status request body: %O.\",\n this.logPrefix,\n request.body,\n );\n await this._makeManagementRequest(request, receiverLogger, updatedOptions);\n } catch (err: any) {\n const error = translateServiceBusError(err);\n receiverLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the request to update disposition status to $management endpoint`,\n );\n throw error;\n }\n }\n\n /**\n * Renews the lock for the specified session.\n *\n * @param sessionId - Id of the session for which the lock needs to be renewed\n * @param options - Options that can be set while sending the request.\n * @returns New lock token expiry date and time in UTC format.\n */\n async renewSessionLock(\n sessionId: string,\n options?: OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<Date> {\n throwErrorIfConnectionClosed(this._context);\n try {\n const messageBody: any = {};\n messageBody[Constants.sessionIdMapKey] = sessionId;\n const updatedOptions = await this.initWithUniqueReplyTo(options);\n const request: RheaMessage = {\n body: messageBody,\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.renewSessionLock,\n },\n };\n request.application_properties![Constants.trackingId] = generate_uuid();\n if (updatedOptions?.associatedLinkName) {\n request.application_properties![Constants.associatedLinkName] =\n updatedOptions?.associatedLinkName;\n }\n receiverLogger.verbose(\n \"%s Renew Session Lock request body: %O.\",\n this.logPrefix,\n request.body,\n );\n const result = await this._makeManagementRequest(request, receiverLogger, updatedOptions);\n const lockedUntilUtc = new Date(result.body.expiration);\n receiverLogger.verbose(\n \"%s Lock for session '%s' will expire at %s.\",\n this.logPrefix,\n sessionId,\n lockedUntilUtc.toString(),\n );\n return lockedUntilUtc;\n } catch (err: any) {\n const error = translateServiceBusError(err);\n receiverLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the renew lock request to $management endpoint`,\n );\n throw error;\n }\n }\n\n /**\n * Sets the state of the specified session.\n *\n * @param sessionId - The session for which the state needs to be set\n * @param state - The state that needs to be set.\n */\n async setSessionState(\n sessionId: string,\n state: unknown,\n options?: OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<void> {\n throwErrorIfConnectionClosed(this._context);\n\n try {\n const messageBody: any = {};\n messageBody[Constants.sessionIdMapKey] = sessionId;\n messageBody[\"session-state\"] = toBuffer(state);\n const updatedOptions = await this.initWithUniqueReplyTo(options);\n const request: RheaMessage = {\n body: messageBody,\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.setSessionState,\n },\n };\n if (updatedOptions?.associatedLinkName) {\n request.application_properties![Constants.associatedLinkName] =\n updatedOptions?.associatedLinkName;\n }\n request.application_properties![Constants.trackingId] = generate_uuid();\n receiverLogger.verbose(\n \"%s Set Session state request body: %O.\",\n this.logPrefix,\n request.body,\n );\n await this._makeManagementRequest(request, receiverLogger, updatedOptions);\n } catch (err: any) {\n const error = translateServiceBusError(err);\n receiverLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the renew lock request to $management endpoint`,\n );\n throw error;\n }\n }\n\n /**\n * Gets the state of the specified session.\n *\n * @param sessionId - The session for which the state needs to be retrieved.\n * @returns The state of that session\n */\n async getSessionState(\n sessionId: string,\n options?: OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<any> {\n throwErrorIfConnectionClosed(this._context);\n try {\n const messageBody: any = {};\n messageBody[Constants.sessionIdMapKey] = sessionId;\n const updatedOptions = await this.initWithUniqueReplyTo(options);\n const request: RheaMessage = {\n body: messageBody,\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.getSessionState,\n },\n };\n if (updatedOptions?.associatedLinkName) {\n request.application_properties![Constants.associatedLinkName] =\n updatedOptions?.associatedLinkName;\n }\n request.application_properties![Constants.trackingId] = generate_uuid();\n receiverLogger.verbose(\n \"%s Get session state request body: %O.\",\n this.logPrefix,\n request.body,\n );\n const result = await this._makeManagementRequest(request, receiverLogger, updatedOptions);\n return result.body[\"session-state\"]\n ? tryToJsonDecode(result.body[\"session-state\"])\n : result.body[\"session-state\"];\n } catch (err: any) {\n const error = translateServiceBusError(err);\n receiverLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the renew lock request to $management endpoint`,\n );\n throw error;\n }\n }\n\n /**\n * Lists the sessions on the ServiceBus Queue/Topic.\n * @param lastUpdateTime - Filter to include only sessions updated after a given time.\n * @param skip - The number of sessions to skip\n * @param top - Maximum numer of sessions.\n * @returns A list of session ids.\n */\n async listMessageSessions(\n skip: number,\n top: number,\n lastUpdatedTime?: Date,\n options?: OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<string[]> {\n throwErrorIfConnectionClosed(this._context);\n const defaultLastUpdatedTimeForListingSessions: number = 259200000; // 3 * 24 * 3600 * 1000\n if (typeof skip !== \"number\") {\n throw new Error(\"'skip' is a required parameter and must be of type 'number'.\");\n }\n if (typeof top !== \"number\") {\n throw new Error(\"'top' is a required parameter and must be of type 'number'.\");\n }\n if (lastUpdatedTime && !(lastUpdatedTime instanceof Date)) {\n throw new Error(\"'lastUpdatedTime' must be of type 'Date'.\");\n }\n if (!lastUpdatedTime) {\n lastUpdatedTime = new Date(Date.now() - defaultLastUpdatedTimeForListingSessions);\n }\n try {\n const messageBody: any = {};\n messageBody[\"last-updated-time\"] = lastUpdatedTime;\n messageBody[\"skip\"] = types.wrap_int(skip);\n messageBody[\"top\"] = types.wrap_int(top);\n const updatedOptions = await this.initWithUniqueReplyTo(options);\n const request: RheaMessage = {\n body: messageBody,\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.enumerateSessions,\n },\n };\n request.application_properties![Constants.trackingId] = generate_uuid();\n managementClientLogger.verbose(\n \"%s List sessions request body: %O.\",\n this.logPrefix,\n request.body,\n );\n const response = await this._makeManagementRequest(\n request,\n managementClientLogger,\n updatedOptions,\n );\n\n return (response && response.body && response.body[\"sessions-ids\"]) || [];\n } catch (err: any) {\n const error = translateServiceBusError(err);\n managementClientLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the renew lock request to $management endpoint`,\n );\n throw error;\n }\n }\n\n /**\n * Get all the rules on the Subscription.\n * @returns A list of rules.\n */\n async getRules(\n options?: ListRequestOptions & OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<RuleProperties[]> {\n throwErrorIfConnectionClosed(this._context);\n try {\n const updatedOptions = (await this.initWithUniqueReplyTo(options)) as ListRequestOptions &\n OperationOptionsBase &\n SendManagementRequestOptions;\n const request: RheaMessage = {\n body: {\n top: updatedOptions?.maxCount\n ? types.wrap_int(updatedOptions.maxCount)\n : types.wrap_int(max32BitNumber),\n skip: updatedOptions?.skip ? types.wrap_int(updatedOptions.skip) : types.wrap_int(0),\n },\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.enumerateRules,\n },\n };\n request.application_properties![Constants.trackingId] = generate_uuid();\n\n managementClientLogger.verbose(\n \"%s Get rules request body: %O.\",\n this.logPrefix,\n request.body,\n );\n const response = await this._makeManagementRequest(\n request,\n managementClientLogger,\n updatedOptions,\n );\n if (\n response.application_properties!.statusCode === 204 ||\n !response.body ||\n !Array.isArray(response.body.rules)\n ) {\n return [];\n }\n\n // Reference: https://learn.microsoft.com/azure/service-bus-messaging/service-bus-amqp-request-response#response-11\n const result: { \"rule-description\": Typed }[] = response.body.rules || [];\n const rules: RuleProperties[] = [];\n result.forEach((x) => {\n const ruleDescriptor = x[\"rule-description\"];\n let filter: SqlRuleFilter | CorrelationRuleFilter;\n\n // We use the first three elements of the `ruleDescriptor.value` to get filter, action, name\n if (\n !ruleDescriptor ||\n !ruleDescriptor.descriptor ||\n ruleDescriptor.descriptor.value !== Constants.descriptorCodes.ruleDescriptionList ||\n !Array.isArray(ruleDescriptor.value) ||\n ruleDescriptor.value.length < 3\n ) {\n return;\n }\n\n const filtersRawData: Typed = ruleDescriptor.value[0];\n const actionsRawData: Typed = ruleDescriptor.value[1];\n let sqlRuleAction: SqlRuleAction;\n if (\n actionsRawData.descriptor.value === Constants.descriptorCodes.sqlRuleActionList &&\n Array.isArray(actionsRawData.value) &&\n actionsRawData.value.length\n ) {\n sqlRuleAction = {\n sqlExpression: this._safelyGetTypedValueFromArray(actionsRawData.value, 0),\n };\n } else {\n sqlRuleAction = {};\n }\n\n switch (filtersRawData.descriptor.value) {\n case Constants.descriptorCodes.trueFilterList:\n filter = {\n sqlExpression: \"1=1\",\n };\n break;\n case Constants.descriptorCodes.falseFilterList:\n filter = {\n sqlExpression: \"1=0\",\n };\n break;\n case Constants.descriptorCodes.sqlFilterList:\n filter = {\n sqlExpression: this._safelyGetTypedValueFromArray(filtersRawData.value, 0),\n };\n break;\n case Constants.descriptorCodes.correlationFilterList:\n filter = {\n correlationId: this._safelyGetTypedValueFromArray(filtersRawData.value, 0),\n messageId: this._safelyGetTypedValueFromArray(filtersRawData.value, 1),\n to: this._safelyGetTypedValueFromArray(filtersRawData.value, 2),\n replyTo: this._safelyGetTypedValueFromArray(filtersRawData.value, 3),\n subject: this._safelyGetTypedValueFromArray(filtersRawData.value, 4),\n sessionId: this._safelyGetTypedValueFromArray(filtersRawData.value, 5),\n replyToSessionId: this._safelyGetTypedValueFromArray(filtersRawData.value, 6),\n contentType: this._safelyGetTypedValueFromArray(filtersRawData.value, 7),\n applicationProperties:\n Array.isArray(filtersRawData.value) &&\n filtersRawData.value.length > 8 &&\n filtersRawData.value[8]\n ? this._decodeApplicationPropertiesMap(filtersRawData.value[8])\n : undefined,\n };\n break;\n default:\n throw new Error(\n `${this.logPrefix} Found unexpected descriptor code for the filter: ${filtersRawData.descriptor.value}`,\n );\n }\n\n const rule: RuleProperties = {\n name: ruleDescriptor.value[2].value,\n filter,\n action: sqlRuleAction,\n };\n rules.push(rule);\n });\n\n return rules;\n } catch (err: any) {\n const error = translateServiceBusError(err);\n managementClientLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the get rules request to $management endpoint`,\n );\n throw error;\n }\n }\n\n /**\n * Removes the rule on the Subscription identified by the given rule name.\n */\n async removeRule(\n ruleName: string,\n options?: OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<void> {\n throwErrorIfConnectionClosed(this._context);\n throwTypeErrorIfParameterMissing(this._context.connectionId, \"ruleName\", ruleName);\n ruleName = String(ruleName);\n throwTypeErrorIfParameterIsEmptyString(this._context.connectionId, \"ruleName\", ruleName);\n\n try {\n const updatedOptions = await this.initWithUniqueReplyTo(options);\n const request: RheaMessage = {\n body: {\n \"rule-name\": types.wrap_string(ruleName),\n },\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.removeRule,\n },\n };\n request.application_properties![Constants.trackingId] = generate_uuid();\n\n managementClientLogger.verbose(\n \"%s Remove Rule request body: %O.\",\n this.logPrefix,\n request.body,\n );\n await this._makeManagementRequest(request, managementClientLogger, updatedOptions);\n } catch (err: any) {\n const error = translateServiceBusError(err);\n managementClientLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the remove rule request to $management endpoint`,\n );\n throw error;\n }\n }\n\n /**\n * Adds a rule on the subscription as defined by the given rule name, filter and action\n * @param ruleName - Name of the rule\n * @param filter - A Boolean, SQL expression or a Correlation filter\n * @param sqlRuleActionExpression - Action to perform if the message satisfies the filtering expression\n */\n async addRule(\n ruleName: string,\n filter: SqlRuleFilter | CorrelationRuleFilter,\n sqlRuleActionExpression?: string,\n options?: OperationOptionsBase & SendManagementRequestOptions,\n ): Promise<void> {\n throwErrorIfConnectionClosed(this._context);\n\n throwTypeErrorIfParameterMissing(this._context.connectionId, \"ruleName\", ruleName);\n ruleName = String(ruleName);\n throwTypeErrorIfParameterIsEmptyString(this._context.connectionId, \"ruleName\", ruleName);\n\n throwTypeErrorIfParameterMissing(this._context.connectionId, \"filter\", filter);\n if (!isSqlRuleFilter(filter) && !isCorrelationRuleFilter(filter)) {\n throw new TypeError(\n `The parameter \"filter\" should implement either the SqlRuleFilter or the CorrelationRuleFilter interface.`,\n );\n }\n\n try {\n const ruleDescription: any = {};\n if (isSqlRuleFilter(filter)) {\n ruleDescription[\"sql-filter\"] = {\n expression: filter.sqlExpression,\n };\n } else {\n ruleDescription[\"correlation-filter\"] = {\n \"correlation-id\": filter.correlationId,\n \"message-id\": filter.messageId,\n to: filter.to,\n \"reply-to\": filter.replyTo,\n label: filter.subject,\n \"session-id\": filter.sessionId,\n \"reply-to-session-id\": filter.replyToSessionId,\n \"content-type\": filter.contentType,\n properties: filter.applicationProperties,\n };\n }\n\n if (sqlRuleActionExpression !== undefined) {\n ruleDescription[\"sql-rule-action\"] = {\n expression: String(sqlRuleActionExpression),\n };\n }\n const updatedOptions = await this.initWithUniqueReplyTo(options);\n const request: RheaMessage = {\n body: {\n \"rule-name\": types.wrap_string(ruleName),\n \"rule-description\": types.wrap_map(ruleDescription),\n },\n reply_to: this.replyTo,\n application_properties: {\n operation: Constants.operations.addRule,\n },\n };\n request.application_properties![Constants.trackingId] = generate_uuid();\n\n managementClientLogger.verbose(\"%s Add Rule request body: %O.\", this.logPrefix, request.body);\n await this._makeManagementRequest(request, managementClientLogger, updatedOptions);\n } catch (err: any) {\n const error = translateServiceBusError(err);\n managementClientLogger.logError(\n error,\n `${this.logPrefix} An error occurred while sending the Add rule request to $management endpoint`,\n );\n throw error;\n }\n }\n\n protected removeLinkFromContext(): void {\n delete this._context.managementClients[this.name];\n }\n}\n\n/**\n * Converts an AmqpAnnotatedMessage or ServiceBusMessage into a properly formatted\n * message for sending to the mgmt link for scheduling.\n *\n * @internal\n * @hidden\n */\nexport function toScheduleableMessage(\n item: ServiceBusMessage | AmqpAnnotatedMessage,\n scheduledEnqueueTimeUtc: Date,\n): Record<string, unknown> {\n const rheaMessage = toRheaMessage(item, defaultDataTransformer);\n updateMessageId(rheaMessage, rheaMessage.message_id || generate_uuid());\n updateScheduledTime(rheaMessage, scheduledEnqueueTimeUtc);\n\n const entry: Record<string, unknown> = {\n message: RheaMessageUtil.encode(rheaMessage),\n \"message-id\": rheaMessage.message_id,\n };\n\n rheaMessage.message_annotations = {\n ...rheaMessage.message_annotations,\n [Constants.scheduledEnqueueTime]: scheduledEnqueueTimeUtc,\n };\n\n if (rheaMessage.group_id) {\n entry[Constants.sessionIdMapKey] = rheaMessage.group_id;\n }\n\n const partitionKey =\n rheaMessage.message_annotations && rheaMessage.message_annotations[Constants.partitionKey];\n\n if (partitionKey) {\n entry[\"partition-key\"] = partitionKey;\n }\n return entry;\n}\n"]}
@@ -0,0 +1,147 @@
1
+ import type { MessagingError, RetryOptions } from "@azure/core-amqp";
2
+ import type { AmqpError, EventContext, OnAmqpEvent, Receiver, ReceiverOptions } from "rhea-promise";
3
+ import type { ReceiverType } from "./linkEntity.js";
4
+ import { LinkEntity } from "./linkEntity.js";
5
+ import type { ConnectionContext } from "../connectionContext.js";
6
+ import type { ServiceBusMessageImpl } from "../serviceBusMessage.js";
7
+ import { DispositionType } from "../serviceBusMessage.js";
8
+ import type { ProcessErrorArgs, ReceiveMode, SubscribeOptions } from "../models.js";
9
+ import type { DispositionStatusOptions } from "./managementClient.js";
10
+ import type { AbortSignalLike } from "@azure/abort-controller";
11
+ import type { DeferredPromiseAndTimer, ReceiverHandlers } from "./shared.js";
12
+ import type { LockRenewer } from "./autoLockRenewer.js";
13
+ /**
14
+ * @internal
15
+ */
16
+ export interface OnAmqpEventAsPromise extends OnAmqpEvent {
17
+ (context: EventContext): Promise<void>;
18
+ }
19
+ /**
20
+ * @internal
21
+ */
22
+ export interface ReceiveOptions extends SubscribeOptions {
23
+ /**
24
+ * The mode in which messages should be received.
25
+ */
26
+ receiveMode: ReceiveMode;
27
+ /**
28
+ * Retry policy options that determine the mode, number of retries, retry interval etc.
29
+ */
30
+ retryOptions?: RetryOptions;
31
+ /**
32
+ * A LockAutoRenewer that will automatically renew locks based on user specified interval.
33
+ * This will be set if the user has chosen peekLock mode _and_ they've set a positive
34
+ * maxAutoRenewLockDurationInMs value when they created their receiver.
35
+ */
36
+ lockRenewer: LockRenewer | undefined;
37
+ /**
38
+ * Option to disable the client from running JSON.parse() on the message body when receiving the message.
39
+ * Not applicable if the message was sent with AMQP body type value or sequence. Use this option when you
40
+ * prefer to work directly with the bytes present in the message body than have the client attempt to parse it.
41
+ */
42
+ skipParsingBodyAsJson: boolean;
43
+ /**
44
+ * Whether to skip converting Date type on properties of message annotations
45
+ * or application properties into numbers when receiving the message. By
46
+ * default, properties of Date type is converted into UNIX epoch number for
47
+ * compatibility.
48
+ */
49
+ skipConvertingDate: boolean;
50
+ }
51
+ /**
52
+ * Describes the signature of the message handler passed to `registerMessageHandler` method.
53
+ * @internal
54
+ */
55
+ export interface OnMessage {
56
+ /**
57
+ * Handler for processing each incoming message.
58
+ */
59
+ (message: ServiceBusMessageImpl): Promise<void>;
60
+ }
61
+ /**
62
+ * Describes the signature of the error handler passed to `registerMessageHandler` method.
63
+ *
64
+ * @internal
65
+ */
66
+ export interface OnError {
67
+ /**
68
+ * Handler for any error that occurs while receiving or processing messages.
69
+ *
70
+ * NOTE: if this signature changes make sure you reflect those same changes in the
71
+ * `OnErrorNoContext` definition below.
72
+ */
73
+ (args: ProcessErrorArgs): Promise<void>;
74
+ }
75
+ /**
76
+ * An onError method but without the context property. Used when wrapping OnError
77
+ * with an implicit ProcessErrorContext. Used by LockRenewer.
78
+ *
79
+ * @internal
80
+ */
81
+ export interface OnErrorNoContext {
82
+ (error: MessagingError | Error): void;
83
+ }
84
+ /**
85
+ * @internal
86
+ * Describes the MessageReceiver that will receive messages from ServiceBus.
87
+ */
88
+ export declare abstract class MessageReceiver extends LinkEntity<Receiver> {
89
+ identifier: string;
90
+ /**
91
+ * The type of receiver: "batching" or "streaming".
92
+ */
93
+ receiverType: ReceiverType;
94
+ /**
95
+ * The mode in which messages should be received.
96
+ * Default: ReceiveMode.peekLock
97
+ */
98
+ receiveMode: ReceiveMode;
99
+ /**
100
+ * Indicates whether `Message.complete()` should be called
101
+ * automatically after the message processing is complete while receiving messages with handlers.
102
+ * Default: false.
103
+ */
104
+ autoComplete: boolean;
105
+ /**
106
+ * Maintains a map of deliveries that
107
+ * are being actively disposed. It acts as a store for correlating the responses received for
108
+ * active dispositions.
109
+ */
110
+ protected _deliveryDispositionMap: Map<number, DeferredPromiseAndTimer>;
111
+ /**
112
+ * A lock renewer that handles message lock auto-renewal. This is undefined unless the user
113
+ * has activated autolock renewal via ReceiveOptions. A single auto lock renewer is shared
114
+ * for all links for a `ServiceBusReceiver` instance.
115
+ */
116
+ protected _lockRenewer: LockRenewer | undefined;
117
+ constructor(identifier: string, context: ConnectionContext, entityPath: string, receiverType: ReceiverType, options: Omit<ReceiveOptions, "maxConcurrentCalls">);
118
+ /**
119
+ * Creates the options that need to be specified while creating an AMQP receiver link.
120
+ */
121
+ protected _createReceiverOptions(useNewName: boolean, handlers: ReceiverHandlers): ReceiverOptions;
122
+ /**
123
+ * Creates a new AMQP receiver under a new AMQP session.
124
+ */
125
+ protected _init(options: ReceiverOptions, abortSignal?: AbortSignalLike): Promise<void>;
126
+ protected createRheaLink(options: ReceiverOptions, _abortSignal?: AbortSignalLike): Promise<Receiver>;
127
+ /**
128
+ * React to receiver being detached due to given error.
129
+ * You may want to set up retries to recover the broken link and/or report error to user.
130
+ * @param error - The error accompanying the receiver/session error or connection disconnected events
131
+ */
132
+ abstract onDetached(error?: AmqpError | Error): Promise<void>;
133
+ /**
134
+ * Clears lock renewal timers on all active messages, clears token remewal for current receiver,
135
+ * removes current MessageReceiver instance from cache, and closes the underlying AMQP receiver.
136
+ * @returns Promise<void>.
137
+ */
138
+ close(): Promise<void>;
139
+ /**
140
+ * Settles the message with the specified disposition.
141
+ * @param message - The ServiceBus Message that needs to be settled.
142
+ * @param operation - The disposition type.
143
+ * @param options - Optional parameters that can be provided while disposing the message.
144
+ */
145
+ settleMessage(message: ServiceBusMessageImpl, operation: DispositionType, options: DispositionStatusOptions): Promise<any>;
146
+ }
147
+ //# sourceMappingURL=messageReceiver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageReceiver.d.ts","sourceRoot":"","sources":["../../../src/core/messageReceiver.ts"],"names":[],"mappings":"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"}
@@ -1,29 +1,51 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
3
- import { Constants, ErrorNameConditionMapper, } from "@azure/core-amqp";
4
- import { receiverLogger as logger } from "../log";
5
- import { LinkEntity } from "./linkEntity";
6
- import { DispositionType } from "../serviceBusMessage";
7
- import { getUniqueName } from "../util/utils";
8
- import { onMessageSettled, createReceiverOptions, } from "./shared";
9
- import { translateServiceBusError } from "../serviceBusError";
2
+ // Licensed under the MIT License.
3
+ import { Constants, ErrorNameConditionMapper } from "@azure/core-amqp";
4
+ import { receiverLogger as logger } from "../log.js";
5
+ import { LinkEntity } from "./linkEntity.js";
6
+ import { DispositionType } from "../serviceBusMessage.js";
7
+ import { getUniqueName } from "../util/utils.js";
8
+ import { onMessageSettled, createReceiverOptions } from "./shared.js";
9
+ import { translateServiceBusError } from "../serviceBusError.js";
10
10
  /**
11
11
  * @internal
12
12
  * Describes the MessageReceiver that will receive messages from ServiceBus.
13
13
  */
14
14
  export class MessageReceiver extends LinkEntity {
15
+ identifier;
16
+ /**
17
+ * The type of receiver: "batching" or "streaming".
18
+ */
19
+ receiverType;
20
+ /**
21
+ * The mode in which messages should be received.
22
+ * Default: ReceiveMode.peekLock
23
+ */
24
+ receiveMode;
25
+ /**
26
+ * Indicates whether `Message.complete()` should be called
27
+ * automatically after the message processing is complete while receiving messages with handlers.
28
+ * Default: false.
29
+ */
30
+ autoComplete;
31
+ /**
32
+ * Maintains a map of deliveries that
33
+ * are being actively disposed. It acts as a store for correlating the responses received for
34
+ * active dispositions.
35
+ */
36
+ _deliveryDispositionMap = new Map();
37
+ /**
38
+ * A lock renewer that handles message lock auto-renewal. This is undefined unless the user
39
+ * has activated autolock renewal via ReceiveOptions. A single auto lock renewer is shared
40
+ * for all links for a `ServiceBusReceiver` instance.
41
+ */
42
+ _lockRenewer;
15
43
  constructor(identifier, context, entityPath, receiverType, options) {
16
44
  super(entityPath, entityPath, context, receiverType, logger, {
17
45
  address: entityPath,
18
46
  audience: `${context.config.endpoint}${entityPath}`,
19
47
  });
20
48
  this.identifier = identifier;
21
- /**
22
- * Maintains a map of deliveries that
23
- * are being actively disposed. It acts as a store for correlating the responses received for
24
- * active dispositions.
25
- */
26
- this._deliveryDispositionMap = new Map();
27
49
  this.receiverType = receiverType;
28
50
  this.receiveMode = options.receiveMode || "peekLock";
29
51
  // If explicitly set to false then autoComplete is false else true (default).
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageReceiver.js","sourceRoot":"","sources":["../../../src/core/messageReceiver.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { MessagingError, RetryOptions } from \"@azure/core-amqp\";\nimport { Constants, ErrorNameConditionMapper } from \"@azure/core-amqp\";\nimport type { AmqpError, EventContext, OnAmqpEvent, Receiver, ReceiverOptions } from \"rhea-promise\";\nimport { receiverLogger as logger } from \"../log.js\";\nimport type { ReceiverType } from \"./linkEntity.js\";\nimport { LinkEntity } from \"./linkEntity.js\";\nimport type { ConnectionContext } from \"../connectionContext.js\";\nimport type { ServiceBusMessageImpl } from \"../serviceBusMessage.js\";\nimport { DispositionType } from \"../serviceBusMessage.js\";\nimport { getUniqueName } from \"../util/utils.js\";\nimport type { ProcessErrorArgs, ReceiveMode, SubscribeOptions } from \"../models.js\";\nimport type { DispositionStatusOptions } from \"./managementClient.js\";\nimport type { AbortSignalLike } from \"@azure/abort-controller\";\nimport type { DeferredPromiseAndTimer, ReceiverHandlers } from \"./shared.js\";\nimport { onMessageSettled, createReceiverOptions } from \"./shared.js\";\nimport type { LockRenewer } from \"./autoLockRenewer.js\";\nimport { translateServiceBusError } from \"../serviceBusError.js\";\n\n/**\n * @internal\n */\nexport interface OnAmqpEventAsPromise extends OnAmqpEvent {\n (context: EventContext): Promise<void>;\n}\n\n/**\n * @internal\n */\nexport interface ReceiveOptions extends SubscribeOptions {\n /**\n * The mode in which messages should be received.\n */\n receiveMode: ReceiveMode;\n /**\n * Retry policy options that determine the mode, number of retries, retry interval etc.\n */\n retryOptions?: RetryOptions;\n\n /**\n * A LockAutoRenewer that will automatically renew locks based on user specified interval.\n * This will be set if the user has chosen peekLock mode _and_ they've set a positive\n * maxAutoRenewLockDurationInMs value when they created their receiver.\n */\n lockRenewer: LockRenewer | undefined;\n /**\n * Option to disable the client from running JSON.parse() on the message body when receiving the message.\n * Not applicable if the message was sent with AMQP body type value or sequence. Use this option when you\n * prefer to work directly with the bytes present in the message body than have the client attempt to parse it.\n */\n skipParsingBodyAsJson: boolean;\n\n /**\n * Whether to skip converting Date type on properties of message annotations\n * or application properties into numbers when receiving the message. By\n * default, properties of Date type is converted into UNIX epoch number for\n * compatibility.\n */\n skipConvertingDate: boolean;\n}\n\n/**\n * Describes the signature of the message handler passed to `registerMessageHandler` method.\n * @internal\n */\nexport interface OnMessage {\n /**\n * Handler for processing each incoming message.\n */\n (message: ServiceBusMessageImpl): Promise<void>;\n}\n\n/**\n * Describes the signature of the error handler passed to `registerMessageHandler` method.\n *\n * @internal\n */\nexport interface OnError {\n /**\n * Handler for any error that occurs while receiving or processing messages.\n *\n * NOTE: if this signature changes make sure you reflect those same changes in the\n * `OnErrorNoContext` definition below.\n */\n (args: ProcessErrorArgs): Promise<void>;\n}\n\n/**\n * An onError method but without the context property. Used when wrapping OnError\n * with an implicit ProcessErrorContext. Used by LockRenewer.\n *\n * @internal\n */\nexport interface OnErrorNoContext {\n (error: MessagingError | Error): void;\n}\n\n/**\n * @internal\n * Describes the MessageReceiver that will receive messages from ServiceBus.\n */\nexport abstract class MessageReceiver extends LinkEntity<Receiver> {\n /**\n * The type of receiver: \"batching\" or \"streaming\".\n */\n receiverType: ReceiverType;\n /**\n * The mode in which messages should be received.\n * Default: ReceiveMode.peekLock\n */\n receiveMode: ReceiveMode;\n /**\n * Indicates whether `Message.complete()` should be called\n * automatically after the message processing is complete while receiving messages with handlers.\n * Default: false.\n */\n autoComplete: boolean;\n /**\n * Maintains a map of deliveries that\n * are being actively disposed. It acts as a store for correlating the responses received for\n * active dispositions.\n */\n protected _deliveryDispositionMap: Map<number, DeferredPromiseAndTimer> = new Map<\n number,\n DeferredPromiseAndTimer\n >();\n\n /**\n * A lock renewer that handles message lock auto-renewal. This is undefined unless the user\n * has activated autolock renewal via ReceiveOptions. A single auto lock renewer is shared\n * for all links for a `ServiceBusReceiver` instance.\n */\n protected _lockRenewer: LockRenewer | undefined;\n\n constructor(\n public identifier: string,\n context: ConnectionContext,\n entityPath: string,\n receiverType: ReceiverType,\n options: Omit<ReceiveOptions, \"maxConcurrentCalls\">,\n ) {\n super(entityPath, entityPath, context, receiverType, logger, {\n address: entityPath,\n audience: `${context.config.endpoint}${entityPath}`,\n });\n\n this.receiverType = receiverType;\n this.receiveMode = options.receiveMode || \"peekLock\";\n\n // If explicitly set to false then autoComplete is false else true (default).\n this.autoComplete =\n options.autoCompleteMessages === false ? options.autoCompleteMessages : true;\n this._lockRenewer = options.lockRenewer;\n }\n\n /**\n * Creates the options that need to be specified while creating an AMQP receiver link.\n */\n protected _createReceiverOptions(\n useNewName: boolean,\n handlers: ReceiverHandlers,\n ): ReceiverOptions {\n const rcvrOptions: ReceiverOptions = createReceiverOptions(\n useNewName ? getUniqueName(this.baseName) : this.name,\n this.receiveMode,\n {\n address: this.address,\n },\n this.identifier,\n {\n onSettled: (context: EventContext) => {\n return onMessageSettled(this.logPrefix, context.delivery, this._deliveryDispositionMap);\n },\n ...handlers,\n },\n );\n\n return rcvrOptions;\n }\n\n /**\n * Creates a new AMQP receiver under a new AMQP session.\n */\n protected async _init(options: ReceiverOptions, abortSignal?: AbortSignalLike): Promise<void> {\n try {\n await this.initLink(options, abortSignal);\n\n // It is possible for someone to close the receiver and then start it again.\n // Thus make sure that the receiver is present in the client cache.\n this._context.messageReceivers[this.name] = this as any;\n } catch (err: any) {\n const translatedError = translateServiceBusError(err);\n logger.logError(\n translatedError,\n \"%s An error occured while creating the receiver\",\n this.logPrefix,\n );\n\n // Fix the unhelpful error messages for the OperationTimeoutError that comes from `rhea-promise`.\n if ((translatedError as MessagingError).code === \"OperationTimeoutError\") {\n translatedError.message =\n \"Failed to create a receiver within allocated time and retry attempts.\";\n }\n\n throw translatedError;\n }\n }\n\n protected createRheaLink(\n options: ReceiverOptions,\n _abortSignal?: AbortSignalLike,\n ): Promise<Receiver> {\n return this._context.connection.createReceiver(options);\n }\n\n /**\n * React to receiver being detached due to given error.\n * You may want to set up retries to recover the broken link and/or report error to user.\n * @param error - The error accompanying the receiver/session error or connection disconnected events\n */\n abstract onDetached(error?: AmqpError | Error): Promise<void>;\n\n /**\n * Clears lock renewal timers on all active messages, clears token remewal for current receiver,\n * removes current MessageReceiver instance from cache, and closes the underlying AMQP receiver.\n * @returns Promise<void>.\n */\n async close(): Promise<void> {\n this._lockRenewer?.stopAll(this);\n await super.close();\n }\n\n /**\n * Settles the message with the specified disposition.\n * @param message - The ServiceBus Message that needs to be settled.\n * @param operation - The disposition type.\n * @param options - Optional parameters that can be provided while disposing the message.\n */\n async settleMessage(\n message: ServiceBusMessageImpl,\n operation: DispositionType,\n options: DispositionStatusOptions,\n ): Promise<any> {\n return new Promise((resolve, reject) => {\n if (operation.match(/^(complete|abandon|defer|deadletter)$/) == null) {\n return reject(new Error(`operation: '${operation}' is not a valid operation.`));\n }\n this._lockRenewer?.stop(this, message);\n const delivery = message.delivery;\n const timer = setTimeout(() => {\n this._deliveryDispositionMap.delete(delivery.id);\n\n logger.verbose(\n \"%s Disposition for delivery id: %d, did not complete in %d milliseconds. \" +\n \"Hence rejecting the promise with timeout error.\",\n this.logPrefix,\n delivery.id,\n Constants.defaultOperationTimeoutInMs,\n );\n\n const e: AmqpError = {\n condition: ErrorNameConditionMapper.ServiceUnavailableError,\n description:\n \"Operation to settle the message has timed out. The disposition of the \" +\n \"message may or may not be successful\",\n };\n return reject(translateServiceBusError(e));\n }, options.retryOptions?.timeoutInMs ?? Constants.defaultOperationTimeoutInMs);\n this._deliveryDispositionMap.set(delivery.id, {\n resolve: resolve,\n reject: reject,\n timer: timer,\n });\n if (operation === DispositionType.complete) {\n delivery.accept();\n } else if (operation === DispositionType.abandon) {\n const params: any = {\n undeliverable_here: false,\n };\n if (options.propertiesToModify) params.message_annotations = options.propertiesToModify;\n delivery.modified(params);\n } else if (operation === DispositionType.defer) {\n const params: any = {\n undeliverable_here: true,\n };\n if (options.propertiesToModify) params.message_annotations = options.propertiesToModify;\n delivery.modified(params);\n } else if (operation === DispositionType.deadletter) {\n const error: AmqpError = {\n condition: Constants.deadLetterName,\n info: {\n ...options.propertiesToModify,\n DeadLetterReason: options.deadLetterReason,\n DeadLetterErrorDescription: options.deadLetterDescription,\n },\n };\n delivery.reject(error);\n }\n });\n }\n}\n"]}
@@ -0,0 +1,93 @@
1
+ import type { AwaitableSender, AwaitableSenderOptions } from "rhea-promise";
2
+ import type { RetryOptions, AmqpAnnotatedMessage } from "@azure/core-amqp";
3
+ import type { ServiceBusMessage } from "../serviceBusMessage.js";
4
+ import type { ConnectionContext } from "../connectionContext.js";
5
+ import { LinkEntity } from "./linkEntity.js";
6
+ import type { ServiceBusMessageBatch } from "../serviceBusMessageBatch.js";
7
+ import type { CreateMessageBatchOptions } from "../models.js";
8
+ import type { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js";
9
+ import type { AbortSignalLike } from "@azure/abort-controller";
10
+ /**
11
+ * @internal
12
+ * Describes the MessageSender that will send messages to ServiceBus.
13
+ */
14
+ export declare class MessageSender extends LinkEntity<AwaitableSender> {
15
+ private identifier;
16
+ /**
17
+ * The handler function to handle errors that happen on the
18
+ * underlying sender.
19
+ * @readonly
20
+ */
21
+ private readonly _onAmqpError;
22
+ /**
23
+ * The handler function to handle "sender_close" event
24
+ * that happens on the underlying sender.
25
+ * @readonly
26
+ */
27
+ private readonly _onAmqpClose;
28
+ /**
29
+ * The message handler that will be set as the handler on
30
+ * the underlying rhea sender's session for the "session_error" event.
31
+ */
32
+ private _onSessionError;
33
+ /**
34
+ * The message handler that will be set as the handler on
35
+ * the underlying rhea sender's session for the "session_close" event.
36
+ */
37
+ private _onSessionClose;
38
+ private _retryOptions;
39
+ constructor(identifier: string, connectionContext: ConnectionContext, entityPath: string, retryOptions: RetryOptions);
40
+ private _createSenderOptions;
41
+ /**
42
+ * Tries to send the message to ServiceBus if there is enough credit to send them
43
+ * and the circular buffer has available space to settle the message after sending them.
44
+ *
45
+ * We have implemented a synchronous send over here in the sense that we shall be waiting
46
+ * for the message to be accepted or rejected and accordingly resolve or reject the promise.
47
+ *
48
+ * @param encodedMessage - The encoded message to be sent to ServiceBus.
49
+ * @param sendBatch - Boolean indicating whether the encoded message represents a batch of messages or not
50
+ */
51
+ private _trySend;
52
+ protected createRheaLink(options: AwaitableSenderOptions): Promise<AwaitableSender>;
53
+ /**
54
+ * Initializes the sender session on the connection.
55
+ */
56
+ open(options?: AwaitableSenderOptions, abortSignal?: AbortSignalLike): Promise<void>;
57
+ /**
58
+ * Closes the rhea link.
59
+ * To be called when connection is disconnected, onAmqpClose and onSessionClose events.
60
+ */
61
+ onDetached(): Promise<void>;
62
+ /**
63
+ * Determines whether the AMQP sender link is open. If open then returns true else returns false.
64
+ */
65
+ isOpen(): boolean;
66
+ /**
67
+ * Sends the given message, with the given options on this link
68
+ *
69
+ * @param data - Message to send. Will be sent as UTF8-encoded JSON string.
70
+ */
71
+ send(data: ServiceBusMessage | AmqpAnnotatedMessage, options?: OperationOptionsBase): Promise<void>;
72
+ /**
73
+ * Returns maximum message size on the AMQP sender link.
74
+ *
75
+ * Options to configure the `createBatch` method on the `Sender`.
76
+ * - `maxSizeInBytes`: The upper limit for the size of batch.
77
+ *
78
+ * Example usage:
79
+ * ```ts snippet:ignore
80
+ * {
81
+ * retryOptions: { maxRetries: 5; timeoutInMs: 10 }
82
+ * }
83
+ * ```
84
+ */
85
+ getMaxMessageSize(options?: {
86
+ retryOptions?: RetryOptions;
87
+ } & Pick<OperationOptionsBase, "abortSignal">): Promise<number>;
88
+ createBatch(options?: CreateMessageBatchOptions): Promise<ServiceBusMessageBatch>;
89
+ sendBatch(batchMessage: ServiceBusMessageBatch, options?: OperationOptionsBase): Promise<void>;
90
+ static create(identifier: string, context: ConnectionContext, entityPath: string, retryOptions: RetryOptions): MessageSender;
91
+ protected removeLinkFromContext(): void;
92
+ }
93
+ //# sourceMappingURL=messageSender.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageSender.d.ts","sourceRoot":"","sources":["../../../src/core/messageSender.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,eAAe,EACf,sBAAsB,EAGvB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAGV,YAAY,EACZ,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAE3E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAK/D;;;GAGG;AACH,qBAAa,aAAc,SAAQ,UAAU,CAAC,eAAe,CAAC;IA0B1D,OAAO,CAAC,UAAU;IAzBpB;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAC3C;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAC3C;;;OAGG;IACH,OAAO,CAAC,eAAe,CAAc;IACrC;;;OAGG;IACH,OAAO,CAAC,eAAe,CAAc;IACrC,OAAO,CAAC,aAAa,CAAe;gBAG1B,UAAU,EAAE,MAAM,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,YAAY;IAkE5B,OAAO,CAAC,oBAAoB;IAiB5B;;;;;;;;;OASG;IACH,OAAO,CAAC,QAAQ;IA4GhB,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC;IAInF;;OAEG;IACU,IAAI,CACf,OAAO,CAAC,EAAE,sBAAsB,EAChC,WAAW,CAAC,EAAE,eAAe,GAC5B,OAAO,CAAC,IAAI,CAAC;IAqBhB;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAMjC;;OAEG;IACH,MAAM,IAAI,OAAO;IAYjB;;;;OAIG;IACG,IAAI,CACR,IAAI,EAAE,iBAAiB,GAAG,oBAAoB,EAC9C,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,IAAI,CAAC;IAoBhB;;;;;;;;;;;;OAYG;IACG,iBAAiB,CACrB,OAAO,GAAE;QACP,YAAY,CAAC,EAAE,YAAY,CAAC;KAC7B,GAAG,IAAI,CAAC,oBAAoB,EAAE,aAAa,CAAM,GACjD,OAAO,CAAC,MAAM,CAAC;IA4BZ,WAAW,CAAC,OAAO,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAkBjF,SAAS,CACb,YAAY,EAAE,sBAAsB,EACpC,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,IAAI,CAAC;IAsBhB,MAAM,CAAC,MAAM,CACX,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,iBAAiB,EAC1B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,YAAY,GACzB,aAAa;IAQhB,SAAS,CAAC,qBAAqB,IAAI,IAAI;CAGxC"}