@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,759 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.MessageSession = void 0;
6
+ const core_amqp_1 = require("@azure/core-amqp");
7
+ const rhea_promise_1 = require("rhea-promise");
8
+ const linkEntity_js_1 = require("../core/linkEntity.js");
9
+ const log_js_1 = require("../log.js");
10
+ const serviceBusMessage_js_1 = require("../serviceBusMessage.js");
11
+ const errors_js_1 = require("../util/errors.js");
12
+ const utils_js_1 = require("../util/utils.js");
13
+ const batchingReceiver_js_1 = require("../core/batchingReceiver.js");
14
+ const shared_js_1 = require("../core/shared.js");
15
+ const abort_controller_1 = require("@azure/abort-controller");
16
+ const receiverHelper_js_1 = require("../core/receiverHelper.js");
17
+ const serviceBusError_js_1 = require("../serviceBusError.js");
18
+ const receiverCommon_js_1 = require("../receivers/receiverCommon.js");
19
+ const core_util_1 = require("@azure/core-util");
20
+ /**
21
+ * @internal
22
+ * Describes the receiver for a Message Session.
23
+ */
24
+ class MessageSession extends linkEntity_js_1.LinkEntity {
25
+ identifier;
26
+ _providedSessionId;
27
+ /**
28
+ * Provides the duration until which the session is locked.
29
+ */
30
+ sessionLockedUntilUtc;
31
+ /**
32
+ * The sessionId for the message session. Empty string is valid sessionId.
33
+ */
34
+ sessionId;
35
+ /**
36
+ * The maximum number of concurrent sessions that the
37
+ * client should initiate.
38
+ * - **Default**: `1`.
39
+ */
40
+ maxConcurrentSessions;
41
+ /**
42
+ * The maximum number of messages that should be
43
+ * processed concurrently in a session while in streaming mode. Once this limit has been reached,
44
+ * more messages will not be received until the user's message handler has completed processing current message.
45
+ * - **Default**: `1` (message in a session at a time).
46
+ */
47
+ maxConcurrentCalls = 1;
48
+ /**
49
+ * The mode in which messages should be received.
50
+ * Default: ReceiveMode.peekLock
51
+ */
52
+ receiveMode;
53
+ /**
54
+ * Indicates whether `Message.complete()` should be called
55
+ * automatically after the message processing is complete while receiving messages with handlers.
56
+ * Default: false.
57
+ */
58
+ autoComplete;
59
+ /**
60
+ * The maximum duration within which the
61
+ * lock will be renewed automatically. This value should be greater than the longest message
62
+ * lock duration; for example, the `lockDuration` property on the received message.
63
+ *
64
+ * Default: `300 * 1000` (5 minutes);
65
+ */
66
+ maxAutoRenewDurationInMs;
67
+ /**
68
+ * Should lock renewal happen automatically.
69
+ */
70
+ autoRenewLock;
71
+ /**
72
+ * Denotes if we are currently receiving messages
73
+ */
74
+ get isReceivingMessages() {
75
+ return this._batchingReceiverLite.isReceivingMessages || this._isReceivingMessagesForSubscriber;
76
+ }
77
+ _batchingReceiverLite;
78
+ _isReceivingMessagesForSubscriber;
79
+ /**
80
+ * Maintains a map of deliveries that
81
+ * are being actively disposed. It acts as a store for correlating the responses received for
82
+ * active dispositions.
83
+ */
84
+ _deliveryDispositionMap = new Map();
85
+ /**
86
+ * The message handler provided by the user that will
87
+ * be wrapped inside _onAmqpMessage.
88
+ */
89
+ _onMessage;
90
+ /**
91
+ * The error handler provided by the user that will be wrapped
92
+ * inside _onAmqpError.
93
+ */
94
+ _onError;
95
+ /**
96
+ * If the user provided error handler is present then it will
97
+ * notify the user's error handler about the error.
98
+ */
99
+ _notifyError;
100
+ /**
101
+ * The message handler that will be set as the handler on the
102
+ * underlying rhea receiver for the "receiver_close" event.
103
+ */
104
+ _onAmqpClose;
105
+ /**
106
+ * The message handler that will be set as the handler on
107
+ * the underlying rhea receiver's session for the "session_error" event.
108
+ */
109
+ _onSessionError;
110
+ /**
111
+ * The message handler that will be set as the handler on
112
+ * the underlying rhea receiver's session for the "session_close" event.
113
+ */
114
+ _onSessionClose;
115
+ /**
116
+ * The message handler that will be set as the handler on the
117
+ * underlying rhea receiver for the "receiver_error" event.
118
+ */
119
+ _onAmqpError;
120
+ /**
121
+ * The message handler that will be set as the handler on the
122
+ * underlying rhea receiver for the "settled" event.
123
+ */
124
+ _onSettled;
125
+ /**
126
+ * The session lock renewal timer that keeps
127
+ * track of when the MessageSession is due for session lock renewal.
128
+ */
129
+ _sessionLockRenewalTimer;
130
+ _totalAutoLockRenewDuration;
131
+ /**
132
+ * Whether to prevent the client from running JSON.parse() on the message body when receiving the message.
133
+ */
134
+ skipParsingBodyAsJson;
135
+ /**
136
+ * Whether to skip converting Date type on properties of message annotations
137
+ * or application properties into numbers when receiving the message. By
138
+ * default, properties of Date type is converted into UNIX epoch number for
139
+ * compatibility.
140
+ */
141
+ skipConvertingDate;
142
+ get receiverHelper() {
143
+ return this._receiverHelper;
144
+ }
145
+ _receiverHelper;
146
+ /**
147
+ * Ensures that the session lock is renewed before it expires. The lock will not be renewed for
148
+ * more than the configured totalAutoLockRenewDuration.
149
+ */
150
+ _ensureSessionLockRenewal() {
151
+ if (this.autoRenewLock &&
152
+ new Date(this._totalAutoLockRenewDuration) > this.sessionLockedUntilUtc &&
153
+ Date.now() < this._totalAutoLockRenewDuration &&
154
+ this.isOpen()) {
155
+ const nextRenewalTimeout = (0, utils_js_1.calculateRenewAfterDuration)(this.sessionLockedUntilUtc);
156
+ this._sessionLockRenewalTimer = setTimeout(async () => {
157
+ try {
158
+ log_js_1.receiverLogger.verbose("%s Attempting to renew the session lock for MessageSession '%s' " + "with name '%s'.", this.logPrefix, this.sessionId, this.name);
159
+ this.sessionLockedUntilUtc = await this._context
160
+ .getManagementClient(this.entityPath)
161
+ .renewSessionLock(this.sessionId, {
162
+ associatedLinkName: this.name,
163
+ timeoutInMs: 10000,
164
+ });
165
+ log_js_1.receiverLogger.verbose("%s Successfully renewed the session lock for MessageSession '%s' " + "with name '%s'.", this.logPrefix, this.sessionId, this.name);
166
+ log_js_1.receiverLogger.verbose("%s Calling _ensureSessionLockRenewal() again for MessageSession '%s'.", this.logPrefix, this.sessionId);
167
+ this._ensureSessionLockRenewal();
168
+ }
169
+ catch (err) {
170
+ log_js_1.receiverLogger.logError(err, "%s An error occurred while renewing the session lock for MessageSession '%s'", this.logPrefix, this.sessionId);
171
+ }
172
+ }, nextRenewalTimeout);
173
+ log_js_1.receiverLogger.verbose("%s MessageSession '%s' has next session lock renewal in %d milliseconds @(%s).", this.logPrefix, this.sessionId, nextRenewalTimeout, new Date(Date.now() + nextRenewalTimeout).toString());
174
+ }
175
+ }
176
+ async createRheaLink(options, _abortSignal) {
177
+ this._lastSBError = undefined;
178
+ let errorMessage = "";
179
+ const link = await this._context.connection.createReceiver(options);
180
+ this._intermediateLink = link;
181
+ const receivedSessionId = link.source?.filter?.[core_amqp_1.Constants.sessionFilterName];
182
+ if (this._providedSessionId === undefined && receivedSessionId === undefined) {
183
+ // When we ask for any sessions (passing option of session-filter: undefined),
184
+ // but don't receive one back, check whether service has sent any error.
185
+ if (options.source &&
186
+ typeof options.source !== "string" &&
187
+ options.source.filter &&
188
+ core_amqp_1.Constants.sessionFilterName in options.source.filter &&
189
+ options.source.filter[core_amqp_1.Constants.sessionFilterName] === undefined) {
190
+ await (0, core_util_1.delay)(1); // yield to eventloop
191
+ if (this._lastSBError) {
192
+ log_js_1.receiverLogger.verbose("%s cleaning up resources held by link", this.logPrefix);
193
+ await link.close({ closeSession: true });
194
+ link.remove();
195
+ throw this._lastSBError;
196
+ }
197
+ }
198
+ // Ideally this code path should never be reached as `MessageSession.createReceiver()` should fail instead
199
+ // TODO: https://github.com/Azure/azure-sdk-for-js/issues/9775 to figure out why this code path indeed gets hit.
200
+ errorMessage = `Failed to create a receiver. No unlocked sessions available.`;
201
+ }
202
+ else if (this._providedSessionId !== undefined &&
203
+ receivedSessionId !== this._providedSessionId) {
204
+ // This code path is reached if the session is already locked by another receiver.
205
+ // TODO: Check why the service would not throw an error or just timeout instead of giving a misleading successful receiver
206
+ errorMessage = `Failed to create a receiver for the requested session '${this._providedSessionId}'. It may be locked by another receiver.`;
207
+ }
208
+ if (errorMessage) {
209
+ const error = (0, serviceBusError_js_1.translateServiceBusError)({
210
+ description: errorMessage,
211
+ condition: core_amqp_1.ErrorNameConditionMapper.SessionCannotBeLockedError,
212
+ });
213
+ log_js_1.receiverLogger.logError(error, this.logPrefix);
214
+ log_js_1.receiverLogger.verbose("%s cleaning up resources held by intermediate link (SessionCannotBeLockedError)", this.logPrefix);
215
+ await link.close({ closeSession: true });
216
+ link.remove();
217
+ throw error;
218
+ }
219
+ return link;
220
+ }
221
+ /**
222
+ * Creates a new AMQP receiver under a new AMQP session.
223
+ */
224
+ async _init(opts = {}) {
225
+ try {
226
+ const sessionOptions = this._createMessageSessionOptions(this.identifier, opts.timeoutInMs);
227
+ await this.initLink(sessionOptions, opts.abortSignal);
228
+ if (!this.link) {
229
+ throw new Error("INTERNAL ERROR: failed to create receiver but without an error.");
230
+ }
231
+ const receivedSessionId = this.link.source?.filter?.[core_amqp_1.Constants.sessionFilterName];
232
+ if (this._providedSessionId === undefined)
233
+ this.sessionId = receivedSessionId;
234
+ this.sessionLockedUntilUtc = (0, utils_js_1.convertTicksToDate)(this.link.properties["com.microsoft:locked-until-utc"]);
235
+ log_js_1.receiverLogger.verbose("%s Session with id '%s' is locked until: '%s'.", this.logPrefix, this.sessionId, this.sessionLockedUntilUtc.toISOString());
236
+ log_js_1.receiverLogger.verbose("%s Receiver created with receiver options: %O", this.logPrefix, sessionOptions);
237
+ if (!this._context.messageSessions[this.name]) {
238
+ this._context.messageSessions[this.name] = this;
239
+ }
240
+ this._totalAutoLockRenewDuration = Date.now() + this.maxAutoRenewDurationInMs;
241
+ this._ensureSessionLockRenewal();
242
+ }
243
+ catch (err) {
244
+ const errObj = (0, serviceBusError_js_1.translateServiceBusError)(err);
245
+ log_js_1.receiverLogger.logError(errObj, "%s An error occured while creating the receiver", this.logPrefix);
246
+ // Fix the unhelpful error messages for the OperationTimeoutError that comes from `rhea-promise`.
247
+ if (errObj.code === "OperationTimeoutError") {
248
+ if (this._providedSessionId !== undefined) {
249
+ errObj.message = `Failed to create a receiver for the requested session '${this._providedSessionId}' within allocated time and retry attempts.`;
250
+ }
251
+ else {
252
+ errObj.message = "Failed to create a receiver within allocated time and retry attempts.";
253
+ }
254
+ }
255
+ if (this._intermediateLink) {
256
+ log_js_1.receiverLogger.verbose("%s cleaning up resources held by intermediate link", this.logPrefix);
257
+ await this._intermediateLink.close({ closeSession: true });
258
+ this._intermediateLink.remove();
259
+ }
260
+ throw errObj;
261
+ }
262
+ }
263
+ /**
264
+ * Creates the options that need to be specified while creating an AMQP receiver link.
265
+ */
266
+ _createMessageSessionOptions(clientId, timeoutInMs) {
267
+ const rcvrOptions = (0, shared_js_1.createReceiverOptions)(this.name, this.receiveMode, {
268
+ address: this.address,
269
+ filter: { [core_amqp_1.Constants.sessionFilterName]: this.sessionId },
270
+ }, clientId, {
271
+ onClose: (context) => this._onAmqpClose(context).catch(() => {
272
+ /* */
273
+ }),
274
+ onSessionClose: (context) => this._onSessionClose(context).catch(() => {
275
+ /* */
276
+ }),
277
+ onError: this._onAmqpError,
278
+ onSessionError: this._onSessionError,
279
+ onSettled: this._onSettled,
280
+ }, timeoutInMs);
281
+ return rcvrOptions;
282
+ }
283
+ _retryOptions;
284
+ _lastSBError;
285
+ _intermediateLink;
286
+ /**
287
+ * Constructs a MessageSession instance which lets you receive messages as batches
288
+ * or via callbacks using subscribe.
289
+ *
290
+ * @param _providedSessionId - The sessionId provided by the user. This can be the
291
+ * name of a session ID to open (empty string is also valid) or it can be undefined,
292
+ * to indicate we want the next unlocked non-empty session.
293
+ */
294
+ constructor(identifier, connectionContext, entityPath, _providedSessionId, options) {
295
+ super(entityPath, entityPath, connectionContext, "session", log_js_1.receiverLogger, {
296
+ address: entityPath,
297
+ audience: `${connectionContext.config.endpoint}${entityPath}`,
298
+ });
299
+ this.identifier = identifier;
300
+ this._providedSessionId = _providedSessionId;
301
+ this._receiverHelper = new receiverHelper_js_1.ReceiverHelper(() => ({
302
+ receiver: this.link,
303
+ logPrefix: this.logPrefix,
304
+ }));
305
+ this._retryOptions = options.retryOptions;
306
+ this.autoComplete = false;
307
+ if ((0, core_util_1.isDefined)(this._providedSessionId))
308
+ this.sessionId = this._providedSessionId;
309
+ this.receiveMode = options.receiveMode || "peekLock";
310
+ this.skipParsingBodyAsJson = options.skipParsingBodyAsJson;
311
+ this.skipConvertingDate = options.skipConvertingDate;
312
+ this.maxAutoRenewDurationInMs =
313
+ options.maxAutoLockRenewalDurationInMs != null
314
+ ? options.maxAutoLockRenewalDurationInMs
315
+ : 300 * 1000;
316
+ this._totalAutoLockRenewDuration = Date.now() + this.maxAutoRenewDurationInMs;
317
+ this.autoRenewLock = this.maxAutoRenewDurationInMs > 0 && this.receiveMode === "peekLock";
318
+ this._isReceivingMessagesForSubscriber = false;
319
+ this._batchingReceiverLite = new batchingReceiver_js_1.BatchingReceiverLite(connectionContext, entityPath, async (_abortSignal) => {
320
+ return this.link;
321
+ }, this.receiveMode, this.skipParsingBodyAsJson, this.skipConvertingDate);
322
+ // setting all the handlers
323
+ this._onSettled = (context) => {
324
+ const delivery = context.delivery;
325
+ (0, shared_js_1.onMessageSettled)(this.logPrefix, delivery, this._deliveryDispositionMap);
326
+ };
327
+ this._notifyError = async (args) => {
328
+ if (this._onError) {
329
+ this._onError(args);
330
+ log_js_1.receiverLogger.verbose("%s Notified the user's error handler about the error received by the Receiver", this.logPrefix);
331
+ }
332
+ };
333
+ this._onAmqpError = (context) => {
334
+ const receiverError = context.receiver && context.receiver.error;
335
+ if (receiverError) {
336
+ const sbError = (0, serviceBusError_js_1.translateServiceBusError)(receiverError);
337
+ if (sbError.code === "SessionLockLostError") {
338
+ sbError.message = `The session lock has expired on the session with id ${this.sessionId}.`;
339
+ }
340
+ this._lastSBError = sbError;
341
+ log_js_1.receiverLogger.logError(sbError, "%s An error occurred for Receiver", this.logPrefix);
342
+ this._notifyError({
343
+ error: sbError,
344
+ errorSource: "receive",
345
+ entityPath: this.entityPath,
346
+ fullyQualifiedNamespace: this._context.config.host,
347
+ identifier: this.identifier,
348
+ });
349
+ }
350
+ };
351
+ this._onSessionError = (context) => {
352
+ const connectionId = this._context.connectionId;
353
+ const sessionError = context.session && context.session.error;
354
+ if (sessionError) {
355
+ const sbError = (0, serviceBusError_js_1.translateServiceBusError)(sessionError);
356
+ log_js_1.receiverLogger.logError(sbError, "[%s] An error occurred on the session for Receiver '%s': %O.", connectionId, this.name, sbError);
357
+ this._notifyError({
358
+ error: sbError,
359
+ errorSource: "receive",
360
+ entityPath: this.entityPath,
361
+ fullyQualifiedNamespace: this._context.config.host,
362
+ identifier: this.identifier,
363
+ });
364
+ }
365
+ };
366
+ this._onAmqpClose = async (context) => {
367
+ const connectionId = this._context.connectionId;
368
+ const receiverError = context.receiver && context.receiver.error;
369
+ const receiver = this.link || context.receiver;
370
+ if (receiverError) {
371
+ const sbError = (0, serviceBusError_js_1.translateServiceBusError)(receiverError);
372
+ log_js_1.receiverLogger.logError(sbError, "[%s] 'receiver_close' event occurred for receiver '%s' for sessionId '%s'. " +
373
+ "The associated error is: %O", connectionId, this.name, this.sessionId, sbError);
374
+ // no need to notify the user's error handler since rhea guarantees that receiver_error
375
+ // will always be emitted before receiver_close.
376
+ }
377
+ if (receiver && !receiver.isItselfClosed()) {
378
+ log_js_1.receiverLogger.verbose("%s 'receiver_close' event occurred on the receiver for sessionId '%s' " +
379
+ "and the sdk did not initiate this. Hence, let's gracefully close the receiver.", this.logPrefix, this.sessionId);
380
+ try {
381
+ await this.close();
382
+ }
383
+ catch (err) {
384
+ log_js_1.receiverLogger.logError(err, "%s An error occurred while closing the receiver for sessionId '%s'.", this.logPrefix, this.sessionId);
385
+ }
386
+ }
387
+ else {
388
+ log_js_1.receiverLogger.verbose("%s 'receiver_close' event occurred on the receiver for sessionId '%s' " +
389
+ "because the sdk initiated it. Hence no need to gracefully close the receiver", this.logPrefix, this.sessionId);
390
+ }
391
+ };
392
+ this._onSessionClose = async (context) => {
393
+ const receiver = this.link || context.receiver;
394
+ const sessionError = context.session && context.session.error;
395
+ if (sessionError) {
396
+ const sbError = (0, serviceBusError_js_1.translateServiceBusError)(sessionError);
397
+ log_js_1.receiverLogger.logError(sbError, "%s 'session_close' event occurred for receiver for sessionId '%s'. " +
398
+ "The associated error is", this.logPrefix, this.sessionId);
399
+ // no need to notify the user's error handler since rhea guarantees that session_error
400
+ // will always be emitted before session_close.
401
+ }
402
+ if (receiver && !receiver.isSessionItselfClosed()) {
403
+ log_js_1.receiverLogger.verbose("%s 'session_close' event occurred on the receiver for sessionId '%s' " +
404
+ "and the sdk did not initiate this. Hence, let's gracefully close the receiver.", this.logPrefix, this.sessionId);
405
+ try {
406
+ await this.close();
407
+ }
408
+ catch (err) {
409
+ log_js_1.receiverLogger.logError(err, "%s An error occurred while closing the receiver for sessionId '%s'", this.logPrefix, this.sessionId);
410
+ }
411
+ }
412
+ else {
413
+ log_js_1.receiverLogger.verbose("%s 'session_close' event occurred on the receiver for sessionId'%s' " +
414
+ "because the sdk initiated it. Hence no need to gracefully close the receiver", this.logPrefix, this.sessionId);
415
+ }
416
+ };
417
+ }
418
+ /**
419
+ * Closes the underlying AMQP receiver link.
420
+ */
421
+ async close(error) {
422
+ try {
423
+ this._isReceivingMessagesForSubscriber = false;
424
+ if (this._sessionLockRenewalTimer)
425
+ clearTimeout(this._sessionLockRenewalTimer);
426
+ log_js_1.receiverLogger.verbose("%s Cleared the timers for 'no new message received' task and " +
427
+ "'session lock renewal' task.", this.logPrefix);
428
+ await super.close();
429
+ this._batchingReceiverLite.terminate(error);
430
+ }
431
+ catch (err) {
432
+ log_js_1.receiverLogger.logError(err, "%s An error occurred while closing the message session with id '%s'", this.logPrefix, this.sessionId);
433
+ }
434
+ }
435
+ /**
436
+ * Determines whether the AMQP receiver link is open. If open then returns true else returns false.
437
+ */
438
+ isOpen() {
439
+ const result = this.link && this.link.isOpen();
440
+ log_js_1.receiverLogger.verbose("%s Receiver for sessionId '%s' is open? -> %s", this.logPrefix, this.sessionId, result);
441
+ return result;
442
+ }
443
+ /**
444
+ * Registers handlers to deal with the incoming stream of messages over an AMQP receiver link
445
+ * from a Queue/Subscription.
446
+ * To stop receiving messages, call `close()` on the SessionReceiver or set the property
447
+ * `newMessageWaitTimeoutInMs` in the options to provide a timeout.
448
+ *
449
+ * @param onMessage - Handler for processing each incoming message.
450
+ * @param onError - Handler for any error that occurs while receiving or processing messages.
451
+ * @param options - Options to control whether messages should be automatically completed. You can
452
+ * also provide a timeout in milliseconds to denote the amount of time to wait for a new message
453
+ * before closing the receiver.
454
+ */
455
+ subscribe(onMessage, onError, options) {
456
+ this.receiverHelper.resume();
457
+ this._subscribeImpl(onMessage, onError, options);
458
+ }
459
+ _subscribeImpl(onMessage, onError, options) {
460
+ if (!options)
461
+ options = {};
462
+ if (options.abortSignal?.aborted) {
463
+ throw new abort_controller_1.AbortError(core_amqp_1.StandardAbortMessage);
464
+ }
465
+ this._isReceivingMessagesForSubscriber = true;
466
+ if (typeof options.maxConcurrentCalls === "number" && options.maxConcurrentCalls > 0) {
467
+ this.maxConcurrentCalls = options.maxConcurrentCalls;
468
+ }
469
+ // If explicitly set to false then autoComplete is false else true (default).
470
+ this.autoComplete =
471
+ options.autoCompleteMessages === false ? options.autoCompleteMessages : true;
472
+ this._onMessage = onMessage;
473
+ this._onError = onError;
474
+ if (this.link && this.link.isOpen()) {
475
+ const onSessionMessage = async (context) => {
476
+ // If the receiver got closed in PeekLock mode, avoid processing the message as we
477
+ // cannot settle the message.
478
+ if (this.receiveMode === "peekLock" && (!this.link || !this.link.isOpen())) {
479
+ log_js_1.receiverLogger.verbose("%s Not calling the user's message handler for the current message " +
480
+ "as the receiver is closed", this.logPrefix);
481
+ return;
482
+ }
483
+ const bMessage = new serviceBusMessage_js_1.ServiceBusMessageImpl(context.message, context.delivery, true, this.receiveMode, this.skipParsingBodyAsJson, this.skipConvertingDate);
484
+ try {
485
+ await this._onMessage(bMessage);
486
+ if (this.autoComplete &&
487
+ this.receiveMode === "peekLock" &&
488
+ !bMessage.delivery.remote_settled) {
489
+ try {
490
+ log_js_1.receiverLogger.verbose("%s Auto completing the message with id '%s' on the receiver.", this.logPrefix, bMessage.messageId);
491
+ await (0, receiverCommon_js_1.completeMessage)(bMessage, this._context, this.entityPath, this._retryOptions);
492
+ }
493
+ catch (completeError) {
494
+ const translatedError = (0, serviceBusError_js_1.translateServiceBusError)(completeError);
495
+ log_js_1.receiverLogger.logError(translatedError, "%s An error occurred while completing the message with id '%s' on the " +
496
+ "receiver", this.logPrefix, bMessage.messageId);
497
+ await this._notifyError({
498
+ error: translatedError,
499
+ errorSource: "complete",
500
+ entityPath: this.entityPath,
501
+ fullyQualifiedNamespace: this._context.config.host,
502
+ identifier: this.identifier,
503
+ });
504
+ }
505
+ }
506
+ }
507
+ catch (err) {
508
+ log_js_1.receiverLogger.logError(err, "%s An error occurred while running user's message handler for the message " +
509
+ "with id '%s' on the receiver", this.logPrefix, bMessage.messageId);
510
+ await this._onError({
511
+ error: err,
512
+ errorSource: "processMessageCallback",
513
+ entityPath: this.entityPath,
514
+ fullyQualifiedNamespace: this._context.config.host,
515
+ identifier: this.identifier,
516
+ });
517
+ const error = (0, serviceBusError_js_1.translateServiceBusError)(err);
518
+ // Nothing much to do if user's message handler throws. Let us try abandoning the message.
519
+ if (!bMessage.delivery.remote_settled &&
520
+ this.receiveMode === "peekLock" &&
521
+ this.isOpen() // only try to abandon the messages if the connection is still open
522
+ ) {
523
+ try {
524
+ log_js_1.receiverLogger.logError(error, "%s Abandoning the message with id '%s' on the receiver since an error occured", this.logPrefix, bMessage.messageId);
525
+ await (0, receiverCommon_js_1.abandonMessage)(bMessage, this._context, this.entityPath, undefined, this._retryOptions);
526
+ }
527
+ catch (abandonError) {
528
+ const translatedError = (0, serviceBusError_js_1.translateServiceBusError)(abandonError);
529
+ log_js_1.receiverLogger.logError(translatedError, "%s An error occurred while abandoning the message with id '%s' on the " +
530
+ "receiver", this.logPrefix, bMessage.messageId, translatedError);
531
+ await this._notifyError({
532
+ error: translatedError,
533
+ errorSource: "abandon",
534
+ entityPath: this.entityPath,
535
+ fullyQualifiedNamespace: this._context.config.host,
536
+ identifier: this.identifier,
537
+ });
538
+ }
539
+ }
540
+ return;
541
+ }
542
+ finally {
543
+ try {
544
+ this.receiverHelper.addCredit(1);
545
+ }
546
+ catch (err) {
547
+ // this isn't something we expect in normal operation - we'd only get here
548
+ // because of a bug in our code.
549
+ this.processCreditError(err);
550
+ }
551
+ }
552
+ };
553
+ // setting the "message" event listener.
554
+ this.link.on(rhea_promise_1.ReceiverEvents.message, onSessionMessage);
555
+ try {
556
+ this.receiverHelper.addCredit(this.maxConcurrentCalls);
557
+ }
558
+ catch (err) {
559
+ // this isn't something we expect in normal operation - we'd only get here
560
+ // because of a bug in our code.
561
+ this.processCreditError(err);
562
+ }
563
+ }
564
+ else {
565
+ this._isReceivingMessagesForSubscriber = false;
566
+ const msg = `MessageSession with sessionId '${this.sessionId}' and name '${this.name}' ` +
567
+ `has either not been created or is not open.`;
568
+ log_js_1.receiverLogger.verbose("[%s] %s", this._context.connectionId, msg);
569
+ this._notifyError({
570
+ error: new Error(msg),
571
+ // This is _probably_ the right error code since we require that
572
+ // the message session is created before we even give back the receiver. So it not
573
+ // being open at this point is either:
574
+ //
575
+ // 1. we didn't acquire the lock
576
+ // 2. the connection was broken (we don't reconnect)
577
+ //
578
+ // If any of these becomes untrue you'll probably want to re-evaluate this classification.
579
+ errorSource: "receive",
580
+ entityPath: this.entityPath,
581
+ fullyQualifiedNamespace: this._context.config.host,
582
+ identifier: this.identifier,
583
+ });
584
+ }
585
+ }
586
+ async processCreditError(err) {
587
+ if (err.name === "AbortError") {
588
+ // if we fail to add credits because the user has asked us to stop
589
+ // then this isn't an error - it's normal.
590
+ return;
591
+ }
592
+ log_js_1.receiverLogger.logError(err, "Cannot request messages on the receiver");
593
+ const error = new serviceBusError_js_1.ServiceBusError("Cannot request messages on the receiver", "SessionLockLost");
594
+ error.retryable = false;
595
+ // from the user's perspective this is a fatal link error and they should retry
596
+ // opening the link.
597
+ await this._onError({
598
+ error,
599
+ errorSource: "processMessageCallback",
600
+ entityPath: this.entityPath,
601
+ fullyQualifiedNamespace: this._context.config.host,
602
+ identifier: this.identifier,
603
+ });
604
+ }
605
+ /**
606
+ * Returns a batch of messages based on given count and timeout over an AMQP receiver link
607
+ * from a Queue/Subscription.
608
+ *
609
+ * @param maxMessageCount - The maximum number of messages to receive from Queue/Subscription.
610
+ * @param maxWaitTimeInMs - The total wait time in milliseconds until which the receiver will attempt to receive specified number of messages.
611
+ * If this time elapses before the `maxMessageCount` is reached, then messages collected till then will be returned to the user.
612
+ * @returns A promise that resolves with an array of Message objects.
613
+ */
614
+ async receiveMessages(maxMessageCount, maxWaitTimeInMs, maxTimeAfterFirstMessageInMs, options) {
615
+ try {
616
+ return await this._batchingReceiverLite.receiveMessages({
617
+ maxMessageCount,
618
+ maxWaitTimeInMs,
619
+ maxTimeAfterFirstMessageInMs,
620
+ ...options,
621
+ });
622
+ }
623
+ catch (error) {
624
+ log_js_1.receiverLogger.logError(error, `${this.logPrefix} Rejecting receiveMessages() with error`);
625
+ throw error;
626
+ }
627
+ }
628
+ /**
629
+ * To be called when connection is disconnected to gracefully close ongoing receive request.
630
+ * @param connectionError - The connection error if any.
631
+ */
632
+ async onDetached(connectionError) {
633
+ log_js_1.receiverLogger.error((0, serviceBusError_js_1.translateServiceBusError)(connectionError), `${this.logPrefix} onDetached: closing link (session receiver will not reconnect)`);
634
+ try {
635
+ // Notifying so that the streaming receiver knows about the error
636
+ await this._notifyError({
637
+ entityPath: this.entityPath,
638
+ fullyQualifiedNamespace: this._context.config.host,
639
+ error: (0, serviceBusError_js_1.translateServiceBusError)(connectionError),
640
+ errorSource: "receive",
641
+ identifier: this.identifier,
642
+ });
643
+ }
644
+ catch (error) {
645
+ log_js_1.receiverLogger.error((0, serviceBusError_js_1.translateServiceBusError)(error), `${this.logPrefix} onDetached: unexpected error seen when tried calling "_notifyError" with ${(0, serviceBusError_js_1.translateServiceBusError)(connectionError)}`);
646
+ }
647
+ await this.close(connectionError);
648
+ }
649
+ /**
650
+ * Settles the message with the specified disposition.
651
+ * @param message - The ServiceBus Message that needs to be settled.
652
+ * @param operation - The disposition type.
653
+ * @param options - Optional parameters that can be provided while disposing the message.
654
+ */
655
+ async settleMessage(message, operation, options) {
656
+ return new Promise((resolve, reject) => {
657
+ if (operation.match(/^(complete|abandon|defer|deadletter)$/) == null) {
658
+ return reject(new Error(`operation: '${operation}' is not a valid operation.`));
659
+ }
660
+ const delivery = message.delivery;
661
+ const timer = setTimeout(() => {
662
+ this._deliveryDispositionMap.delete(delivery.id);
663
+ log_js_1.receiverLogger.verbose("[%s] Disposition for delivery id: %d, did not complete in %d milliseconds. " +
664
+ "Hence rejecting the promise with timeout error", this._context.connectionId, delivery.id, core_amqp_1.Constants.defaultOperationTimeoutInMs);
665
+ const e = {
666
+ condition: core_amqp_1.ErrorNameConditionMapper.ServiceUnavailableError,
667
+ description: "Operation to settle the message has timed out. The disposition of the " +
668
+ "message may or may not be successful",
669
+ };
670
+ return reject((0, serviceBusError_js_1.translateServiceBusError)(e));
671
+ }, core_amqp_1.Constants.defaultOperationTimeoutInMs);
672
+ this._deliveryDispositionMap.set(delivery.id, {
673
+ resolve: resolve,
674
+ reject: reject,
675
+ timer: timer,
676
+ });
677
+ if (operation === serviceBusMessage_js_1.DispositionType.complete) {
678
+ delivery.accept();
679
+ }
680
+ else if (operation === serviceBusMessage_js_1.DispositionType.abandon) {
681
+ const params = {
682
+ undeliverable_here: false,
683
+ };
684
+ if (options.propertiesToModify)
685
+ params.message_annotations = options.propertiesToModify;
686
+ delivery.modified(params);
687
+ }
688
+ else if (operation === serviceBusMessage_js_1.DispositionType.defer) {
689
+ const params = {
690
+ undeliverable_here: true,
691
+ };
692
+ if (options.propertiesToModify)
693
+ params.message_annotations = options.propertiesToModify;
694
+ delivery.modified(params);
695
+ }
696
+ else if (operation === serviceBusMessage_js_1.DispositionType.deadletter) {
697
+ const error = {
698
+ condition: core_amqp_1.Constants.deadLetterName,
699
+ info: {
700
+ ...options.propertiesToModify,
701
+ DeadLetterReason: options.deadLetterReason,
702
+ DeadLetterErrorDescription: options.deadLetterDescription,
703
+ },
704
+ };
705
+ delivery.reject(error);
706
+ }
707
+ });
708
+ }
709
+ /**
710
+ * Creates a new instance of the MessageSession based on the provided parameters.
711
+ * @param identifier - name to identify the message session
712
+ * @param context - The client entity context
713
+ * @param options - Options that can be provided while creating the MessageSession.
714
+ */
715
+ static async create(identifier, context, entityPath, sessionId, options) {
716
+ (0, errors_js_1.throwErrorIfConnectionClosed)(context);
717
+ const messageSession = new MessageSession(identifier, context, entityPath, sessionId, options);
718
+ let timeoutInMs;
719
+ // Only passing client timeout in link properties for accepting next available
720
+ // session as this is the only long-polling scenario.
721
+ if (sessionId === undefined) {
722
+ timeoutInMs = options.retryOptions?.timeoutInMs ?? core_amqp_1.Constants.defaultOperationTimeoutInMs;
723
+ // The number of milliseconds to use as the basis for calculating a random jitter amount
724
+ // opening receiver links. This is intended to ensure that multiple
725
+ // session operations don't timeout at the same exact moment.
726
+ const openReceiveLinkBaseJitterInMs = 100;
727
+ // The amount of time to subtract from the client timeout when setting the server timeout when attempting to
728
+ // accept the next available session. This will decrease the likelihood that the client times out before receiving a
729
+ // response from the server.
730
+ const openReceiveLinkBufferInMs = 20;
731
+ // The amount minimum threshold for the server timeout for which we will subtract the "openReceiveLinkBufferInMs".
732
+ // If the server timeout is less than this, we will not subtract the additional buffer.
733
+ const openReceiveLinkBufferThresholdInMs = 1000;
734
+ // Subtract a random amount up to 100ms from the operation timeout as the jitter when attempting to open next available session link.
735
+ // This prevents excessive resource usage when using high amounts of concurrency and accepting the next available session.
736
+ // Take the min of 1% of the total timeout and the base jitter amount so that we don't end up subtracting more than 1% of the total timeout.
737
+ const jitterBaseInMs = Math.min(timeoutInMs * 0.01, openReceiveLinkBaseJitterInMs);
738
+ // We set the operation timeout on the properties not only to include the jitter, but also because the server will otherwise
739
+ // restrict the maximum timeout to 1 minute and 5 seconds, regardless of the client timeout. We only do this for accepting next available
740
+ // session as this is the only long-polling scenario.
741
+ timeoutInMs = Math.floor(timeoutInMs - jitterBaseInMs * Math.random());
742
+ // Subtract an additional constant buffer to reduce the likelihood that the client times out before the service which leads to unnecessary
743
+ // network traffic. If the timeout is too short, we won't do this.
744
+ if (timeoutInMs >= openReceiveLinkBufferThresholdInMs) {
745
+ timeoutInMs -= openReceiveLinkBufferInMs;
746
+ }
747
+ }
748
+ await messageSession._init({
749
+ abortSignal: options?.abortSignal,
750
+ timeoutInMs,
751
+ });
752
+ return messageSession;
753
+ }
754
+ removeLinkFromContext() {
755
+ delete this._context.messageSessions[this.name];
756
+ }
757
+ }
758
+ exports.MessageSession = MessageSession;
759
+ //# sourceMappingURL=messageSession.js.map