@effect/cluster 0.28.4 → 0.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (626) hide show
  1. package/ClusterError/package.json +6 -0
  2. package/ClusterMetrics/package.json +6 -0
  3. package/ClusterSchema/package.json +6 -0
  4. package/DeliverAt/package.json +6 -0
  5. package/Entity/package.json +6 -0
  6. package/EntityAddress/package.json +6 -0
  7. package/EntityId/package.json +6 -0
  8. package/EntityType/package.json +6 -0
  9. package/Envelope/package.json +6 -0
  10. package/HttpCommon/package.json +6 -0
  11. package/HttpRunner/package.json +6 -0
  12. package/HttpShardManager/package.json +6 -0
  13. package/MachineId/package.json +6 -0
  14. package/MessageStorage/package.json +6 -0
  15. package/README.md +2 -2
  16. package/Reply/package.json +6 -0
  17. package/Runner/package.json +6 -0
  18. package/RunnerAddress/package.json +6 -0
  19. package/RunnerHealth/package.json +6 -0
  20. package/RunnerServer/package.json +6 -0
  21. package/Runners/package.json +6 -0
  22. package/ShardStorage/package.json +6 -0
  23. package/Singleton/package.json +6 -0
  24. package/SingletonAddress/package.json +6 -0
  25. package/Snowflake/package.json +6 -0
  26. package/SocketRunner/package.json +6 -0
  27. package/SocketShardManager/package.json +6 -0
  28. package/SqlMessageStorage/package.json +6 -0
  29. package/SqlShardStorage/package.json +6 -0
  30. package/SynchronizedClock/package.json +6 -0
  31. package/dist/cjs/ClusterError.js +180 -0
  32. package/dist/cjs/ClusterError.js.map +1 -0
  33. package/dist/cjs/ClusterMetrics.js +63 -0
  34. package/dist/cjs/ClusterMetrics.js.map +1 -0
  35. package/dist/cjs/{Pods.js → ClusterSchema.js} +10 -22
  36. package/dist/cjs/ClusterSchema.js.map +1 -0
  37. package/dist/cjs/DeliverAt.js +30 -0
  38. package/dist/cjs/DeliverAt.js.map +1 -0
  39. package/dist/cjs/Entity.js +187 -0
  40. package/dist/cjs/Entity.js.map +1 -0
  41. package/dist/cjs/EntityAddress.js +54 -0
  42. package/dist/cjs/EntityAddress.js.map +1 -0
  43. package/dist/cjs/{AtLeastOnce.js → EntityId.js} +6 -7
  44. package/dist/cjs/EntityId.js.map +1 -0
  45. package/dist/cjs/{ShardManagerClient.js → EntityType.js} +5 -16
  46. package/dist/cjs/EntityType.js.map +1 -0
  47. package/dist/cjs/Envelope.js +168 -0
  48. package/dist/cjs/Envelope.js.map +1 -0
  49. package/dist/cjs/HttpCommon.js +49 -0
  50. package/dist/cjs/HttpCommon.js.map +1 -0
  51. package/dist/cjs/HttpRunner.js +108 -0
  52. package/dist/cjs/HttpRunner.js.map +1 -0
  53. package/dist/cjs/HttpShardManager.js +140 -0
  54. package/dist/cjs/HttpShardManager.js.map +1 -0
  55. package/dist/cjs/{AtLeastOnceStorage.js → MachineId.js} +11 -9
  56. package/dist/cjs/MachineId.js.map +1 -0
  57. package/dist/cjs/Message.js +99 -18
  58. package/dist/cjs/Message.js.map +1 -1
  59. package/dist/cjs/MessageStorage.js +356 -0
  60. package/dist/cjs/MessageStorage.js.map +1 -0
  61. package/dist/cjs/Reply.js +200 -0
  62. package/dist/cjs/Reply.js.map +1 -0
  63. package/dist/cjs/Runner.js +79 -0
  64. package/dist/cjs/Runner.js.map +1 -0
  65. package/dist/cjs/RunnerAddress.js +63 -0
  66. package/dist/cjs/RunnerAddress.js.map +1 -0
  67. package/dist/cjs/RunnerHealth.js +68 -0
  68. package/dist/cjs/RunnerHealth.js.map +1 -0
  69. package/dist/cjs/RunnerServer.js +125 -0
  70. package/dist/cjs/RunnerServer.js.map +1 -0
  71. package/dist/cjs/Runners.js +344 -0
  72. package/dist/cjs/Runners.js.map +1 -0
  73. package/dist/cjs/ShardId.js +7 -46
  74. package/dist/cjs/ShardId.js.map +1 -1
  75. package/dist/cjs/ShardManager.js +493 -8
  76. package/dist/cjs/ShardManager.js.map +1 -1
  77. package/dist/cjs/ShardStorage.js +139 -0
  78. package/dist/cjs/ShardStorage.js.map +1 -0
  79. package/dist/cjs/Sharding.js +732 -88
  80. package/dist/cjs/Sharding.js.map +1 -1
  81. package/dist/cjs/ShardingConfig.js +85 -18
  82. package/dist/cjs/ShardingConfig.js.map +1 -1
  83. package/dist/cjs/ShardingRegistrationEvent.js +26 -32
  84. package/dist/cjs/ShardingRegistrationEvent.js.map +1 -1
  85. package/dist/cjs/{ManagerConfig.js → Singleton.js} +11 -20
  86. package/dist/cjs/Singleton.js.map +1 -0
  87. package/dist/cjs/SingletonAddress.js +50 -0
  88. package/dist/cjs/SingletonAddress.js.map +1 -0
  89. package/dist/cjs/Snowflake.js +133 -0
  90. package/dist/cjs/Snowflake.js.map +1 -0
  91. package/dist/cjs/SocketRunner.js +40 -0
  92. package/dist/cjs/SocketRunner.js.map +1 -0
  93. package/dist/cjs/SocketShardManager.js +33 -0
  94. package/dist/cjs/SocketShardManager.js.map +1 -0
  95. package/dist/cjs/SqlMessageStorage.js +668 -0
  96. package/dist/cjs/SqlMessageStorage.js.map +1 -0
  97. package/dist/cjs/SqlShardStorage.js +228 -0
  98. package/dist/cjs/SqlShardStorage.js.map +1 -0
  99. package/dist/cjs/SynchronizedClock.js +66 -0
  100. package/dist/cjs/SynchronizedClock.js.map +1 -0
  101. package/dist/cjs/index.js +57 -45
  102. package/dist/cjs/internal/entityManager.js +311 -143
  103. package/dist/cjs/internal/entityManager.js.map +1 -1
  104. package/dist/cjs/internal/entityReaper.js +47 -0
  105. package/dist/cjs/internal/entityReaper.js.map +1 -0
  106. package/dist/cjs/internal/hash.js +20 -0
  107. package/dist/cjs/internal/hash.js.map +1 -0
  108. package/dist/cjs/internal/interruptors.js +9 -0
  109. package/dist/cjs/internal/interruptors.js.map +1 -0
  110. package/dist/cjs/internal/resourceMap.js +88 -0
  111. package/dist/cjs/internal/resourceMap.js.map +1 -0
  112. package/dist/cjs/internal/resourceRef.js +92 -0
  113. package/dist/cjs/internal/resourceRef.js.map +1 -0
  114. package/dist/cjs/internal/shardManager.js +219 -235
  115. package/dist/cjs/internal/shardManager.js.map +1 -1
  116. package/dist/dts/ClusterError.d.ts +169 -0
  117. package/dist/dts/ClusterError.d.ts.map +1 -0
  118. package/dist/dts/ClusterMetrics.d.ts +50 -0
  119. package/dist/dts/ClusterMetrics.d.ts.map +1 -0
  120. package/dist/dts/ClusterSchema.d.ts +13 -0
  121. package/dist/dts/ClusterSchema.d.ts.map +1 -0
  122. package/dist/dts/DeliverAt.d.ts +27 -0
  123. package/dist/dts/DeliverAt.d.ts.map +1 -0
  124. package/dist/dts/Entity.d.ts +180 -0
  125. package/dist/dts/Entity.d.ts.map +1 -0
  126. package/dist/dts/EntityAddress.d.ts +55 -0
  127. package/dist/dts/EntityAddress.d.ts.map +1 -0
  128. package/dist/dts/EntityId.d.ts +15 -0
  129. package/dist/dts/EntityId.d.ts.map +1 -0
  130. package/dist/dts/EntityType.d.ts +15 -0
  131. package/dist/dts/EntityType.d.ts.map +1 -0
  132. package/dist/dts/Envelope.d.ts +252 -0
  133. package/dist/dts/Envelope.d.ts.map +1 -0
  134. package/dist/dts/HttpCommon.d.ts +25 -0
  135. package/dist/dts/HttpCommon.d.ts.map +1 -0
  136. package/dist/dts/HttpRunner.d.ts +76 -0
  137. package/dist/dts/HttpRunner.d.ts.map +1 -0
  138. package/dist/dts/HttpShardManager.d.ts +119 -0
  139. package/dist/dts/HttpShardManager.d.ts.map +1 -0
  140. package/dist/dts/MachineId.d.ts +20 -0
  141. package/dist/dts/MachineId.d.ts.map +1 -0
  142. package/dist/dts/Message.d.ts +91 -74
  143. package/dist/dts/Message.d.ts.map +1 -1
  144. package/dist/dts/MessageStorage.d.ts +336 -0
  145. package/dist/dts/MessageStorage.d.ts.map +1 -0
  146. package/dist/dts/Reply.d.ts +171 -0
  147. package/dist/dts/Reply.d.ts.map +1 -0
  148. package/dist/dts/Runner.d.ts +81 -0
  149. package/dist/dts/Runner.d.ts.map +1 -0
  150. package/dist/dts/RunnerAddress.d.ts +56 -0
  151. package/dist/dts/RunnerAddress.d.ts.map +1 -0
  152. package/dist/dts/RunnerHealth.d.ts +54 -0
  153. package/dist/dts/RunnerHealth.d.ts.map +1 -0
  154. package/dist/dts/RunnerServer.d.ts +44 -0
  155. package/dist/dts/RunnerServer.d.ts.map +1 -0
  156. package/dist/dts/Runners.d.ts +161 -0
  157. package/dist/dts/Runners.d.ts.map +1 -0
  158. package/dist/dts/ShardId.d.ts +5 -55
  159. package/dist/dts/ShardId.d.ts.map +1 -1
  160. package/dist/dts/ShardManager.d.ts +435 -23
  161. package/dist/dts/ShardManager.d.ts.map +1 -1
  162. package/dist/dts/ShardStorage.d.ts +200 -0
  163. package/dist/dts/ShardStorage.d.ts.map +1 -0
  164. package/dist/dts/Sharding.d.ts +109 -131
  165. package/dist/dts/Sharding.d.ts.map +1 -1
  166. package/dist/dts/ShardingConfig.d.ts +147 -44
  167. package/dist/dts/ShardingConfig.d.ts.map +1 -1
  168. package/dist/dts/ShardingRegistrationEvent.d.ts +38 -23
  169. package/dist/dts/ShardingRegistrationEvent.d.ts.map +1 -1
  170. package/dist/dts/Singleton.d.ts +13 -0
  171. package/dist/dts/Singleton.d.ts.map +1 -0
  172. package/dist/dts/SingletonAddress.d.ts +49 -0
  173. package/dist/dts/SingletonAddress.d.ts.map +1 -0
  174. package/dist/dts/Snowflake.d.ts +121 -0
  175. package/dist/dts/Snowflake.d.ts.map +1 -0
  176. package/dist/dts/SocketRunner.d.ts +22 -0
  177. package/dist/dts/SocketRunner.d.ts.map +1 -0
  178. package/dist/dts/SocketShardManager.d.ts +17 -0
  179. package/dist/dts/SocketShardManager.d.ts.map +1 -0
  180. package/dist/dts/SqlMessageStorage.d.ts +43 -0
  181. package/dist/dts/SqlMessageStorage.d.ts.map +1 -0
  182. package/dist/dts/SqlShardStorage.d.ts +38 -0
  183. package/dist/dts/SqlShardStorage.d.ts.map +1 -0
  184. package/dist/dts/SynchronizedClock.d.ts +19 -0
  185. package/dist/dts/SynchronizedClock.d.ts.map +1 -0
  186. package/dist/dts/index.d.ts +48 -24
  187. package/dist/dts/index.d.ts.map +1 -1
  188. package/dist/dts/internal/entityReaper.d.ts +2 -0
  189. package/dist/dts/internal/entityReaper.d.ts.map +1 -0
  190. package/dist/dts/internal/hash.d.ts +2 -0
  191. package/dist/dts/internal/hash.d.ts.map +1 -0
  192. package/dist/dts/internal/interruptors.d.ts +2 -0
  193. package/dist/dts/internal/interruptors.d.ts.map +1 -0
  194. package/dist/dts/internal/resourceMap.d.ts +22 -0
  195. package/dist/dts/internal/resourceMap.d.ts.map +1 -0
  196. package/dist/dts/internal/resourceRef.d.ts +25 -0
  197. package/dist/dts/internal/resourceRef.d.ts.map +1 -0
  198. package/dist/dts/internal/shardManager.d.ts +1 -11
  199. package/dist/dts/internal/shardManager.d.ts.map +1 -1
  200. package/dist/esm/ClusterError.js +164 -0
  201. package/dist/esm/ClusterError.js.map +1 -0
  202. package/dist/esm/ClusterMetrics.js +54 -0
  203. package/dist/esm/ClusterMetrics.js.map +1 -0
  204. package/dist/esm/ClusterSchema.js +13 -0
  205. package/dist/esm/ClusterSchema.js.map +1 -0
  206. package/dist/esm/DeliverAt.js +22 -0
  207. package/dist/esm/DeliverAt.js.map +1 -0
  208. package/dist/esm/Entity.js +173 -0
  209. package/dist/esm/Entity.js.map +1 -0
  210. package/dist/esm/EntityAddress.js +44 -0
  211. package/dist/esm/EntityAddress.js.map +1 -0
  212. package/dist/esm/EntityId.js +10 -0
  213. package/dist/esm/EntityId.js.map +1 -0
  214. package/dist/esm/EntityType.js +10 -0
  215. package/dist/esm/EntityType.js.map +1 -0
  216. package/dist/esm/Envelope.js +154 -0
  217. package/dist/esm/Envelope.js.map +1 -0
  218. package/dist/esm/HttpCommon.js +38 -0
  219. package/dist/esm/HttpCommon.js.map +1 -0
  220. package/dist/esm/HttpRunner.js +98 -0
  221. package/dist/esm/HttpRunner.js.map +1 -0
  222. package/dist/esm/HttpShardManager.js +128 -0
  223. package/dist/esm/HttpShardManager.js.map +1 -0
  224. package/dist/esm/MachineId.js +17 -0
  225. package/dist/esm/MachineId.js.map +1 -0
  226. package/dist/esm/Message.js +88 -17
  227. package/dist/esm/Message.js.map +1 -1
  228. package/dist/esm/MessageStorage.js +345 -0
  229. package/dist/esm/MessageStorage.js.map +1 -0
  230. package/dist/esm/Reply.js +184 -0
  231. package/dist/esm/Reply.js.map +1 -0
  232. package/dist/esm/Runner.js +68 -0
  233. package/dist/esm/Runner.js.map +1 -0
  234. package/dist/esm/RunnerAddress.js +52 -0
  235. package/dist/esm/RunnerAddress.js.map +1 -0
  236. package/dist/esm/RunnerHealth.js +58 -0
  237. package/dist/esm/RunnerHealth.js.map +1 -0
  238. package/dist/esm/RunnerServer.js +116 -0
  239. package/dist/esm/RunnerServer.js.map +1 -0
  240. package/dist/esm/Runners.js +332 -0
  241. package/dist/esm/Runners.js.map +1 -0
  242. package/dist/esm/ShardId.js +5 -42
  243. package/dist/esm/ShardId.js.map +1 -1
  244. package/dist/esm/ShardManager.js +486 -7
  245. package/dist/esm/ShardManager.js.map +1 -1
  246. package/dist/esm/ShardStorage.js +129 -0
  247. package/dist/esm/ShardStorage.js.map +1 -0
  248. package/dist/esm/Sharding.js +730 -87
  249. package/dist/esm/Sharding.js.map +1 -1
  250. package/dist/esm/ShardingConfig.js +80 -17
  251. package/dist/esm/ShardingConfig.js.map +1 -1
  252. package/dist/esm/ShardingRegistrationEvent.js +19 -29
  253. package/dist/esm/ShardingRegistrationEvent.js.map +1 -1
  254. package/dist/esm/Singleton.js +15 -0
  255. package/dist/esm/Singleton.js.map +1 -0
  256. package/dist/esm/SingletonAddress.js +40 -0
  257. package/dist/esm/SingletonAddress.js.map +1 -0
  258. package/dist/esm/Snowflake.js +117 -0
  259. package/dist/esm/Snowflake.js.map +1 -0
  260. package/dist/esm/SocketRunner.js +31 -0
  261. package/dist/esm/SocketRunner.js.map +1 -0
  262. package/dist/esm/SocketShardManager.js +24 -0
  263. package/dist/esm/SocketShardManager.js.map +1 -0
  264. package/dist/esm/SqlMessageStorage.js +658 -0
  265. package/dist/esm/SqlMessageStorage.js.map +1 -0
  266. package/dist/esm/SqlShardStorage.js +218 -0
  267. package/dist/esm/SqlShardStorage.js.map +1 -0
  268. package/dist/esm/SynchronizedClock.js +57 -0
  269. package/dist/esm/SynchronizedClock.js.map +1 -0
  270. package/dist/esm/index.js +48 -24
  271. package/dist/esm/index.js.map +1 -1
  272. package/dist/esm/internal/entityManager.js +311 -142
  273. package/dist/esm/internal/entityManager.js.map +1 -1
  274. package/dist/esm/internal/entityReaper.js +38 -0
  275. package/dist/esm/internal/entityReaper.js.map +1 -0
  276. package/dist/esm/internal/hash.js +12 -0
  277. package/dist/esm/internal/hash.js.map +1 -0
  278. package/dist/esm/internal/interruptors.js +3 -0
  279. package/dist/esm/internal/interruptors.js.map +1 -0
  280. package/dist/esm/internal/resourceMap.js +79 -0
  281. package/dist/esm/internal/resourceMap.js.map +1 -0
  282. package/dist/esm/internal/resourceRef.js +83 -0
  283. package/dist/esm/internal/resourceRef.js.map +1 -0
  284. package/dist/esm/internal/shardManager.js +217 -233
  285. package/dist/esm/internal/shardManager.js.map +1 -1
  286. package/package.json +212 -154
  287. package/src/ClusterError.ts +193 -0
  288. package/src/ClusterMetrics.ts +62 -0
  289. package/src/ClusterSchema.ts +13 -0
  290. package/src/DeliverAt.ts +36 -0
  291. package/src/Entity.ts +438 -0
  292. package/src/EntityAddress.ts +55 -0
  293. package/src/EntityId.ts +16 -0
  294. package/src/EntityType.ts +16 -0
  295. package/src/Envelope.ts +352 -0
  296. package/src/HttpCommon.ts +73 -0
  297. package/src/HttpRunner.ts +196 -0
  298. package/src/HttpShardManager.ts +273 -0
  299. package/src/MachineId.ts +27 -0
  300. package/src/Message.ts +143 -92
  301. package/src/MessageStorage.ts +697 -0
  302. package/src/Reply.ts +295 -0
  303. package/src/Runner.ts +84 -0
  304. package/src/RunnerAddress.ts +61 -0
  305. package/src/RunnerHealth.ts +87 -0
  306. package/src/RunnerServer.ts +156 -0
  307. package/src/Runners.ts +533 -0
  308. package/src/ShardId.ts +10 -62
  309. package/src/ShardManager.ts +780 -29
  310. package/src/ShardStorage.ts +289 -0
  311. package/src/Sharding.ts +1060 -183
  312. package/src/ShardingConfig.ts +186 -45
  313. package/src/ShardingRegistrationEvent.ts +38 -39
  314. package/src/Singleton.ts +20 -0
  315. package/src/SingletonAddress.ts +47 -0
  316. package/src/Snowflake.ts +194 -0
  317. package/src/SocketRunner.ts +59 -0
  318. package/src/SocketShardManager.ts +48 -0
  319. package/src/SqlMessageStorage.ts +833 -0
  320. package/src/SqlShardStorage.ts +292 -0
  321. package/src/SynchronizedClock.ts +82 -0
  322. package/src/index.ts +54 -24
  323. package/src/internal/entityManager.ts +464 -361
  324. package/src/internal/entityReaper.ts +53 -0
  325. package/src/internal/hash.ts +11 -0
  326. package/src/internal/interruptors.ts +4 -0
  327. package/src/internal/resourceMap.ts +89 -0
  328. package/src/internal/resourceRef.ts +88 -0
  329. package/src/internal/shardManager.ts +273 -546
  330. package/AtLeastOnce/package.json +0 -6
  331. package/AtLeastOnceStorage/package.json +0 -6
  332. package/Broadcaster/package.json +0 -6
  333. package/ManagerConfig/package.json +0 -6
  334. package/MessageState/package.json +0 -6
  335. package/Messenger/package.json +0 -6
  336. package/Pod/package.json +0 -6
  337. package/PodAddress/package.json +0 -6
  338. package/Pods/package.json +0 -6
  339. package/PodsHealth/package.json +0 -6
  340. package/PoisonPill/package.json +0 -6
  341. package/RecipientAddress/package.json +0 -6
  342. package/RecipientBehaviour/package.json +0 -6
  343. package/RecipientBehaviourContext/package.json +0 -6
  344. package/RecipientType/package.json +0 -6
  345. package/Serialization/package.json +0 -6
  346. package/SerializedEnvelope/package.json +0 -6
  347. package/SerializedMessage/package.json +0 -6
  348. package/ShardManagerClient/package.json +0 -6
  349. package/ShardingEvent/package.json +0 -6
  350. package/ShardingException/package.json +0 -6
  351. package/Storage/package.json +0 -6
  352. package/dist/cjs/AtLeastOnce.js.map +0 -1
  353. package/dist/cjs/AtLeastOnceStorage.js.map +0 -1
  354. package/dist/cjs/Broadcaster.js +0 -6
  355. package/dist/cjs/Broadcaster.js.map +0 -1
  356. package/dist/cjs/ManagerConfig.js.map +0 -1
  357. package/dist/cjs/MessageState.js +0 -55
  358. package/dist/cjs/MessageState.js.map +0 -1
  359. package/dist/cjs/Messenger.js +0 -6
  360. package/dist/cjs/Messenger.js.map +0 -1
  361. package/dist/cjs/Pod.js +0 -78
  362. package/dist/cjs/Pod.js.map +0 -1
  363. package/dist/cjs/PodAddress.js +0 -77
  364. package/dist/cjs/PodAddress.js.map +0 -1
  365. package/dist/cjs/Pods.js.map +0 -1
  366. package/dist/cjs/PodsHealth.js +0 -41
  367. package/dist/cjs/PodsHealth.js.map +0 -1
  368. package/dist/cjs/PoisonPill.js +0 -78
  369. package/dist/cjs/PoisonPill.js.map +0 -1
  370. package/dist/cjs/RecipientAddress.js +0 -79
  371. package/dist/cjs/RecipientAddress.js.map +0 -1
  372. package/dist/cjs/RecipientBehaviour.js +0 -38
  373. package/dist/cjs/RecipientBehaviour.js.map +0 -1
  374. package/dist/cjs/RecipientBehaviourContext.js +0 -64
  375. package/dist/cjs/RecipientBehaviourContext.js.map +0 -1
  376. package/dist/cjs/RecipientType.js +0 -123
  377. package/dist/cjs/RecipientType.js.map +0 -1
  378. package/dist/cjs/Serialization.js +0 -32
  379. package/dist/cjs/Serialization.js.map +0 -1
  380. package/dist/cjs/SerializedEnvelope.js +0 -87
  381. package/dist/cjs/SerializedEnvelope.js.map +0 -1
  382. package/dist/cjs/SerializedMessage.js +0 -64
  383. package/dist/cjs/SerializedMessage.js.map +0 -1
  384. package/dist/cjs/ShardManagerClient.js.map +0 -1
  385. package/dist/cjs/ShardingEvent.js +0 -72
  386. package/dist/cjs/ShardingEvent.js.map +0 -1
  387. package/dist/cjs/ShardingException.js +0 -107
  388. package/dist/cjs/ShardingException.js.map +0 -1
  389. package/dist/cjs/Storage.js +0 -40
  390. package/dist/cjs/Storage.js.map +0 -1
  391. package/dist/cjs/internal/atLeastOnce.js +0 -35
  392. package/dist/cjs/internal/atLeastOnce.js.map +0 -1
  393. package/dist/cjs/internal/atLeastOnceStorage.js +0 -163
  394. package/dist/cjs/internal/atLeastOnceStorage.js.map +0 -1
  395. package/dist/cjs/internal/entityState.js +0 -47
  396. package/dist/cjs/internal/entityState.js.map +0 -1
  397. package/dist/cjs/internal/managerConfig.js +0 -46
  398. package/dist/cjs/internal/managerConfig.js.map +0 -1
  399. package/dist/cjs/internal/message.js +0 -48
  400. package/dist/cjs/internal/message.js.map +0 -1
  401. package/dist/cjs/internal/messageState.js +0 -79
  402. package/dist/cjs/internal/messageState.js.map +0 -1
  403. package/dist/cjs/internal/podWithMetadata.js +0 -54
  404. package/dist/cjs/internal/podWithMetadata.js.map +0 -1
  405. package/dist/cjs/internal/pods.js +0 -35
  406. package/dist/cjs/internal/pods.js.map +0 -1
  407. package/dist/cjs/internal/podsHealth.js +0 -40
  408. package/dist/cjs/internal/podsHealth.js.map +0 -1
  409. package/dist/cjs/internal/recipientBehaviour.js +0 -52
  410. package/dist/cjs/internal/recipientBehaviour.js.map +0 -1
  411. package/dist/cjs/internal/recipientBehaviourContext.js +0 -36
  412. package/dist/cjs/internal/recipientBehaviourContext.js.map +0 -1
  413. package/dist/cjs/internal/serialization.js +0 -48
  414. package/dist/cjs/internal/serialization.js.map +0 -1
  415. package/dist/cjs/internal/shardManagerClient.js +0 -48
  416. package/dist/cjs/internal/shardManagerClient.js.map +0 -1
  417. package/dist/cjs/internal/shardManagerState.js +0 -44
  418. package/dist/cjs/internal/shardManagerState.js.map +0 -1
  419. package/dist/cjs/internal/sharding.js +0 -306
  420. package/dist/cjs/internal/sharding.js.map +0 -1
  421. package/dist/cjs/internal/shardingConfig.js +0 -56
  422. package/dist/cjs/internal/shardingConfig.js.map +0 -1
  423. package/dist/cjs/internal/storage.js +0 -52
  424. package/dist/cjs/internal/storage.js.map +0 -1
  425. package/dist/cjs/internal/utils.js +0 -69
  426. package/dist/cjs/internal/utils.js.map +0 -1
  427. package/dist/dts/AtLeastOnce.d.ts +0 -20
  428. package/dist/dts/AtLeastOnce.d.ts.map +0 -1
  429. package/dist/dts/AtLeastOnceStorage.d.ts +0 -75
  430. package/dist/dts/AtLeastOnceStorage.d.ts.map +0 -1
  431. package/dist/dts/Broadcaster.d.ts +0 -32
  432. package/dist/dts/Broadcaster.d.ts.map +0 -1
  433. package/dist/dts/ManagerConfig.d.ts +0 -61
  434. package/dist/dts/ManagerConfig.d.ts.map +0 -1
  435. package/dist/dts/MessageState.d.ts +0 -107
  436. package/dist/dts/MessageState.d.ts.map +0 -1
  437. package/dist/dts/Messenger.d.ts +0 -32
  438. package/dist/dts/Messenger.d.ts.map +0 -1
  439. package/dist/dts/Pod.d.ts +0 -81
  440. package/dist/dts/Pod.d.ts.map +0 -1
  441. package/dist/dts/PodAddress.d.ts +0 -80
  442. package/dist/dts/PodAddress.d.ts.map +0 -1
  443. package/dist/dts/Pods.d.ts +0 -78
  444. package/dist/dts/Pods.d.ts.map +0 -1
  445. package/dist/dts/PodsHealth.d.ts +0 -66
  446. package/dist/dts/PodsHealth.d.ts.map +0 -1
  447. package/dist/dts/PoisonPill.d.ts +0 -78
  448. package/dist/dts/PoisonPill.d.ts.map +0 -1
  449. package/dist/dts/RecipientAddress.d.ts +0 -57
  450. package/dist/dts/RecipientAddress.d.ts.map +0 -1
  451. package/dist/dts/RecipientBehaviour.d.ts +0 -72
  452. package/dist/dts/RecipientBehaviour.d.ts.map +0 -1
  453. package/dist/dts/RecipientBehaviourContext.d.ts +0 -83
  454. package/dist/dts/RecipientBehaviourContext.d.ts.map +0 -1
  455. package/dist/dts/RecipientType.d.ts +0 -93
  456. package/dist/dts/RecipientType.d.ts.map +0 -1
  457. package/dist/dts/Serialization.d.ts +0 -58
  458. package/dist/dts/Serialization.d.ts.map +0 -1
  459. package/dist/dts/SerializedEnvelope.d.ts +0 -86
  460. package/dist/dts/SerializedEnvelope.d.ts.map +0 -1
  461. package/dist/dts/SerializedMessage.d.ts +0 -66
  462. package/dist/dts/SerializedMessage.d.ts.map +0 -1
  463. package/dist/dts/ShardManagerClient.d.ts +0 -50
  464. package/dist/dts/ShardManagerClient.d.ts.map +0 -1
  465. package/dist/dts/ShardingEvent.d.ts +0 -90
  466. package/dist/dts/ShardingEvent.d.ts.map +0 -1
  467. package/dist/dts/ShardingException.d.ts +0 -125
  468. package/dist/dts/ShardingException.d.ts.map +0 -1
  469. package/dist/dts/Storage.d.ts +0 -78
  470. package/dist/dts/Storage.d.ts.map +0 -1
  471. package/dist/dts/internal/atLeastOnce.d.ts +0 -2
  472. package/dist/dts/internal/atLeastOnce.d.ts.map +0 -1
  473. package/dist/dts/internal/atLeastOnceStorage.d.ts +0 -2
  474. package/dist/dts/internal/atLeastOnceStorage.d.ts.map +0 -1
  475. package/dist/dts/internal/entityState.d.ts +0 -21
  476. package/dist/dts/internal/entityState.d.ts.map +0 -1
  477. package/dist/dts/internal/managerConfig.d.ts +0 -2
  478. package/dist/dts/internal/managerConfig.d.ts.map +0 -1
  479. package/dist/dts/internal/message.d.ts +0 -9
  480. package/dist/dts/internal/message.d.ts.map +0 -1
  481. package/dist/dts/internal/messageState.d.ts +0 -2
  482. package/dist/dts/internal/messageState.d.ts.map +0 -1
  483. package/dist/dts/internal/podWithMetadata.d.ts +0 -2
  484. package/dist/dts/internal/podWithMetadata.d.ts.map +0 -1
  485. package/dist/dts/internal/pods.d.ts +0 -2
  486. package/dist/dts/internal/pods.d.ts.map +0 -1
  487. package/dist/dts/internal/podsHealth.d.ts +0 -2
  488. package/dist/dts/internal/podsHealth.d.ts.map +0 -1
  489. package/dist/dts/internal/recipientBehaviour.d.ts +0 -2
  490. package/dist/dts/internal/recipientBehaviour.d.ts.map +0 -1
  491. package/dist/dts/internal/recipientBehaviourContext.d.ts +0 -2
  492. package/dist/dts/internal/recipientBehaviourContext.d.ts.map +0 -1
  493. package/dist/dts/internal/serialization.d.ts +0 -2
  494. package/dist/dts/internal/serialization.d.ts.map +0 -1
  495. package/dist/dts/internal/shardManagerClient.d.ts +0 -2
  496. package/dist/dts/internal/shardManagerClient.d.ts.map +0 -1
  497. package/dist/dts/internal/shardManagerState.d.ts +0 -26
  498. package/dist/dts/internal/shardManagerState.d.ts.map +0 -1
  499. package/dist/dts/internal/sharding.d.ts +0 -2
  500. package/dist/dts/internal/sharding.d.ts.map +0 -1
  501. package/dist/dts/internal/shardingConfig.d.ts +0 -2
  502. package/dist/dts/internal/shardingConfig.d.ts.map +0 -1
  503. package/dist/dts/internal/storage.d.ts +0 -2
  504. package/dist/dts/internal/storage.d.ts.map +0 -1
  505. package/dist/dts/internal/utils.d.ts +0 -2
  506. package/dist/dts/internal/utils.d.ts.map +0 -1
  507. package/dist/esm/AtLeastOnce.js +0 -12
  508. package/dist/esm/AtLeastOnce.js.map +0 -1
  509. package/dist/esm/AtLeastOnceStorage.js +0 -17
  510. package/dist/esm/AtLeastOnceStorage.js.map +0 -1
  511. package/dist/esm/Broadcaster.js +0 -2
  512. package/dist/esm/Broadcaster.js.map +0 -1
  513. package/dist/esm/ManagerConfig.js +0 -26
  514. package/dist/esm/ManagerConfig.js.map +0 -1
  515. package/dist/esm/MessageState.js +0 -47
  516. package/dist/esm/MessageState.js.map +0 -1
  517. package/dist/esm/Messenger.js +0 -2
  518. package/dist/esm/Messenger.js.map +0 -1
  519. package/dist/esm/Pod.js +0 -65
  520. package/dist/esm/Pod.js.map +0 -1
  521. package/dist/esm/PodAddress.js +0 -64
  522. package/dist/esm/PodAddress.js.map +0 -1
  523. package/dist/esm/Pods.js +0 -27
  524. package/dist/esm/Pods.js.map +0 -1
  525. package/dist/esm/PodsHealth.js +0 -33
  526. package/dist/esm/PodsHealth.js.map +0 -1
  527. package/dist/esm/PoisonPill.js +0 -65
  528. package/dist/esm/PoisonPill.js.map +0 -1
  529. package/dist/esm/RecipientAddress.js +0 -67
  530. package/dist/esm/RecipientAddress.js.map +0 -1
  531. package/dist/esm/RecipientBehaviour.js +0 -30
  532. package/dist/esm/RecipientBehaviour.js.map +0 -1
  533. package/dist/esm/RecipientBehaviourContext.js +0 -56
  534. package/dist/esm/RecipientBehaviourContext.js.map +0 -1
  535. package/dist/esm/RecipientType.js +0 -108
  536. package/dist/esm/RecipientType.js.map +0 -1
  537. package/dist/esm/Serialization.js +0 -24
  538. package/dist/esm/Serialization.js.map +0 -1
  539. package/dist/esm/SerializedEnvelope.js +0 -74
  540. package/dist/esm/SerializedEnvelope.js.map +0 -1
  541. package/dist/esm/SerializedMessage.js +0 -51
  542. package/dist/esm/SerializedMessage.js.map +0 -1
  543. package/dist/esm/ShardManagerClient.js +0 -22
  544. package/dist/esm/ShardManagerClient.js.map +0 -1
  545. package/dist/esm/ShardingEvent.js +0 -62
  546. package/dist/esm/ShardingEvent.js.map +0 -1
  547. package/dist/esm/ShardingException.js +0 -91
  548. package/dist/esm/ShardingException.js.map +0 -1
  549. package/dist/esm/Storage.js +0 -32
  550. package/dist/esm/Storage.js.map +0 -1
  551. package/dist/esm/internal/atLeastOnce.js +0 -26
  552. package/dist/esm/internal/atLeastOnce.js.map +0 -1
  553. package/dist/esm/internal/atLeastOnceStorage.js +0 -154
  554. package/dist/esm/internal/atLeastOnceStorage.js.map +0 -1
  555. package/dist/esm/internal/entityState.js +0 -35
  556. package/dist/esm/internal/entityState.js.map +0 -1
  557. package/dist/esm/internal/managerConfig.js +0 -38
  558. package/dist/esm/internal/managerConfig.js.map +0 -1
  559. package/dist/esm/internal/message.js +0 -35
  560. package/dist/esm/internal/message.js.map +0 -1
  561. package/dist/esm/internal/messageState.js +0 -66
  562. package/dist/esm/internal/messageState.js.map +0 -1
  563. package/dist/esm/internal/podWithMetadata.js +0 -41
  564. package/dist/esm/internal/podWithMetadata.js.map +0 -1
  565. package/dist/esm/internal/pods.js +0 -25
  566. package/dist/esm/internal/pods.js.map +0 -1
  567. package/dist/esm/internal/podsHealth.js +0 -30
  568. package/dist/esm/internal/podsHealth.js.map +0 -1
  569. package/dist/esm/internal/recipientBehaviour.js +0 -42
  570. package/dist/esm/internal/recipientBehaviour.js.map +0 -1
  571. package/dist/esm/internal/recipientBehaviourContext.js +0 -26
  572. package/dist/esm/internal/recipientBehaviourContext.js.map +0 -1
  573. package/dist/esm/internal/serialization.js +0 -38
  574. package/dist/esm/internal/serialization.js.map +0 -1
  575. package/dist/esm/internal/shardManagerClient.js +0 -38
  576. package/dist/esm/internal/shardManagerClient.js.map +0 -1
  577. package/dist/esm/internal/shardManagerState.js +0 -36
  578. package/dist/esm/internal/shardManagerState.js.map +0 -1
  579. package/dist/esm/internal/sharding.js +0 -288
  580. package/dist/esm/internal/sharding.js.map +0 -1
  581. package/dist/esm/internal/shardingConfig.js +0 -47
  582. package/dist/esm/internal/shardingConfig.js.map +0 -1
  583. package/dist/esm/internal/storage.js +0 -42
  584. package/dist/esm/internal/storage.js.map +0 -1
  585. package/dist/esm/internal/utils.js +0 -56
  586. package/dist/esm/internal/utils.js.map +0 -1
  587. package/src/AtLeastOnce.ts +0 -28
  588. package/src/AtLeastOnceStorage.ts +0 -96
  589. package/src/Broadcaster.ts +0 -48
  590. package/src/ManagerConfig.ts +0 -67
  591. package/src/MessageState.ts +0 -126
  592. package/src/Messenger.ts +0 -40
  593. package/src/Pod.ts +0 -95
  594. package/src/PodAddress.ts +0 -94
  595. package/src/Pods.ts +0 -100
  596. package/src/PodsHealth.ts +0 -74
  597. package/src/PoisonPill.ts +0 -105
  598. package/src/RecipientAddress.ts +0 -72
  599. package/src/RecipientBehaviour.ts +0 -108
  600. package/src/RecipientBehaviourContext.ts +0 -101
  601. package/src/RecipientType.ts +0 -134
  602. package/src/Serialization.ts +0 -72
  603. package/src/SerializedEnvelope.ts +0 -108
  604. package/src/SerializedMessage.ts +0 -82
  605. package/src/ShardManagerClient.ts +0 -57
  606. package/src/ShardingEvent.ts +0 -121
  607. package/src/ShardingException.ts +0 -151
  608. package/src/Storage.ts +0 -92
  609. package/src/internal/atLeastOnce.ts +0 -59
  610. package/src/internal/atLeastOnceStorage.ts +0 -218
  611. package/src/internal/entityState.ts +0 -64
  612. package/src/internal/managerConfig.ts +0 -84
  613. package/src/internal/message.ts +0 -63
  614. package/src/internal/messageState.ts +0 -98
  615. package/src/internal/podWithMetadata.ts +0 -72
  616. package/src/internal/pods.ts +0 -29
  617. package/src/internal/podsHealth.ts +0 -39
  618. package/src/internal/recipientBehaviour.ts +0 -133
  619. package/src/internal/recipientBehaviourContext.ts +0 -70
  620. package/src/internal/serialization.ts +0 -63
  621. package/src/internal/shardManagerClient.ts +0 -49
  622. package/src/internal/shardManagerState.ts +0 -80
  623. package/src/internal/sharding.ts +0 -789
  624. package/src/internal/shardingConfig.ts +0 -97
  625. package/src/internal/storage.ts +0 -60
  626. package/src/internal/utils.ts +0 -54
@@ -0,0 +1,200 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import * as Context from "effect/Context";
5
+ import * as Effect from "effect/Effect";
6
+ import * as Layer from "effect/Layer";
7
+ import * as Option from "effect/Option";
8
+ import type { PersistenceError } from "./ClusterError.js";
9
+ import { Runner } from "./Runner.js";
10
+ import { RunnerAddress } from "./RunnerAddress.js";
11
+ import { ShardId } from "./ShardId.js";
12
+ declare const ShardStorage_base: Context.TagClass<ShardStorage, "@effect/cluster/ShardStorage", {
13
+ /**
14
+ * Get the current assignments of shards to runners.
15
+ */
16
+ readonly getAssignments: Effect.Effect<ReadonlyMap<ShardId, Option.Option<RunnerAddress>>, PersistenceError>;
17
+ /**
18
+ * Save the current state of shards assignments to runners.
19
+ */
20
+ readonly saveAssignments: (assignments: Iterable<readonly [ShardId, Option.Option<RunnerAddress>]>) => Effect.Effect<void, PersistenceError>;
21
+ /**
22
+ * Get all runners registered with the cluster.
23
+ */
24
+ readonly getRunners: Effect.Effect<Array<[RunnerAddress, Runner]>, PersistenceError>;
25
+ /**
26
+ * Save the current runners registered with the cluster.
27
+ */
28
+ readonly saveRunners: (runners: Iterable<readonly [RunnerAddress, Runner]>) => Effect.Effect<void, PersistenceError>;
29
+ /**
30
+ * Try to acquire the given shard ids for processing.
31
+ *
32
+ * It returns an array of shards it was able to acquire.
33
+ */
34
+ readonly acquire: (address: RunnerAddress, shardIds: Iterable<ShardId>) => Effect.Effect<Array<ShardId>, PersistenceError>;
35
+ /**
36
+ * Refresh the locks owned by the given runner.
37
+ *
38
+ * Locks expire after 90 seconds, so this method should be called every 60
39
+ * seconds to keep the locks alive.
40
+ */
41
+ readonly refresh: (address: RunnerAddress, shardIds: Iterable<ShardId>) => Effect.Effect<Array<ShardId>, PersistenceError>;
42
+ /**
43
+ * Release the given shard ids.
44
+ */
45
+ readonly release: (address: RunnerAddress, shardId: ShardId) => Effect.Effect<void, PersistenceError>;
46
+ /**
47
+ * Release all the shards assigned to the given runner.
48
+ */
49
+ readonly releaseAll: (address: RunnerAddress) => Effect.Effect<void, PersistenceError>;
50
+ }>;
51
+ /**
52
+ * Represents a generic interface to the persistent storage required by the
53
+ * cluster.
54
+ *
55
+ * @since 1.0.0
56
+ * @category models
57
+ */
58
+ export declare class ShardStorage extends ShardStorage_base {
59
+ }
60
+ /**
61
+ * @since 1.0.0
62
+ * @category Encoded
63
+ */
64
+ export interface Encoded {
65
+ /**
66
+ * Get the current assignments of shards to runners.
67
+ */
68
+ readonly getAssignments: Effect.Effect<Array<readonly [
69
+ shardId: number,
70
+ runnerAddress: string | null
71
+ ]>, PersistenceError>;
72
+ /**
73
+ * Save the current state of shards assignments to runners.
74
+ */
75
+ readonly saveAssignments: (assignments: Array<readonly [shardId: number, RunnerAddress: string | null]>) => Effect.Effect<void, PersistenceError>;
76
+ /**
77
+ * Get all runners registered with the cluster.
78
+ */
79
+ readonly getRunners: Effect.Effect<Array<readonly [address: string, runner: string]>, PersistenceError>;
80
+ /**
81
+ * Save the current runners registered with the cluster.
82
+ */
83
+ readonly saveRunners: (runners: Array<readonly [address: string, runner: string]>) => Effect.Effect<void, PersistenceError>;
84
+ /**
85
+ * Acquire the lock on the given shards, returning the shards that were
86
+ * successfully locked.
87
+ */
88
+ readonly acquire: (address: string, shardIds: ReadonlyArray<number>) => Effect.Effect<Array<number>, PersistenceError>;
89
+ /**
90
+ * Refresh the lock on the given shards, returning the shards that were
91
+ * successfully locked.
92
+ */
93
+ readonly refresh: (address: string, shardIds: ReadonlyArray<number>) => Effect.Effect<Array<number>, PersistenceError>;
94
+ /**
95
+ * Release the lock on the given shards.
96
+ */
97
+ readonly release: (address: string, shardIds: number) => Effect.Effect<void, PersistenceError>;
98
+ /**
99
+ * Release the lock on all shards for the given runner.
100
+ */
101
+ readonly releaseAll: (address: string) => Effect.Effect<void, PersistenceError>;
102
+ }
103
+ /**
104
+ * @since 1.0.0
105
+ * @category layers
106
+ */
107
+ export declare const makeEncoded: (encoded: Encoded) => Effect.Effect<{
108
+ /**
109
+ * Get the current assignments of shards to runners.
110
+ */
111
+ readonly getAssignments: Effect.Effect<ReadonlyMap<ShardId, Option.Option<RunnerAddress>>, PersistenceError>;
112
+ /**
113
+ * Save the current state of shards assignments to runners.
114
+ */
115
+ readonly saveAssignments: (assignments: Iterable<readonly [ShardId, Option.Option<RunnerAddress>]>) => Effect.Effect<void, PersistenceError>;
116
+ /**
117
+ * Get all runners registered with the cluster.
118
+ */
119
+ readonly getRunners: Effect.Effect<Array<[RunnerAddress, Runner]>, PersistenceError>;
120
+ /**
121
+ * Save the current runners registered with the cluster.
122
+ */
123
+ readonly saveRunners: (runners: Iterable<readonly [RunnerAddress, Runner]>) => Effect.Effect<void, PersistenceError>;
124
+ /**
125
+ * Try to acquire the given shard ids for processing.
126
+ *
127
+ * It returns an array of shards it was able to acquire.
128
+ */
129
+ readonly acquire: (address: RunnerAddress, shardIds: Iterable<ShardId>) => Effect.Effect<Array<ShardId>, PersistenceError>;
130
+ /**
131
+ * Refresh the locks owned by the given runner.
132
+ *
133
+ * Locks expire after 90 seconds, so this method should be called every 60
134
+ * seconds to keep the locks alive.
135
+ */
136
+ readonly refresh: (address: RunnerAddress, shardIds: Iterable<ShardId>) => Effect.Effect<Array<ShardId>, PersistenceError>;
137
+ /**
138
+ * Release the given shard ids.
139
+ */
140
+ readonly release: (address: RunnerAddress, shardId: ShardId) => Effect.Effect<void, PersistenceError>;
141
+ /**
142
+ * Release all the shards assigned to the given runner.
143
+ */
144
+ readonly releaseAll: (address: RunnerAddress) => Effect.Effect<void, PersistenceError>;
145
+ }, never, never>;
146
+ /**
147
+ * @since 1.0.0
148
+ * @category layers
149
+ */
150
+ export declare const layerNoop: Layer.Layer<ShardStorage>;
151
+ /**
152
+ * @since 1.0.0
153
+ * @category constructors
154
+ */
155
+ export declare const makeMemory: Effect.Effect<{
156
+ /**
157
+ * Get the current assignments of shards to runners.
158
+ */
159
+ readonly getAssignments: Effect.Effect<ReadonlyMap<ShardId, Option.Option<RunnerAddress>>, PersistenceError>;
160
+ /**
161
+ * Save the current state of shards assignments to runners.
162
+ */
163
+ readonly saveAssignments: (assignments: Iterable<readonly [ShardId, Option.Option<RunnerAddress>]>) => Effect.Effect<void, PersistenceError>;
164
+ /**
165
+ * Get all runners registered with the cluster.
166
+ */
167
+ readonly getRunners: Effect.Effect<Array<[RunnerAddress, Runner]>, PersistenceError>;
168
+ /**
169
+ * Save the current runners registered with the cluster.
170
+ */
171
+ readonly saveRunners: (runners: Iterable<readonly [RunnerAddress, Runner]>) => Effect.Effect<void, PersistenceError>;
172
+ /**
173
+ * Try to acquire the given shard ids for processing.
174
+ *
175
+ * It returns an array of shards it was able to acquire.
176
+ */
177
+ readonly acquire: (address: RunnerAddress, shardIds: Iterable<ShardId>) => Effect.Effect<Array<ShardId>, PersistenceError>;
178
+ /**
179
+ * Refresh the locks owned by the given runner.
180
+ *
181
+ * Locks expire after 90 seconds, so this method should be called every 60
182
+ * seconds to keep the locks alive.
183
+ */
184
+ readonly refresh: (address: RunnerAddress, shardIds: Iterable<ShardId>) => Effect.Effect<Array<ShardId>, PersistenceError>;
185
+ /**
186
+ * Release the given shard ids.
187
+ */
188
+ readonly release: (address: RunnerAddress, shardId: ShardId) => Effect.Effect<void, PersistenceError>;
189
+ /**
190
+ * Release all the shards assigned to the given runner.
191
+ */
192
+ readonly releaseAll: (address: RunnerAddress) => Effect.Effect<void, PersistenceError>;
193
+ }, never, never>;
194
+ /**
195
+ * @since 1.0.0
196
+ * @category layers
197
+ */
198
+ export declare const layerMemory: Layer.Layer<ShardStorage>;
199
+ export {};
200
+ //# sourceMappingURL=ShardStorage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ShardStorage.d.ts","sourceRoot":"","sources":["../../src/ShardStorage.ts"],"names":[],"mappings":"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"}
@@ -1,146 +1,124 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
- import type * as Effect from "effect/Effect";
5
- import type * as HashSet from "effect/HashSet";
6
- import type * as Scope from "effect/Scope";
7
- import type * as Stream from "effect/Stream";
8
- import type { Broadcaster } from "./Broadcaster.js";
9
- import type * as Message from "./Message.js";
10
- import type * as MessageState from "./MessageState.js";
11
- import type { Messenger } from "./Messenger.js";
12
- import type * as PodAddress from "./PodAddress.js";
13
- import type * as RecipientAddress from "./RecipientAddress.js";
14
- import type * as RecipientBehaviour from "./RecipientBehaviour.js";
15
- import type * as RecipientBehaviourContext from "./RecipientBehaviourContext.js";
16
- import type * as RecipentType from "./RecipientType.js";
17
- import type * as SerializedEnvelope from "./SerializedEnvelope.js";
18
- import type * as SerializedMessage from "./SerializedMessage.js";
19
- import type * as ShardId from "./ShardId.js";
20
- import type * as ShardingException from "./ShardingException.js";
21
- import type * as ShardingRegistrationEvent from "./ShardingRegistrationEvent.js";
22
- /**
23
- * @since 1.0.0
24
- * @category symbols
25
- */
26
- export declare const ShardingTypeId: unique symbol;
27
- /**
28
- * @since 1.0.0
29
- * @category symbols
30
- */
31
- export type ShardingTypeId = typeof ShardingTypeId;
4
+ import type * as Rpc from "@effect/rpc/Rpc";
5
+ import * as RpcClient from "@effect/rpc/RpcClient";
6
+ import * as Context from "effect/Context";
7
+ import type { DurationInput } from "effect/Duration";
8
+ import * as Effect from "effect/Effect";
9
+ import * as Layer from "effect/Layer";
10
+ import * as Scope from "effect/Scope";
11
+ import * as Stream from "effect/Stream";
12
+ import type { AlreadyProcessingMessage, MailboxFull, PersistenceError } from "./ClusterError.js";
13
+ import { EntityNotManagedByRunner } from "./ClusterError.js";
14
+ import type { CurrentAddress, Entity, HandlersFrom } from "./Entity.js";
15
+ import { EntityId } from "./EntityId.js";
16
+ import { EntityReaper } from "./internal/entityReaper.js";
17
+ import * as Message from "./Message.js";
18
+ import * as MessageStorage from "./MessageStorage.js";
19
+ import { Runners } from "./Runners.js";
20
+ import { ShardId } from "./ShardId.js";
21
+ import { ShardingConfig } from "./ShardingConfig.js";
22
+ import { type ShardingRegistrationEvent } from "./ShardingRegistrationEvent.js";
23
+ import { ShardManagerClient } from "./ShardManager.js";
24
+ import { ShardStorage } from "./ShardStorage.js";
25
+ import * as Snowflake from "./Snowflake.js";
26
+ declare const Sharding_base: Context.TagClass<Sharding, "@effect/cluster/Sharding", {
27
+ /**
28
+ * Returns a stream of events that occur when the runner registers entities or
29
+ * singletons.
30
+ */
31
+ readonly getRegistrationEvents: Stream.Stream<ShardingRegistrationEvent>;
32
+ /**
33
+ * Returns the `ShardId` of the shard to which the entity at the specified
34
+ * `address` is assigned.
35
+ */
36
+ readonly getShardId: (entityId: EntityId) => ShardId;
37
+ /**
38
+ * Returns `true` if sharding is shutting down, `false` otherwise.
39
+ */
40
+ readonly isShutdown: Effect.Effect<boolean>;
41
+ /**
42
+ * Constructs a `RpcClient` which can be used to send messages to the
43
+ * specified `Entity`.
44
+ */
45
+ readonly makeClient: <Rpcs extends Rpc.Any>(entity: Entity<Rpcs>) => Effect.Effect<(entityId: string) => RpcClient.RpcClient<Rpcs, MailboxFull | AlreadyProcessingMessage | PersistenceError>>;
46
+ /**
47
+ * Registers a new entity with the runner.
48
+ */
49
+ readonly registerEntity: <Rpcs extends Rpc.Any, Handlers extends HandlersFrom<Rpcs>, RX>(entity: Entity<Rpcs>, handlers: Effect.Effect<Handlers, never, RX>, options?: {
50
+ readonly maxIdleTime?: DurationInput | undefined;
51
+ readonly concurrency?: number | "unbounded" | undefined;
52
+ readonly mailboxCapacity?: number | "unbounded" | undefined;
53
+ }) => Effect.Effect<void, never, Rpc.Context<Rpcs> | Rpc.Middleware<Rpcs> | Exclude<RX, Scope.Scope | CurrentAddress>>;
54
+ /**
55
+ * Registers a new singleton with the runner.
56
+ */
57
+ readonly registerSingleton: <E, R>(name: string, run: Effect.Effect<void, E, R>) => Effect.Effect<void, never, Exclude<R, Scope.Scope>>;
58
+ /**
59
+ * Sends a message to the specified entity.
60
+ */
61
+ readonly send: (message: Message.Incoming<any>) => Effect.Effect<void, EntityNotManagedByRunner | MailboxFull | AlreadyProcessingMessage>;
62
+ /**
63
+ * Notify sharding that a message has been persisted to storage.
64
+ */
65
+ readonly notify: (message: Message.Incoming<any>) => Effect.Effect<void, EntityNotManagedByRunner>;
66
+ }>;
32
67
  /**
33
68
  * @since 1.0.0
34
69
  * @category models
35
70
  */
36
- export interface Sharding {
37
- readonly [ShardingTypeId]: ShardingTypeId;
38
- readonly register: Effect.Effect<void>;
39
- readonly unregister: Effect.Effect<void>;
40
- readonly messenger: <Msg extends Message.Message.Any>(entityType: RecipentType.EntityType<Msg>) => Messenger<Msg>;
41
- readonly broadcaster: <Msg extends Message.Message.Any>(topicType: RecipentType.TopicType<Msg>) => Broadcaster<Msg>;
42
- readonly isEntityOnLocalShards: (recipientAddress: RecipientAddress.RecipientAddress) => Effect.Effect<boolean>;
43
- readonly isShuttingDown: Effect.Effect<boolean>;
44
- readonly registerScoped: Effect.Effect<void, never, Scope.Scope>;
45
- readonly registerEntity: <Msg extends Message.Message.Any>(entityType: RecipentType.EntityType<Msg>) => <R>(behaviour: RecipientBehaviour.RecipientBehaviour<Msg, R>, options?: RecipientBehaviour.EntityBehaviourOptions) => Effect.Effect<void, never, Exclude<R, RecipientBehaviourContext.RecipientBehaviourContext>>;
46
- readonly registerTopic: <Msg extends Message.Message.Any>(topicType: RecipentType.TopicType<Msg>) => <R>(behaviour: RecipientBehaviour.RecipientBehaviour<Msg, R>, options?: RecipientBehaviour.EntityBehaviourOptions) => Effect.Effect<void, never, Exclude<R, RecipientBehaviourContext.RecipientBehaviourContext>>;
47
- readonly getShardingRegistrationEvents: Stream.Stream<ShardingRegistrationEvent.ShardingRegistrationEvent>;
48
- readonly registerSingleton: <R>(name: string, run: Effect.Effect<void, never, R>) => Effect.Effect<void, never, R>;
49
- readonly assign: (shards: HashSet.HashSet<ShardId.ShardId>) => Effect.Effect<void>;
50
- readonly unassign: (shards: HashSet.HashSet<ShardId.ShardId>) => Effect.Effect<void>;
51
- readonly sendMessageToLocalEntityManagerWithoutRetries: (message: SerializedEnvelope.SerializedEnvelope) => Effect.Effect<MessageState.MessageState<SerializedMessage.SerializedMessage>, ShardingException.ShardingException>;
52
- readonly getPods: Effect.Effect<HashSet.HashSet<PodAddress.PodAddress>>;
53
- readonly getAssignedShardIds: Effect.Effect<HashSet.HashSet<ShardId.ShardId>>;
71
+ export declare class Sharding extends Sharding_base {
54
72
  }
55
73
  /**
56
74
  * @since 1.0.0
57
- * @category context
58
- */
59
- export declare const Tag: import("effect/Context").Tag<Sharding, Sharding>;
75
+ * @category constructors
76
+ */
77
+ export declare const make: Effect.Effect<{
78
+ /**
79
+ * Returns a stream of events that occur when the runner registers entities or
80
+ * singletons.
81
+ */
82
+ readonly getRegistrationEvents: Stream.Stream<ShardingRegistrationEvent>;
83
+ /**
84
+ * Returns the `ShardId` of the shard to which the entity at the specified
85
+ * `address` is assigned.
86
+ */
87
+ readonly getShardId: (entityId: EntityId) => ShardId;
88
+ /**
89
+ * Returns `true` if sharding is shutting down, `false` otherwise.
90
+ */
91
+ readonly isShutdown: Effect.Effect<boolean>;
92
+ /**
93
+ * Constructs a `RpcClient` which can be used to send messages to the
94
+ * specified `Entity`.
95
+ */
96
+ readonly makeClient: <Rpcs extends Rpc.Any>(entity: Entity<Rpcs>) => Effect.Effect<(entityId: string) => RpcClient.RpcClient<Rpcs, MailboxFull | AlreadyProcessingMessage | PersistenceError>>;
97
+ /**
98
+ * Registers a new entity with the runner.
99
+ */
100
+ readonly registerEntity: <Rpcs extends Rpc.Any, Handlers extends HandlersFrom<Rpcs>, RX>(entity: Entity<Rpcs>, handlers: Effect.Effect<Handlers, never, RX>, options?: {
101
+ readonly maxIdleTime?: DurationInput | undefined;
102
+ readonly concurrency?: number | "unbounded" | undefined;
103
+ readonly mailboxCapacity?: number | "unbounded" | undefined;
104
+ }) => Effect.Effect<void, never, Rpc.Context<Rpcs> | Rpc.Middleware<Rpcs> | Exclude<RX, Scope.Scope | CurrentAddress>>;
105
+ /**
106
+ * Registers a new singleton with the runner.
107
+ */
108
+ readonly registerSingleton: <E, R>(name: string, run: Effect.Effect<void, E, R>) => Effect.Effect<void, never, Exclude<R, Scope.Scope>>;
109
+ /**
110
+ * Sends a message to the specified entity.
111
+ */
112
+ readonly send: (message: Message.Incoming<any>) => Effect.Effect<void, EntityNotManagedByRunner | MailboxFull | AlreadyProcessingMessage>;
113
+ /**
114
+ * Notify sharding that a message has been persisted to storage.
115
+ */
116
+ readonly notify: (message: Message.Incoming<any>) => Effect.Effect<void, EntityNotManagedByRunner>;
117
+ }, never, Snowflake.Generator | ShardingConfig | MessageStorage.MessageStorage | Scope.Scope | EntityReaper | Runners | ShardStorage | ShardManagerClient>;
60
118
  /**
61
119
  * @since 1.0.0
62
120
  * @category layers
63
121
  */
64
- export declare const live: import("effect/Layer").Layer<Sharding, never, import("./Serialization.js").Serialization | import("./Pods.js").Pods | import("./ShardingConfig.js").ShardingConfig | import("./ShardManagerClient.js").ShardManagerClient | import("./Storage.js").Storage>;
65
- /**
66
- * Notify the shard manager that shards can now be assigned to this pod.
67
- *
68
- * @since 1.0.0
69
- * @category utils
70
- */
71
- export declare const register: Effect.Effect<void, never, Sharding>;
72
- /**
73
- * Notify the shard manager that shards must be unassigned from this pod.
74
- *
75
- * @since 1.0.0
76
- * @category utils
77
- */
78
- export declare const unregister: Effect.Effect<void, never, Sharding>;
79
- /**
80
- * Same as `register`, but will automatically call `unregister` when the `Scope` is terminated.
81
- *
82
- * @since 1.0.0
83
- * @category utils
84
- */
85
- export declare const registerScoped: Effect.Effect<void, never, Scope.Scope | Sharding>;
86
- /**
87
- * Start a computation that is guaranteed to run only on a single pod.
88
- * Each pod should call `registerSingleton` but only a single pod will actually run it at any given time.
89
- *
90
- * @since 1.0.0
91
- * @category utils
92
- */
93
- export declare const registerSingleton: <R>(name: string, run: Effect.Effect<void, never, R>) => Effect.Effect<void, never, Sharding | R>;
94
- /**
95
- * Register a new entity type, allowing pods to send messages to entities of this type.
96
- *
97
- * @since 1.0.0
98
- * @category utils
99
- */
100
- export declare const registerEntity: <Msg extends Message.Message.Any>(entityType: RecipentType.EntityType<Msg>) => <R>(behavior: RecipientBehaviour.RecipientBehaviour<Msg, R>, options?: RecipientBehaviour.EntityBehaviourOptions | undefined) => Effect.Effect<void, never, Sharding | Exclude<R, RecipientBehaviourContext.RecipientBehaviourContext>>;
101
- /**
102
- * Register a new topic type, allowing pods to broadcast messages to subscribers.
103
- *
104
- * @since 1.0.0
105
- * @category utils
106
- */
107
- export declare const registerTopic: <Msg extends Message.Message.Any>(topicType: RecipentType.TopicType<Msg>) => <R>(behavior: RecipientBehaviour.RecipientBehaviour<Msg, R>, options?: RecipientBehaviour.EntityBehaviourOptions | undefined) => Effect.Effect<void, never, Sharding | Exclude<R, RecipientBehaviourContext.RecipientBehaviourContext>>;
108
- /**
109
- * Get an object that allows sending messages to a given entity type.
110
- * You can provide a custom send timeout to override the one globally defined.
111
- *
112
- * @since 1.0.0
113
- * @category utils
114
- */
115
- export declare const messenger: <Msg extends Message.Message.Any>(entityType: RecipentType.EntityType<Msg>) => Effect.Effect<Messenger<Msg>, never, Sharding>;
116
- /**
117
- * Get an object that allows broadcasting messages to a given topic type.
118
- * You can provide a custom send timeout to override the one globally defined.
119
- *
120
- * @since 1.0.0
121
- * @category utils
122
- */
123
- export declare const broadcaster: <Msg extends Message.Message.Any>(topicType: RecipentType.TopicType<Msg>) => Effect.Effect<Broadcaster<Msg>, never, Sharding>;
124
- /**
125
- * Get the list of pods currently registered to the Shard Manager
126
- *
127
- * @since 1.0.0
128
- * @category utils
129
- */
130
- export declare const getPods: Effect.Effect<HashSet.HashSet<PodAddress.PodAddress>, never, Sharding>;
131
- /**
132
- * Sends a raw message to the local entity manager without performing reties.
133
- * Those are up to the caller.
134
- *
135
- * @since 1.0.0
136
- * @category utils
137
- */
138
- export declare const sendMessageToLocalEntityManagerWithoutRetries: (message: SerializedEnvelope.SerializedEnvelope) => Effect.Effect<MessageState.MessageState<SerializedMessage.SerializedMessage>, ShardingException.ShardingException, Sharding>;
139
- /**
140
- * Gets the list of shardIds assigned to the current Pod
141
- *
142
- * @since 1.0.0
143
- * @category utils
144
- */
145
- export declare const getAssignedShardIds: Effect.Effect<HashSet.HashSet<ShardId.ShardId>, never, Sharding>;
122
+ export declare const layer: Layer.Layer<Sharding, never, ShardingConfig | Runners | ShardManagerClient | MessageStorage.MessageStorage | ShardStorage>;
123
+ export {};
146
124
  //# sourceMappingURL=Sharding.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Sharding.d.ts","sourceRoot":"","sources":["../../src/Sharding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Sharding.d.ts","sourceRoot":"","sources":["../../src/Sharding.ts"],"names":[],"mappings":"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"}