@celerispay/hazelcast-client 3.12.5

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 (746) hide show
  1. package/.nvmrc +1 -0
  2. package/CHANGELOG.md +116 -0
  3. package/CONFIG.md +503 -0
  4. package/FAILOVER_FIXES.md +284 -0
  5. package/LICENSE +202 -0
  6. package/QUICK_START.md +143 -0
  7. package/README.md +178 -0
  8. package/RELEASE_SUMMARY.md +180 -0
  9. package/config-schema.json +343 -0
  10. package/hazelcast-client-default.json +56 -0
  11. package/hazelcast-client-full.json +137 -0
  12. package/lib/Address.d.ts +17 -0
  13. package/lib/Address.js +65 -0
  14. package/lib/BitsUtil.d.ts +69 -0
  15. package/lib/BitsUtil.js +202 -0
  16. package/lib/BuildInfo.d.ts +9 -0
  17. package/lib/BuildInfo.js +53 -0
  18. package/lib/ClientInfo.d.ts +15 -0
  19. package/lib/ClientInfo.js +27 -0
  20. package/lib/ClientMessage.d.ts +52 -0
  21. package/lib/ClientMessage.js +217 -0
  22. package/lib/ClusterDataFactory.d.ts +4 -0
  23. package/lib/ClusterDataFactory.js +31 -0
  24. package/lib/ClusterDataFactoryHelper.d.ts +5 -0
  25. package/lib/ClusterDataFactoryHelper.js +26 -0
  26. package/lib/DataStoreHashMap.d.ts +20 -0
  27. package/lib/DataStoreHashMap.js +112 -0
  28. package/lib/DistributedObject.d.ts +22 -0
  29. package/lib/DistributedObject.js +17 -0
  30. package/lib/HazelcastClient.d.ts +201 -0
  31. package/lib/HazelcastClient.js +370 -0
  32. package/lib/HazelcastError.d.ts +114 -0
  33. package/lib/HazelcastError.js +389 -0
  34. package/lib/HeartbeatService.d.ts +30 -0
  35. package/lib/HeartbeatService.js +108 -0
  36. package/lib/LifecycleService.d.ts +32 -0
  37. package/lib/LifecycleService.js +105 -0
  38. package/lib/ListenerMessageCodec.d.ts +6 -0
  39. package/lib/ListenerMessageCodec.js +17 -0
  40. package/lib/ListenerService.d.ts +35 -0
  41. package/lib/ListenerService.js +233 -0
  42. package/lib/LockReferenceIdGenerator.d.ts +6 -0
  43. package/lib/LockReferenceIdGenerator.js +29 -0
  44. package/lib/PartitionService.d.ts +38 -0
  45. package/lib/PartitionService.js +118 -0
  46. package/lib/Util.d.ts +47 -0
  47. package/lib/Util.js +351 -0
  48. package/lib/aggregation/Aggregator.d.ts +74 -0
  49. package/lib/aggregation/Aggregator.js +277 -0
  50. package/lib/aggregation/AggregatorFactory.d.ts +26 -0
  51. package/lib/aggregation/AggregatorFactory.js +66 -0
  52. package/lib/aggregation/Aggregators.d.ts +96 -0
  53. package/lib/aggregation/Aggregators.js +149 -0
  54. package/lib/codec/AddressCodec.d.ts +6 -0
  55. package/lib/codec/AddressCodec.js +33 -0
  56. package/lib/codec/AtomicLongAddAndGetCodec.d.ts +7 -0
  57. package/lib/codec/AtomicLongAddAndGetCodec.js +56 -0
  58. package/lib/codec/AtomicLongCompareAndSetCodec.d.ts +7 -0
  59. package/lib/codec/AtomicLongCompareAndSetCodec.js +58 -0
  60. package/lib/codec/AtomicLongDecrementAndGetCodec.d.ts +7 -0
  61. package/lib/codec/AtomicLongDecrementAndGetCodec.js +54 -0
  62. package/lib/codec/AtomicLongGetAndAddCodec.d.ts +7 -0
  63. package/lib/codec/AtomicLongGetAndAddCodec.js +56 -0
  64. package/lib/codec/AtomicLongGetAndIncrementCodec.d.ts +7 -0
  65. package/lib/codec/AtomicLongGetAndIncrementCodec.js +54 -0
  66. package/lib/codec/AtomicLongGetAndSetCodec.d.ts +7 -0
  67. package/lib/codec/AtomicLongGetAndSetCodec.js +56 -0
  68. package/lib/codec/AtomicLongGetCodec.d.ts +7 -0
  69. package/lib/codec/AtomicLongGetCodec.js +54 -0
  70. package/lib/codec/AtomicLongIncrementAndGetCodec.d.ts +7 -0
  71. package/lib/codec/AtomicLongIncrementAndGetCodec.js +54 -0
  72. package/lib/codec/AtomicLongMessageType.d.ts +15 -0
  73. package/lib/codec/AtomicLongMessageType.js +37 -0
  74. package/lib/codec/AtomicLongSetCodec.d.ts +5 -0
  75. package/lib/codec/AtomicLongSetCodec.js +47 -0
  76. package/lib/codec/ClientAddDistributedObjectListenerCodec.d.ts +8 -0
  77. package/lib/codec/ClientAddDistributedObjectListenerCodec.js +74 -0
  78. package/lib/codec/ClientAddMembershipListenerCodec.d.ts +8 -0
  79. package/lib/codec/ClientAddMembershipListenerCodec.js +107 -0
  80. package/lib/codec/ClientAuthenticationCodec.d.ts +7 -0
  81. package/lib/codec/ClientAuthenticationCodec.js +114 -0
  82. package/lib/codec/ClientAuthenticationCustomCodec.d.ts +7 -0
  83. package/lib/codec/ClientAuthenticationCustomCodec.js +112 -0
  84. package/lib/codec/ClientCreateProxyCodec.d.ts +6 -0
  85. package/lib/codec/ClientCreateProxyCodec.js +50 -0
  86. package/lib/codec/ClientDestroyProxyCodec.d.ts +5 -0
  87. package/lib/codec/ClientDestroyProxyCodec.js +47 -0
  88. package/lib/codec/ClientGetDistributedObjectsCodec.d.ts +7 -0
  89. package/lib/codec/ClientGetDistributedObjectsCodec.js +59 -0
  90. package/lib/codec/ClientMessageType.d.ts +18 -0
  91. package/lib/codec/ClientMessageType.js +40 -0
  92. package/lib/codec/ClientPingCodec.d.ts +5 -0
  93. package/lib/codec/ClientPingCodec.js +42 -0
  94. package/lib/codec/ClientRemoveDistributedObjectListenerCodec.d.ts +7 -0
  95. package/lib/codec/ClientRemoveDistributedObjectListenerCodec.js +54 -0
  96. package/lib/codec/ClientStatisticsCodec.d.ts +5 -0
  97. package/lib/codec/ClientStatisticsCodec.js +42 -0
  98. package/lib/codec/DistributedObjectInfoCodec.d.ts +5 -0
  99. package/lib/codec/DistributedObjectInfoCodec.js +27 -0
  100. package/lib/codec/EntryViewCodec.d.ts +7 -0
  101. package/lib/codec/EntryViewCodec.js +56 -0
  102. package/lib/codec/FlakeIdGeneratorMessageType.d.ts +3 -0
  103. package/lib/codec/FlakeIdGeneratorMessageType.js +25 -0
  104. package/lib/codec/FlakeIdGeneratorNewIdBatchCodec.d.ts +7 -0
  105. package/lib/codec/FlakeIdGeneratorNewIdBatchCodec.js +60 -0
  106. package/lib/codec/GetPartitionsCodec.d.ts +9 -0
  107. package/lib/codec/GetPartitionsCodec.js +45 -0
  108. package/lib/codec/ListAddAllCodec.d.ts +7 -0
  109. package/lib/codec/ListAddAllCodec.js +62 -0
  110. package/lib/codec/ListAddAllWithIndexCodec.d.ts +7 -0
  111. package/lib/codec/ListAddAllWithIndexCodec.js +64 -0
  112. package/lib/codec/ListAddCodec.d.ts +7 -0
  113. package/lib/codec/ListAddCodec.js +56 -0
  114. package/lib/codec/ListAddListenerCodec.d.ts +8 -0
  115. package/lib/codec/ListAddListenerCodec.js +80 -0
  116. package/lib/codec/ListAddWithIndexCodec.d.ts +6 -0
  117. package/lib/codec/ListAddWithIndexCodec.js +49 -0
  118. package/lib/codec/ListClearCodec.d.ts +5 -0
  119. package/lib/codec/ListClearCodec.js +45 -0
  120. package/lib/codec/ListCompareAndRemoveAllCodec.d.ts +7 -0
  121. package/lib/codec/ListCompareAndRemoveAllCodec.js +62 -0
  122. package/lib/codec/ListCompareAndRetainAllCodec.d.ts +7 -0
  123. package/lib/codec/ListCompareAndRetainAllCodec.js +62 -0
  124. package/lib/codec/ListContainsAllCodec.d.ts +7 -0
  125. package/lib/codec/ListContainsAllCodec.js +62 -0
  126. package/lib/codec/ListContainsCodec.d.ts +7 -0
  127. package/lib/codec/ListContainsCodec.js +56 -0
  128. package/lib/codec/ListGetAllCodec.d.ts +7 -0
  129. package/lib/codec/ListGetAllCodec.js +61 -0
  130. package/lib/codec/ListGetCodec.d.ts +7 -0
  131. package/lib/codec/ListGetCodec.js +58 -0
  132. package/lib/codec/ListIndexOfCodec.d.ts +7 -0
  133. package/lib/codec/ListIndexOfCodec.js +56 -0
  134. package/lib/codec/ListIsEmptyCodec.d.ts +7 -0
  135. package/lib/codec/ListIsEmptyCodec.js +54 -0
  136. package/lib/codec/ListLastIndexOfCodec.d.ts +7 -0
  137. package/lib/codec/ListLastIndexOfCodec.js +56 -0
  138. package/lib/codec/ListMessageType.d.ts +25 -0
  139. package/lib/codec/ListMessageType.js +47 -0
  140. package/lib/codec/ListRemoveCodec.d.ts +7 -0
  141. package/lib/codec/ListRemoveCodec.js +56 -0
  142. package/lib/codec/ListRemoveListenerCodec.d.ts +7 -0
  143. package/lib/codec/ListRemoveListenerCodec.js +56 -0
  144. package/lib/codec/ListRemoveWithIndexCodec.d.ts +7 -0
  145. package/lib/codec/ListRemoveWithIndexCodec.js +58 -0
  146. package/lib/codec/ListSetCodec.d.ts +7 -0
  147. package/lib/codec/ListSetCodec.js +60 -0
  148. package/lib/codec/ListSizeCodec.d.ts +7 -0
  149. package/lib/codec/ListSizeCodec.js +54 -0
  150. package/lib/codec/ListSubCodec.d.ts +7 -0
  151. package/lib/codec/ListSubCodec.js +65 -0
  152. package/lib/codec/LockForceUnlockCodec.d.ts +5 -0
  153. package/lib/codec/LockForceUnlockCodec.js +47 -0
  154. package/lib/codec/LockGetLockCountCodec.d.ts +7 -0
  155. package/lib/codec/LockGetLockCountCodec.js +54 -0
  156. package/lib/codec/LockGetRemainingLeaseTimeCodec.d.ts +7 -0
  157. package/lib/codec/LockGetRemainingLeaseTimeCodec.js +54 -0
  158. package/lib/codec/LockIsLockedByCurrentThreadCodec.d.ts +7 -0
  159. package/lib/codec/LockIsLockedByCurrentThreadCodec.js +56 -0
  160. package/lib/codec/LockIsLockedCodec.d.ts +7 -0
  161. package/lib/codec/LockIsLockedCodec.js +54 -0
  162. package/lib/codec/LockLockCodec.d.ts +5 -0
  163. package/lib/codec/LockLockCodec.js +51 -0
  164. package/lib/codec/LockMessageType.d.ts +10 -0
  165. package/lib/codec/LockMessageType.js +32 -0
  166. package/lib/codec/LockTryLockCodec.d.ts +7 -0
  167. package/lib/codec/LockTryLockCodec.js +62 -0
  168. package/lib/codec/LockUnlockCodec.d.ts +5 -0
  169. package/lib/codec/LockUnlockCodec.js +49 -0
  170. package/lib/codec/MapAddEntryListenerCodec.d.ts +8 -0
  171. package/lib/codec/MapAddEntryListenerCodec.js +104 -0
  172. package/lib/codec/MapAddEntryListenerToKeyCodec.d.ts +8 -0
  173. package/lib/codec/MapAddEntryListenerToKeyCodec.js +106 -0
  174. package/lib/codec/MapAddEntryListenerToKeyWithPredicateCodec.d.ts +8 -0
  175. package/lib/codec/MapAddEntryListenerToKeyWithPredicateCodec.js +108 -0
  176. package/lib/codec/MapAddEntryListenerWithPredicateCodec.d.ts +8 -0
  177. package/lib/codec/MapAddEntryListenerWithPredicateCodec.js +106 -0
  178. package/lib/codec/MapAddIndexCodec.d.ts +5 -0
  179. package/lib/codec/MapAddIndexCodec.js +49 -0
  180. package/lib/codec/MapAddNearCacheEntryListenerCodec.d.ts +8 -0
  181. package/lib/codec/MapAddNearCacheEntryListenerCodec.js +135 -0
  182. package/lib/codec/MapAddNearCacheInvalidationListenerCodec.d.ts +8 -0
  183. package/lib/codec/MapAddNearCacheInvalidationListenerCodec.js +138 -0
  184. package/lib/codec/MapAggregateCodec.d.ts +7 -0
  185. package/lib/codec/MapAggregateCodec.js +61 -0
  186. package/lib/codec/MapAggregateWithPredicateCodec.d.ts +7 -0
  187. package/lib/codec/MapAggregateWithPredicateCodec.js +63 -0
  188. package/lib/codec/MapClearCodec.d.ts +5 -0
  189. package/lib/codec/MapClearCodec.js +45 -0
  190. package/lib/codec/MapContainsKeyCodec.d.ts +7 -0
  191. package/lib/codec/MapContainsKeyCodec.js +58 -0
  192. package/lib/codec/MapContainsValueCodec.d.ts +7 -0
  193. package/lib/codec/MapContainsValueCodec.js +56 -0
  194. package/lib/codec/MapDeleteCodec.d.ts +6 -0
  195. package/lib/codec/MapDeleteCodec.js +49 -0
  196. package/lib/codec/MapEntriesWithPredicateCodec.d.ts +7 -0
  197. package/lib/codec/MapEntriesWithPredicateCodec.js +67 -0
  198. package/lib/codec/MapEntrySetCodec.d.ts +7 -0
  199. package/lib/codec/MapEntrySetCodec.js +65 -0
  200. package/lib/codec/MapEvictAllCodec.d.ts +5 -0
  201. package/lib/codec/MapEvictAllCodec.js +45 -0
  202. package/lib/codec/MapEvictCodec.d.ts +7 -0
  203. package/lib/codec/MapEvictCodec.js +58 -0
  204. package/lib/codec/MapExecuteOnAllKeysCodec.d.ts +7 -0
  205. package/lib/codec/MapExecuteOnAllKeysCodec.js +67 -0
  206. package/lib/codec/MapExecuteOnKeyCodec.d.ts +7 -0
  207. package/lib/codec/MapExecuteOnKeyCodec.js +62 -0
  208. package/lib/codec/MapExecuteOnKeysCodec.d.ts +7 -0
  209. package/lib/codec/MapExecuteOnKeysCodec.js +75 -0
  210. package/lib/codec/MapExecuteWithPredicateCodec.d.ts +7 -0
  211. package/lib/codec/MapExecuteWithPredicateCodec.js +69 -0
  212. package/lib/codec/MapFetchNearCacheInvalidationMetadataCodec.d.ts +8 -0
  213. package/lib/codec/MapFetchNearCacheInvalidationMetadataCodec.js +101 -0
  214. package/lib/codec/MapFlushCodec.d.ts +5 -0
  215. package/lib/codec/MapFlushCodec.js +45 -0
  216. package/lib/codec/MapForceUnlockCodec.d.ts +6 -0
  217. package/lib/codec/MapForceUnlockCodec.js +49 -0
  218. package/lib/codec/MapGetAllCodec.d.ts +7 -0
  219. package/lib/codec/MapGetAllCodec.js +73 -0
  220. package/lib/codec/MapGetCodec.d.ts +7 -0
  221. package/lib/codec/MapGetCodec.js +60 -0
  222. package/lib/codec/MapGetEntryViewCodec.d.ts +7 -0
  223. package/lib/codec/MapGetEntryViewCodec.js +61 -0
  224. package/lib/codec/MapIsEmptyCodec.d.ts +7 -0
  225. package/lib/codec/MapIsEmptyCodec.js +54 -0
  226. package/lib/codec/MapIsLockedCodec.d.ts +7 -0
  227. package/lib/codec/MapIsLockedCodec.js +56 -0
  228. package/lib/codec/MapKeySetCodec.d.ts +7 -0
  229. package/lib/codec/MapKeySetCodec.js +61 -0
  230. package/lib/codec/MapKeySetWithPagingPredicateCodec.d.ts +7 -0
  231. package/lib/codec/MapKeySetWithPagingPredicateCodec.js +63 -0
  232. package/lib/codec/MapKeySetWithPredicateCodec.d.ts +7 -0
  233. package/lib/codec/MapKeySetWithPredicateCodec.js +63 -0
  234. package/lib/codec/MapLoadAllCodec.d.ts +5 -0
  235. package/lib/codec/MapLoadAllCodec.js +47 -0
  236. package/lib/codec/MapLoadGivenKeysCodec.d.ts +5 -0
  237. package/lib/codec/MapLoadGivenKeysCodec.js +55 -0
  238. package/lib/codec/MapLockCodec.d.ts +6 -0
  239. package/lib/codec/MapLockCodec.js +53 -0
  240. package/lib/codec/MapMessageType.d.ts +71 -0
  241. package/lib/codec/MapMessageType.js +93 -0
  242. package/lib/codec/MapPutAllCodec.d.ts +5 -0
  243. package/lib/codec/MapPutAllCodec.js +59 -0
  244. package/lib/codec/MapPutCodec.d.ts +7 -0
  245. package/lib/codec/MapPutCodec.js +64 -0
  246. package/lib/codec/MapPutIfAbsentCodec.d.ts +7 -0
  247. package/lib/codec/MapPutIfAbsentCodec.js +64 -0
  248. package/lib/codec/MapPutTransientCodec.d.ts +6 -0
  249. package/lib/codec/MapPutTransientCodec.js +53 -0
  250. package/lib/codec/MapRemoveCodec.d.ts +7 -0
  251. package/lib/codec/MapRemoveCodec.js +60 -0
  252. package/lib/codec/MapRemoveEntryListenerCodec.d.ts +7 -0
  253. package/lib/codec/MapRemoveEntryListenerCodec.js +56 -0
  254. package/lib/codec/MapRemoveIfSameCodec.d.ts +7 -0
  255. package/lib/codec/MapRemoveIfSameCodec.js +60 -0
  256. package/lib/codec/MapReplaceCodec.d.ts +7 -0
  257. package/lib/codec/MapReplaceCodec.js +62 -0
  258. package/lib/codec/MapReplaceIfSameCodec.d.ts +7 -0
  259. package/lib/codec/MapReplaceIfSameCodec.js +62 -0
  260. package/lib/codec/MapSetCodec.d.ts +6 -0
  261. package/lib/codec/MapSetCodec.js +53 -0
  262. package/lib/codec/MapSizeCodec.d.ts +7 -0
  263. package/lib/codec/MapSizeCodec.js +54 -0
  264. package/lib/codec/MapTryLockCodec.d.ts +7 -0
  265. package/lib/codec/MapTryLockCodec.js +64 -0
  266. package/lib/codec/MapTryPutCodec.d.ts +7 -0
  267. package/lib/codec/MapTryPutCodec.js +62 -0
  268. package/lib/codec/MapTryRemoveCodec.d.ts +7 -0
  269. package/lib/codec/MapTryRemoveCodec.js +60 -0
  270. package/lib/codec/MapUnlockCodec.d.ts +6 -0
  271. package/lib/codec/MapUnlockCodec.js +51 -0
  272. package/lib/codec/MapValuesCodec.d.ts +7 -0
  273. package/lib/codec/MapValuesCodec.js +61 -0
  274. package/lib/codec/MapValuesWithPagingPredicateCodec.d.ts +7 -0
  275. package/lib/codec/MapValuesWithPagingPredicateCodec.js +67 -0
  276. package/lib/codec/MapValuesWithPredicateCodec.d.ts +7 -0
  277. package/lib/codec/MapValuesWithPredicateCodec.js +63 -0
  278. package/lib/codec/MemberCodec.d.ts +6 -0
  279. package/lib/codec/MemberCodec.js +49 -0
  280. package/lib/codec/MultiMapAddEntryListenerCodec.d.ts +8 -0
  281. package/lib/codec/MultiMapAddEntryListenerCodec.js +102 -0
  282. package/lib/codec/MultiMapAddEntryListenerToKeyCodec.d.ts +8 -0
  283. package/lib/codec/MultiMapAddEntryListenerToKeyCodec.js +104 -0
  284. package/lib/codec/MultiMapClearCodec.d.ts +5 -0
  285. package/lib/codec/MultiMapClearCodec.js +45 -0
  286. package/lib/codec/MultiMapContainsEntryCodec.d.ts +7 -0
  287. package/lib/codec/MultiMapContainsEntryCodec.js +60 -0
  288. package/lib/codec/MultiMapContainsKeyCodec.d.ts +7 -0
  289. package/lib/codec/MultiMapContainsKeyCodec.js +58 -0
  290. package/lib/codec/MultiMapContainsValueCodec.d.ts +7 -0
  291. package/lib/codec/MultiMapContainsValueCodec.js +56 -0
  292. package/lib/codec/MultiMapEntrySetCodec.d.ts +7 -0
  293. package/lib/codec/MultiMapEntrySetCodec.js +65 -0
  294. package/lib/codec/MultiMapForceUnlockCodec.d.ts +6 -0
  295. package/lib/codec/MultiMapForceUnlockCodec.js +49 -0
  296. package/lib/codec/MultiMapGetCodec.d.ts +7 -0
  297. package/lib/codec/MultiMapGetCodec.js +65 -0
  298. package/lib/codec/MultiMapIsLockedCodec.d.ts +7 -0
  299. package/lib/codec/MultiMapIsLockedCodec.js +56 -0
  300. package/lib/codec/MultiMapKeySetCodec.d.ts +7 -0
  301. package/lib/codec/MultiMapKeySetCodec.js +61 -0
  302. package/lib/codec/MultiMapLockCodec.d.ts +6 -0
  303. package/lib/codec/MultiMapLockCodec.js +53 -0
  304. package/lib/codec/MultiMapMessageType.d.ts +23 -0
  305. package/lib/codec/MultiMapMessageType.js +45 -0
  306. package/lib/codec/MultiMapPutCodec.d.ts +7 -0
  307. package/lib/codec/MultiMapPutCodec.js +60 -0
  308. package/lib/codec/MultiMapRemoveCodec.d.ts +7 -0
  309. package/lib/codec/MultiMapRemoveCodec.js +65 -0
  310. package/lib/codec/MultiMapRemoveEntryCodec.d.ts +7 -0
  311. package/lib/codec/MultiMapRemoveEntryCodec.js +60 -0
  312. package/lib/codec/MultiMapRemoveEntryListenerCodec.d.ts +7 -0
  313. package/lib/codec/MultiMapRemoveEntryListenerCodec.js +56 -0
  314. package/lib/codec/MultiMapSizeCodec.d.ts +7 -0
  315. package/lib/codec/MultiMapSizeCodec.js +54 -0
  316. package/lib/codec/MultiMapTryLockCodec.d.ts +7 -0
  317. package/lib/codec/MultiMapTryLockCodec.js +64 -0
  318. package/lib/codec/MultiMapUnlockCodec.d.ts +6 -0
  319. package/lib/codec/MultiMapUnlockCodec.js +51 -0
  320. package/lib/codec/MultiMapValueCountCodec.d.ts +7 -0
  321. package/lib/codec/MultiMapValueCountCodec.js +58 -0
  322. package/lib/codec/MultiMapValuesCodec.d.ts +7 -0
  323. package/lib/codec/MultiMapValuesCodec.js +61 -0
  324. package/lib/codec/PNCounterAddCodec.d.ts +8 -0
  325. package/lib/codec/PNCounterAddCodec.js +90 -0
  326. package/lib/codec/PNCounterGetCodec.d.ts +8 -0
  327. package/lib/codec/PNCounterGetCodec.js +86 -0
  328. package/lib/codec/PNCounterGetConfiguredReplicaCountCodec.d.ts +7 -0
  329. package/lib/codec/PNCounterGetConfiguredReplicaCountCodec.js +54 -0
  330. package/lib/codec/PNCounterMessageType.d.ts +5 -0
  331. package/lib/codec/PNCounterMessageType.js +27 -0
  332. package/lib/codec/QueueAddAllCodec.d.ts +7 -0
  333. package/lib/codec/QueueAddAllCodec.js +62 -0
  334. package/lib/codec/QueueAddListenerCodec.d.ts +8 -0
  335. package/lib/codec/QueueAddListenerCodec.js +80 -0
  336. package/lib/codec/QueueClearCodec.d.ts +5 -0
  337. package/lib/codec/QueueClearCodec.js +45 -0
  338. package/lib/codec/QueueCompareAndRemoveAllCodec.d.ts +7 -0
  339. package/lib/codec/QueueCompareAndRemoveAllCodec.js +62 -0
  340. package/lib/codec/QueueCompareAndRetainAllCodec.d.ts +7 -0
  341. package/lib/codec/QueueCompareAndRetainAllCodec.js +62 -0
  342. package/lib/codec/QueueContainsAllCodec.d.ts +7 -0
  343. package/lib/codec/QueueContainsAllCodec.js +62 -0
  344. package/lib/codec/QueueContainsCodec.d.ts +7 -0
  345. package/lib/codec/QueueContainsCodec.js +56 -0
  346. package/lib/codec/QueueDrainToCodec.d.ts +7 -0
  347. package/lib/codec/QueueDrainToCodec.js +61 -0
  348. package/lib/codec/QueueDrainToMaxSizeCodec.d.ts +7 -0
  349. package/lib/codec/QueueDrainToMaxSizeCodec.js +63 -0
  350. package/lib/codec/QueueIsEmptyCodec.d.ts +7 -0
  351. package/lib/codec/QueueIsEmptyCodec.js +54 -0
  352. package/lib/codec/QueueIteratorCodec.d.ts +7 -0
  353. package/lib/codec/QueueIteratorCodec.js +61 -0
  354. package/lib/codec/QueueMessageType.d.ts +22 -0
  355. package/lib/codec/QueueMessageType.js +44 -0
  356. package/lib/codec/QueueOfferCodec.d.ts +7 -0
  357. package/lib/codec/QueueOfferCodec.js +58 -0
  358. package/lib/codec/QueuePeekCodec.d.ts +7 -0
  359. package/lib/codec/QueuePeekCodec.js +56 -0
  360. package/lib/codec/QueuePollCodec.d.ts +7 -0
  361. package/lib/codec/QueuePollCodec.js +58 -0
  362. package/lib/codec/QueuePutCodec.d.ts +6 -0
  363. package/lib/codec/QueuePutCodec.js +47 -0
  364. package/lib/codec/QueueRemainingCapacityCodec.d.ts +7 -0
  365. package/lib/codec/QueueRemainingCapacityCodec.js +54 -0
  366. package/lib/codec/QueueRemoveCodec.d.ts +7 -0
  367. package/lib/codec/QueueRemoveCodec.js +56 -0
  368. package/lib/codec/QueueRemoveListenerCodec.d.ts +7 -0
  369. package/lib/codec/QueueRemoveListenerCodec.js +56 -0
  370. package/lib/codec/QueueSizeCodec.d.ts +7 -0
  371. package/lib/codec/QueueSizeCodec.js +54 -0
  372. package/lib/codec/QueueTakeCodec.d.ts +7 -0
  373. package/lib/codec/QueueTakeCodec.js +56 -0
  374. package/lib/codec/ReplicatedMapAddEntryListenerCodec.d.ts +8 -0
  375. package/lib/codec/ReplicatedMapAddEntryListenerCodec.js +100 -0
  376. package/lib/codec/ReplicatedMapAddEntryListenerToKeyCodec.d.ts +8 -0
  377. package/lib/codec/ReplicatedMapAddEntryListenerToKeyCodec.js +102 -0
  378. package/lib/codec/ReplicatedMapAddEntryListenerToKeyWithPredicateCodec.d.ts +8 -0
  379. package/lib/codec/ReplicatedMapAddEntryListenerToKeyWithPredicateCodec.js +104 -0
  380. package/lib/codec/ReplicatedMapAddEntryListenerWithPredicateCodec.d.ts +8 -0
  381. package/lib/codec/ReplicatedMapAddEntryListenerWithPredicateCodec.js +102 -0
  382. package/lib/codec/ReplicatedMapClearCodec.d.ts +5 -0
  383. package/lib/codec/ReplicatedMapClearCodec.js +45 -0
  384. package/lib/codec/ReplicatedMapContainsKeyCodec.d.ts +7 -0
  385. package/lib/codec/ReplicatedMapContainsKeyCodec.js +56 -0
  386. package/lib/codec/ReplicatedMapContainsValueCodec.d.ts +7 -0
  387. package/lib/codec/ReplicatedMapContainsValueCodec.js +56 -0
  388. package/lib/codec/ReplicatedMapEntrySetCodec.d.ts +7 -0
  389. package/lib/codec/ReplicatedMapEntrySetCodec.js +65 -0
  390. package/lib/codec/ReplicatedMapGetCodec.d.ts +7 -0
  391. package/lib/codec/ReplicatedMapGetCodec.js +58 -0
  392. package/lib/codec/ReplicatedMapIsEmptyCodec.d.ts +7 -0
  393. package/lib/codec/ReplicatedMapIsEmptyCodec.js +54 -0
  394. package/lib/codec/ReplicatedMapKeySetCodec.d.ts +7 -0
  395. package/lib/codec/ReplicatedMapKeySetCodec.js +61 -0
  396. package/lib/codec/ReplicatedMapMessageType.d.ts +20 -0
  397. package/lib/codec/ReplicatedMapMessageType.js +42 -0
  398. package/lib/codec/ReplicatedMapPutAllCodec.d.ts +5 -0
  399. package/lib/codec/ReplicatedMapPutAllCodec.js +59 -0
  400. package/lib/codec/ReplicatedMapPutCodec.d.ts +7 -0
  401. package/lib/codec/ReplicatedMapPutCodec.js +62 -0
  402. package/lib/codec/ReplicatedMapRemoveCodec.d.ts +7 -0
  403. package/lib/codec/ReplicatedMapRemoveCodec.js +58 -0
  404. package/lib/codec/ReplicatedMapRemoveEntryListenerCodec.d.ts +7 -0
  405. package/lib/codec/ReplicatedMapRemoveEntryListenerCodec.js +56 -0
  406. package/lib/codec/ReplicatedMapSizeCodec.d.ts +7 -0
  407. package/lib/codec/ReplicatedMapSizeCodec.js +54 -0
  408. package/lib/codec/ReplicatedMapValuesCodec.d.ts +7 -0
  409. package/lib/codec/ReplicatedMapValuesCodec.js +61 -0
  410. package/lib/codec/RingbufferAddAllCodec.d.ts +7 -0
  411. package/lib/codec/RingbufferAddAllCodec.js +64 -0
  412. package/lib/codec/RingbufferAddCodec.d.ts +7 -0
  413. package/lib/codec/RingbufferAddCodec.js +58 -0
  414. package/lib/codec/RingbufferCapacityCodec.d.ts +7 -0
  415. package/lib/codec/RingbufferCapacityCodec.js +54 -0
  416. package/lib/codec/RingbufferHeadSequenceCodec.d.ts +7 -0
  417. package/lib/codec/RingbufferHeadSequenceCodec.js +54 -0
  418. package/lib/codec/RingbufferMessageType.d.ts +11 -0
  419. package/lib/codec/RingbufferMessageType.js +33 -0
  420. package/lib/codec/RingbufferReadManyCodec.d.ts +7 -0
  421. package/lib/codec/RingbufferReadManyCodec.js +92 -0
  422. package/lib/codec/RingbufferReadOneCodec.d.ts +7 -0
  423. package/lib/codec/RingbufferReadOneCodec.js +58 -0
  424. package/lib/codec/RingbufferRemainingCapacityCodec.d.ts +7 -0
  425. package/lib/codec/RingbufferRemainingCapacityCodec.js +54 -0
  426. package/lib/codec/RingbufferSizeCodec.d.ts +7 -0
  427. package/lib/codec/RingbufferSizeCodec.js +54 -0
  428. package/lib/codec/RingbufferTailSequenceCodec.d.ts +7 -0
  429. package/lib/codec/RingbufferTailSequenceCodec.js +54 -0
  430. package/lib/codec/SemaphoreAcquireCodec.d.ts +5 -0
  431. package/lib/codec/SemaphoreAcquireCodec.js +47 -0
  432. package/lib/codec/SemaphoreAvailablePermitsCodec.d.ts +7 -0
  433. package/lib/codec/SemaphoreAvailablePermitsCodec.js +54 -0
  434. package/lib/codec/SemaphoreDrainPermitsCodec.d.ts +7 -0
  435. package/lib/codec/SemaphoreDrainPermitsCodec.js +54 -0
  436. package/lib/codec/SemaphoreInitCodec.d.ts +7 -0
  437. package/lib/codec/SemaphoreInitCodec.js +56 -0
  438. package/lib/codec/SemaphoreMessageType.d.ts +9 -0
  439. package/lib/codec/SemaphoreMessageType.js +31 -0
  440. package/lib/codec/SemaphoreReducePermitsCodec.d.ts +5 -0
  441. package/lib/codec/SemaphoreReducePermitsCodec.js +47 -0
  442. package/lib/codec/SemaphoreReleaseCodec.d.ts +5 -0
  443. package/lib/codec/SemaphoreReleaseCodec.js +47 -0
  444. package/lib/codec/SemaphoreTryAcquireCodec.d.ts +7 -0
  445. package/lib/codec/SemaphoreTryAcquireCodec.js +58 -0
  446. package/lib/codec/SetAddAllCodec.d.ts +7 -0
  447. package/lib/codec/SetAddAllCodec.js +62 -0
  448. package/lib/codec/SetAddCodec.d.ts +7 -0
  449. package/lib/codec/SetAddCodec.js +56 -0
  450. package/lib/codec/SetAddListenerCodec.d.ts +8 -0
  451. package/lib/codec/SetAddListenerCodec.js +80 -0
  452. package/lib/codec/SetClearCodec.d.ts +5 -0
  453. package/lib/codec/SetClearCodec.js +45 -0
  454. package/lib/codec/SetCompareAndRemoveAllCodec.d.ts +7 -0
  455. package/lib/codec/SetCompareAndRemoveAllCodec.js +62 -0
  456. package/lib/codec/SetCompareAndRetainAllCodec.d.ts +7 -0
  457. package/lib/codec/SetCompareAndRetainAllCodec.js +62 -0
  458. package/lib/codec/SetContainsAllCodec.d.ts +7 -0
  459. package/lib/codec/SetContainsAllCodec.js +62 -0
  460. package/lib/codec/SetContainsCodec.d.ts +7 -0
  461. package/lib/codec/SetContainsCodec.js +56 -0
  462. package/lib/codec/SetGetAllCodec.d.ts +7 -0
  463. package/lib/codec/SetGetAllCodec.js +61 -0
  464. package/lib/codec/SetIsEmptyCodec.d.ts +7 -0
  465. package/lib/codec/SetIsEmptyCodec.js +54 -0
  466. package/lib/codec/SetMessageType.d.ts +15 -0
  467. package/lib/codec/SetMessageType.js +37 -0
  468. package/lib/codec/SetRemoveCodec.d.ts +7 -0
  469. package/lib/codec/SetRemoveCodec.js +56 -0
  470. package/lib/codec/SetRemoveListenerCodec.d.ts +7 -0
  471. package/lib/codec/SetRemoveListenerCodec.js +56 -0
  472. package/lib/codec/SetSizeCodec.d.ts +7 -0
  473. package/lib/codec/SetSizeCodec.js +54 -0
  474. package/lib/codec/UUIDCodec.d.ts +5 -0
  475. package/lib/codec/UUIDCodec.js +29 -0
  476. package/lib/config/ClientCloudConfig.d.ts +13 -0
  477. package/lib/config/ClientCloudConfig.js +34 -0
  478. package/lib/config/ClientNetworkConfig.d.ts +43 -0
  479. package/lib/config/ClientNetworkConfig.js +64 -0
  480. package/lib/config/Config.d.ts +61 -0
  481. package/lib/config/Config.js +138 -0
  482. package/lib/config/ConfigBuilder.d.ts +26 -0
  483. package/lib/config/ConfigBuilder.js +322 -0
  484. package/lib/config/ConfigPatternMatcher.d.ts +12 -0
  485. package/lib/config/ConfigPatternMatcher.js +70 -0
  486. package/lib/config/EvictionPolicy.d.ts +9 -0
  487. package/lib/config/EvictionPolicy.js +27 -0
  488. package/lib/config/FlakeIdGeneratorConfig.d.ts +26 -0
  489. package/lib/config/FlakeIdGeneratorConfig.js +56 -0
  490. package/lib/config/GroupConfig.d.ts +14 -0
  491. package/lib/config/GroupConfig.js +35 -0
  492. package/lib/config/ImportConfig.d.ts +4 -0
  493. package/lib/config/ImportConfig.js +17 -0
  494. package/lib/config/InMemoryFormat.d.ts +10 -0
  495. package/lib/config/InMemoryFormat.js +28 -0
  496. package/lib/config/JsonConfigLocator.d.ts +16 -0
  497. package/lib/config/JsonConfigLocator.js +103 -0
  498. package/lib/config/JsonStringDeserializationPolicy.d.ts +17 -0
  499. package/lib/config/JsonStringDeserializationPolicy.js +35 -0
  500. package/lib/config/ListenerConfig.d.ts +8 -0
  501. package/lib/config/ListenerConfig.js +33 -0
  502. package/lib/config/NearCacheConfig.d.ts +25 -0
  503. package/lib/config/NearCacheConfig.js +59 -0
  504. package/lib/config/Properties.d.ts +5 -0
  505. package/lib/config/Properties.js +17 -0
  506. package/lib/config/ReliableTopicConfig.d.ts +8 -0
  507. package/lib/config/ReliableTopicConfig.js +38 -0
  508. package/lib/config/SSLConfig.d.ts +34 -0
  509. package/lib/config/SSLConfig.js +51 -0
  510. package/lib/config/SerializationConfig.d.ts +29 -0
  511. package/lib/config/SerializationConfig.js +38 -0
  512. package/lib/config/StringSerializationPolicy.d.ts +22 -0
  513. package/lib/config/StringSerializationPolicy.js +40 -0
  514. package/lib/connection/AddressProvider.d.ts +11 -0
  515. package/lib/connection/AddressProvider.js +17 -0
  516. package/lib/connection/AddressTranslator.d.ts +21 -0
  517. package/lib/connection/AddressTranslator.js +17 -0
  518. package/lib/connection/BasicSSLOptionsFactory.d.ts +14 -0
  519. package/lib/connection/BasicSSLOptionsFactory.js +67 -0
  520. package/lib/connection/DefaultAddressProvider.d.ts +15 -0
  521. package/lib/connection/DefaultAddressProvider.js +38 -0
  522. package/lib/connection/DefaultAddressTranslator.d.ts +11 -0
  523. package/lib/connection/DefaultAddressTranslator.js +33 -0
  524. package/lib/connection/SSLOptionsFactory.d.ts +7 -0
  525. package/lib/connection/SSLOptionsFactory.js +17 -0
  526. package/lib/core/Comparator.d.ts +21 -0
  527. package/lib/core/Comparator.js +17 -0
  528. package/lib/core/ConnectionHeartbeatListener.d.ts +16 -0
  529. package/lib/core/ConnectionHeartbeatListener.js +17 -0
  530. package/lib/core/DistributedObjectListener.d.ts +24 -0
  531. package/lib/core/DistributedObjectListener.js +30 -0
  532. package/lib/core/EntryListener.d.ts +51 -0
  533. package/lib/core/EntryListener.js +32 -0
  534. package/lib/core/EntryView.d.ts +16 -0
  535. package/lib/core/EntryView.js +23 -0
  536. package/lib/core/EventType.d.ts +12 -0
  537. package/lib/core/EventType.js +31 -0
  538. package/lib/core/HazelcastJsonValue.d.ts +32 -0
  539. package/lib/core/HazelcastJsonValue.js +56 -0
  540. package/lib/core/ItemListener.d.ts +38 -0
  541. package/lib/core/ItemListener.js +35 -0
  542. package/lib/core/MapListener.d.ts +29 -0
  543. package/lib/core/MapListener.js +29 -0
  544. package/lib/core/Member.d.ts +23 -0
  545. package/lib/core/Member.js +44 -0
  546. package/lib/core/MemberAttributeEvent.d.ts +37 -0
  547. package/lib/core/MemberAttributeEvent.js +45 -0
  548. package/lib/core/MemberSelector.d.ts +4 -0
  549. package/lib/core/MemberSelector.js +17 -0
  550. package/lib/core/MemberSelectors.d.ts +8 -0
  551. package/lib/core/MemberSelectors.js +33 -0
  552. package/lib/core/MembershipEvent.d.ts +20 -0
  553. package/lib/core/MembershipEvent.js +30 -0
  554. package/lib/core/MembershipListener.d.ts +22 -0
  555. package/lib/core/MembershipListener.js +17 -0
  556. package/lib/core/OverflowPolicy.d.ts +4 -0
  557. package/lib/core/OverflowPolicy.js +22 -0
  558. package/lib/core/Predicate.d.ts +28 -0
  559. package/lib/core/Predicate.js +113 -0
  560. package/lib/core/ReadOnlyLazyList.d.ts +12 -0
  561. package/lib/core/ReadOnlyLazyList.js +74 -0
  562. package/lib/core/RestValue.d.ts +15 -0
  563. package/lib/core/RestValue.js +51 -0
  564. package/lib/core/UUID.d.ts +9 -0
  565. package/lib/core/UUID.js +44 -0
  566. package/lib/core/VectorClock.d.ts +7 -0
  567. package/lib/core/VectorClock.js +48 -0
  568. package/lib/discovery/HazelcastCloudAddressProvider.d.ts +10 -0
  569. package/lib/discovery/HazelcastCloudAddressProvider.js +35 -0
  570. package/lib/discovery/HazelcastCloudAddressTranslator.d.ts +13 -0
  571. package/lib/discovery/HazelcastCloudAddressTranslator.js +54 -0
  572. package/lib/discovery/HazelcastCloudDiscovery.d.ts +25 -0
  573. package/lib/discovery/HazelcastCloudDiscovery.js +85 -0
  574. package/lib/index.d.ts +26 -0
  575. package/lib/index.js +64 -0
  576. package/lib/invocation/ClientConnection.d.ts +82 -0
  577. package/lib/invocation/ClientConnection.js +307 -0
  578. package/lib/invocation/ClientConnectionManager.d.ts +56 -0
  579. package/lib/invocation/ClientConnectionManager.js +298 -0
  580. package/lib/invocation/ClientEventRegistration.d.ts +10 -0
  581. package/lib/invocation/ClientEventRegistration.js +30 -0
  582. package/lib/invocation/ClusterService.d.ts +99 -0
  583. package/lib/invocation/ClusterService.js +417 -0
  584. package/lib/invocation/ConnectionAuthenticator.d.ts +14 -0
  585. package/lib/invocation/ConnectionAuthenticator.js +88 -0
  586. package/lib/invocation/InvocationService.d.ts +138 -0
  587. package/lib/invocation/InvocationService.js +387 -0
  588. package/lib/invocation/Murmur.d.ts +2 -0
  589. package/lib/invocation/Murmur.js +65 -0
  590. package/lib/invocation/RegistrationKey.d.ts +16 -0
  591. package/lib/invocation/RegistrationKey.js +48 -0
  592. package/lib/logging/DefaultLogger.d.ts +12 -0
  593. package/lib/logging/DefaultLogger.js +48 -0
  594. package/lib/logging/ILogger.d.ts +49 -0
  595. package/lib/logging/ILogger.js +17 -0
  596. package/lib/logging/LoggingService.d.ts +16 -0
  597. package/lib/logging/LoggingService.js +50 -0
  598. package/lib/nearcache/AlwaysFreshStaleReadDetectorImpl.d.ts +10 -0
  599. package/lib/nearcache/AlwaysFreshStaleReadDetectorImpl.js +34 -0
  600. package/lib/nearcache/DataRecord.d.ts +33 -0
  601. package/lib/nearcache/DataRecord.js +109 -0
  602. package/lib/nearcache/MetadataContainer.d.ts +18 -0
  603. package/lib/nearcache/MetadataContainer.js +56 -0
  604. package/lib/nearcache/MetadataFetcher.d.ts +20 -0
  605. package/lib/nearcache/MetadataFetcher.js +92 -0
  606. package/lib/nearcache/NearCache.d.ts +89 -0
  607. package/lib/nearcache/NearCache.js +250 -0
  608. package/lib/nearcache/NearCacheManager.d.ts +13 -0
  609. package/lib/nearcache/NearCacheManager.js +50 -0
  610. package/lib/nearcache/RepairingHandler.d.ts +26 -0
  611. package/lib/nearcache/RepairingHandler.js +114 -0
  612. package/lib/nearcache/RepairingTask.d.ts +26 -0
  613. package/lib/nearcache/RepairingTask.js +117 -0
  614. package/lib/nearcache/StaleReadDetector.d.ts +7 -0
  615. package/lib/nearcache/StaleReadDetector.js +2 -0
  616. package/lib/nearcache/StaleReadDetectorImpl.d.ts +13 -0
  617. package/lib/nearcache/StaleReadDetectorImpl.js +35 -0
  618. package/lib/protocol/ClientProtocolErrorCodes.d.ts +91 -0
  619. package/lib/protocol/ClientProtocolErrorCodes.js +112 -0
  620. package/lib/protocol/ErrorCodec.d.ts +11 -0
  621. package/lib/protocol/ErrorCodec.js +50 -0
  622. package/lib/protocol/ErrorFactory.d.ts +8 -0
  623. package/lib/protocol/ErrorFactory.js +92 -0
  624. package/lib/protocol/StackTraceElementCodec.d.ts +8 -0
  625. package/lib/protocol/StackTraceElementCodec.js +38 -0
  626. package/lib/proxy/AtomicLongProxy.d.ts +17 -0
  627. package/lib/proxy/AtomicLongProxy.js +72 -0
  628. package/lib/proxy/BaseProxy.d.ts +89 -0
  629. package/lib/proxy/BaseProxy.js +191 -0
  630. package/lib/proxy/FlakeIdGenerator.d.ts +47 -0
  631. package/lib/proxy/FlakeIdGenerator.js +17 -0
  632. package/lib/proxy/FlakeIdGeneratorProxy.d.ts +13 -0
  633. package/lib/proxy/FlakeIdGeneratorProxy.js +48 -0
  634. package/lib/proxy/IAtomicLong.d.ts +16 -0
  635. package/lib/proxy/IAtomicLong.js +17 -0
  636. package/lib/proxy/IList.d.ts +132 -0
  637. package/lib/proxy/IList.js +17 -0
  638. package/lib/proxy/ILock.d.ts +54 -0
  639. package/lib/proxy/ILock.js +17 -0
  640. package/lib/proxy/IMap.d.ts +328 -0
  641. package/lib/proxy/IMap.js +17 -0
  642. package/lib/proxy/IQueue.d.ts +128 -0
  643. package/lib/proxy/IQueue.js +17 -0
  644. package/lib/proxy/ISemaphore.d.ts +53 -0
  645. package/lib/proxy/ISemaphore.js +17 -0
  646. package/lib/proxy/ISet.d.ts +89 -0
  647. package/lib/proxy/ISet.js +17 -0
  648. package/lib/proxy/ListProxy.d.ts +31 -0
  649. package/lib/proxy/ListProxy.js +165 -0
  650. package/lib/proxy/LockProxy.d.ts +16 -0
  651. package/lib/proxy/LockProxy.js +78 -0
  652. package/lib/proxy/MapProxy.d.ts +82 -0
  653. package/lib/proxy/MapProxy.js +651 -0
  654. package/lib/proxy/MultiMap.d.ts +153 -0
  655. package/lib/proxy/MultiMap.js +17 -0
  656. package/lib/proxy/MultiMapProxy.d.ts +33 -0
  657. package/lib/proxy/MultiMapProxy.js +238 -0
  658. package/lib/proxy/NearCachedMapProxy.d.ts +41 -0
  659. package/lib/proxy/NearCachedMapProxy.js +284 -0
  660. package/lib/proxy/PNCounter.d.ts +162 -0
  661. package/lib/proxy/PNCounter.js +17 -0
  662. package/lib/proxy/PNCounterProxy.d.ts +30 -0
  663. package/lib/proxy/PNCounterProxy.js +181 -0
  664. package/lib/proxy/PartitionSpecificProxy.d.ts +10 -0
  665. package/lib/proxy/PartitionSpecificProxy.js +52 -0
  666. package/lib/proxy/ProxyManager.d.ts +40 -0
  667. package/lib/proxy/ProxyManager.js +202 -0
  668. package/lib/proxy/QueueProxy.d.ts +28 -0
  669. package/lib/proxy/QueueProxy.js +198 -0
  670. package/lib/proxy/ReplicatedMap.d.ts +149 -0
  671. package/lib/proxy/ReplicatedMap.js +17 -0
  672. package/lib/proxy/ReplicatedMapProxy.d.ts +34 -0
  673. package/lib/proxy/ReplicatedMapProxy.js +256 -0
  674. package/lib/proxy/Ringbuffer.d.ts +115 -0
  675. package/lib/proxy/Ringbuffer.js +17 -0
  676. package/lib/proxy/SemaphoreProxy.d.ts +15 -0
  677. package/lib/proxy/SemaphoreProxy.js +73 -0
  678. package/lib/proxy/SetProxy.d.ts +22 -0
  679. package/lib/proxy/SetProxy.js +130 -0
  680. package/lib/proxy/flakeid/AutoBatcher.d.ts +30 -0
  681. package/lib/proxy/flakeid/AutoBatcher.js +104 -0
  682. package/lib/proxy/ringbuffer/LazyReadResultSet.d.ts +16 -0
  683. package/lib/proxy/ringbuffer/LazyReadResultSet.js +54 -0
  684. package/lib/proxy/ringbuffer/ReadResultSet.d.ts +41 -0
  685. package/lib/proxy/ringbuffer/ReadResultSet.js +17 -0
  686. package/lib/proxy/ringbuffer/RingbufferProxy.d.ts +19 -0
  687. package/lib/proxy/ringbuffer/RingbufferProxy.js +98 -0
  688. package/lib/proxy/topic/ITopic.d.ts +9 -0
  689. package/lib/proxy/topic/ITopic.js +17 -0
  690. package/lib/proxy/topic/Message.d.ts +8 -0
  691. package/lib/proxy/topic/Message.js +23 -0
  692. package/lib/proxy/topic/MessageListener.d.ts +2 -0
  693. package/lib/proxy/topic/MessageListener.js +2 -0
  694. package/lib/proxy/topic/ReliableTopicListenerRunner.d.ts +20 -0
  695. package/lib/proxy/topic/ReliableTopicListenerRunner.js +73 -0
  696. package/lib/proxy/topic/ReliableTopicMessage.d.ts +19 -0
  697. package/lib/proxy/topic/ReliableTopicMessage.js +53 -0
  698. package/lib/proxy/topic/ReliableTopicProxy.d.ts +31 -0
  699. package/lib/proxy/topic/ReliableTopicProxy.js +151 -0
  700. package/lib/proxy/topic/TopicOverloadPolicy.d.ts +23 -0
  701. package/lib/proxy/topic/TopicOverloadPolicy.js +41 -0
  702. package/lib/serialization/Data.d.ts +114 -0
  703. package/lib/serialization/Data.js +17 -0
  704. package/lib/serialization/DefaultPredicates.d.ts +131 -0
  705. package/lib/serialization/DefaultPredicates.js +465 -0
  706. package/lib/serialization/DefaultSerializer.d.ts +134 -0
  707. package/lib/serialization/DefaultSerializer.js +442 -0
  708. package/lib/serialization/HeapData.d.ts +44 -0
  709. package/lib/serialization/HeapData.js +104 -0
  710. package/lib/serialization/ObjectData.d.ts +102 -0
  711. package/lib/serialization/ObjectData.js +566 -0
  712. package/lib/serialization/PredicateFactory.d.ts +15 -0
  713. package/lib/serialization/PredicateFactory.js +46 -0
  714. package/lib/serialization/Serializable.d.ts +23 -0
  715. package/lib/serialization/Serializable.js +17 -0
  716. package/lib/serialization/SerializationService.d.ts +60 -0
  717. package/lib/serialization/SerializationService.js +312 -0
  718. package/lib/serialization/SerializationUtil.d.ts +3 -0
  719. package/lib/serialization/SerializationUtil.js +31 -0
  720. package/lib/serialization/portable/ClassDefinition.d.ts +54 -0
  721. package/lib/serialization/portable/ClassDefinition.js +140 -0
  722. package/lib/serialization/portable/ClassDefinitionBuilder.d.ts +35 -0
  723. package/lib/serialization/portable/ClassDefinitionBuilder.js +126 -0
  724. package/lib/serialization/portable/ClassDefinitionContext.d.ts +9 -0
  725. package/lib/serialization/portable/ClassDefinitionContext.js +51 -0
  726. package/lib/serialization/portable/ClassDefinitionWriter.d.ts +35 -0
  727. package/lib/serialization/portable/ClassDefinitionWriter.js +123 -0
  728. package/lib/serialization/portable/DefaultPortableReader.d.ts +43 -0
  729. package/lib/serialization/portable/DefaultPortableReader.js +188 -0
  730. package/lib/serialization/portable/DefaultPortableWriter.d.ts +37 -0
  731. package/lib/serialization/portable/DefaultPortableWriter.js +156 -0
  732. package/lib/serialization/portable/MorphingPortableReader.d.ts +31 -0
  733. package/lib/serialization/portable/MorphingPortableReader.js +189 -0
  734. package/lib/serialization/portable/PortableContext.d.ts +16 -0
  735. package/lib/serialization/portable/PortableContext.js +126 -0
  736. package/lib/serialization/portable/PortableSerializer.d.ts +68 -0
  737. package/lib/serialization/portable/PortableSerializer.js +94 -0
  738. package/lib/statistics/Statistics.d.ts +50 -0
  739. package/lib/statistics/Statistics.js +232 -0
  740. package/lib/util/ArrayComparator.d.ts +1 -0
  741. package/lib/util/ArrayComparator.js +17 -0
  742. package/lib/util/UuidUtil.d.ts +4 -0
  743. package/lib/util/UuidUtil.js +35 -0
  744. package/lib.es6.d.ts +18650 -0
  745. package/package.json +64 -0
  746. package/tsconfig.json +20 -0
@@ -0,0 +1,284 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2008-2021, Hazelcast, Inc. All Rights Reserved.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ var __extends = (this && this.__extends) || (function () {
18
+ var extendStatics = Object.setPrototypeOf ||
19
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
20
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
21
+ return function (d, b) {
22
+ extendStatics(d, b);
23
+ function __() { this.constructor = d; }
24
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
25
+ };
26
+ })();
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ var Promise = require("bluebird");
29
+ var MapAddNearCacheEntryListenerCodec_1 = require("../codec/MapAddNearCacheEntryListenerCodec");
30
+ var MapAddNearCacheInvalidationListenerCodec_1 = require("../codec/MapAddNearCacheInvalidationListenerCodec");
31
+ var MapRemoveEntryListenerCodec_1 = require("../codec/MapRemoveEntryListenerCodec");
32
+ var EventType_1 = require("../core/EventType");
33
+ var StaleReadDetectorImpl_1 = require("../nearcache/StaleReadDetectorImpl");
34
+ var MapProxy_1 = require("./MapProxy");
35
+ var BuildInfo_1 = require("../BuildInfo");
36
+ var NearCachedMapProxy = /** @class */ (function (_super) {
37
+ __extends(NearCachedMapProxy, _super);
38
+ function NearCachedMapProxy(client, servicename, name) {
39
+ var _this = _super.call(this, client, servicename, name) || this;
40
+ _this.nearCache = _this.client.getNearCacheManager().getOrCreateNearCache(name);
41
+ if (_this.nearCache.isInvalidatedOnChange()) {
42
+ _this.addNearCacheInvalidationListener().then(function (id) {
43
+ _this.invalidationListenerId = id;
44
+ _this.nearCache.setReady();
45
+ });
46
+ }
47
+ else {
48
+ _this.nearCache.setReady();
49
+ }
50
+ return _this;
51
+ }
52
+ NearCachedMapProxy.prototype.clear = function () {
53
+ return _super.prototype.clear.call(this).then(this.invalidateCacheAndReturn.bind(this));
54
+ };
55
+ NearCachedMapProxy.prototype.evictAll = function () {
56
+ this.nearCache.clear();
57
+ return _super.prototype.evictAll.call(this).then(this.invalidateCacheAndReturn.bind(this));
58
+ };
59
+ NearCachedMapProxy.prototype.containsKeyInternal = function (keyData) {
60
+ var _this = this;
61
+ return this.nearCache.get(keyData).then(function (cachedValue) {
62
+ if (cachedValue !== undefined) {
63
+ return Promise.resolve(cachedValue != null);
64
+ }
65
+ else {
66
+ return _super.prototype.containsKeyInternal.call(_this, keyData);
67
+ }
68
+ });
69
+ };
70
+ NearCachedMapProxy.prototype.deleteInternal = function (keyData) {
71
+ this.nearCache.invalidate(keyData);
72
+ return _super.prototype.deleteInternal.call(this, keyData).then(this.invalidateCacheEntryAndReturn.bind(this, keyData));
73
+ };
74
+ NearCachedMapProxy.prototype.evictInternal = function (key) {
75
+ return _super.prototype.evictInternal.call(this, key).then(this.invalidateCacheEntryAndReturn.bind(this, key));
76
+ };
77
+ NearCachedMapProxy.prototype.putAllInternal = function (partitionsToKeysData) {
78
+ var _this = this;
79
+ return _super.prototype.putAllInternal.call(this, partitionsToKeysData).then(function () {
80
+ for (var partition in partitionsToKeysData) {
81
+ partitionsToKeysData[partition].forEach(function (entry) {
82
+ _this.nearCache.invalidate(entry[0]);
83
+ });
84
+ }
85
+ });
86
+ };
87
+ NearCachedMapProxy.prototype.postDestroy = function () {
88
+ var _this = this;
89
+ return this.removeNearCacheInvalidationListener().then(function () {
90
+ _this.client.getNearCacheManager().destroyNearCache(_this.name);
91
+ }).then(function () {
92
+ return _super.prototype.postDestroy.call(_this);
93
+ });
94
+ };
95
+ NearCachedMapProxy.prototype.putIfAbsentInternal = function (keyData, valueData, ttl) {
96
+ return _super.prototype.putIfAbsentInternal.call(this, keyData, valueData, ttl).then(this.invalidateCacheEntryAndReturn.bind(this, keyData));
97
+ };
98
+ NearCachedMapProxy.prototype.putTransientInternal = function (keyData, valueData, ttl) {
99
+ return _super.prototype.putTransientInternal.call(this, keyData, valueData, ttl).then(this.invalidateCacheEntryAndReturn.bind(this, keyData));
100
+ };
101
+ NearCachedMapProxy.prototype.executeOnKeyInternal = function (keyData, proData) {
102
+ return _super.prototype.executeOnKeyInternal.call(this, keyData, proData).then(this.invalidateCacheEntryAndReturn.bind(this, keyData));
103
+ };
104
+ NearCachedMapProxy.prototype.putInternal = function (keyData, valueData, ttl) {
105
+ return _super.prototype.putInternal.call(this, keyData, valueData, ttl).then(this.invalidateCacheEntryAndReturn.bind(this, keyData));
106
+ };
107
+ NearCachedMapProxy.prototype.getInternal = function (keyData) {
108
+ var _this = this;
109
+ return this.nearCache.get(keyData).then(function (cachedValue) {
110
+ if (cachedValue !== undefined) {
111
+ return Promise.resolve(cachedValue);
112
+ }
113
+ else {
114
+ var reservation_1 = _this.nearCache.tryReserveForUpdate(keyData);
115
+ return _super.prototype.getInternal.call(_this, keyData).then(function (val) {
116
+ _this.nearCache.tryPublishReserved(keyData, val, reservation_1);
117
+ return val;
118
+ }).catch(function (err) {
119
+ throw err;
120
+ });
121
+ }
122
+ });
123
+ };
124
+ NearCachedMapProxy.prototype.tryRemoveInternal = function (keyData, timeout) {
125
+ return _super.prototype.tryRemoveInternal.call(this, keyData, timeout).then(this.invalidateCacheEntryAndReturn.bind(this, keyData));
126
+ };
127
+ NearCachedMapProxy.prototype.removeInternal = function (keyData, value) {
128
+ return _super.prototype.removeInternal.call(this, keyData, value).then(this.invalidateCacheEntryAndReturn.bind(this, keyData));
129
+ };
130
+ NearCachedMapProxy.prototype.getAllInternal = function (partitionsToKeys, result) {
131
+ var _this = this;
132
+ if (result === void 0) { result = []; }
133
+ var promises = [];
134
+ try {
135
+ var _loop_1 = function (partition) {
136
+ var partitionArray = partitionsToKeys[partition];
137
+ var _loop_2 = function (i) {
138
+ var key = partitionArray[i];
139
+ promises.push(this_1.nearCache.get(key).then(function (cachedResult) {
140
+ if (cachedResult !== undefined) {
141
+ result.push([_this.toObject(partitionArray[i]), cachedResult]);
142
+ partitionArray.splice(i, 1);
143
+ }
144
+ }));
145
+ };
146
+ for (var i = partitionArray.length - 1; i >= 0; i--) {
147
+ _loop_2(i);
148
+ }
149
+ };
150
+ var this_1 = this;
151
+ for (var partition in partitionsToKeys) {
152
+ _loop_1(partition);
153
+ }
154
+ }
155
+ catch (err) {
156
+ return Promise.resolve([]);
157
+ }
158
+ return Promise.all(promises).then(function () {
159
+ var reservations = [];
160
+ for (var partition in partitionsToKeys) {
161
+ var partitionArray = partitionsToKeys[partition];
162
+ for (var _i = 0, partitionArray_1 = partitionArray; _i < partitionArray_1.length; _i++) {
163
+ var key = partitionArray_1[_i];
164
+ reservations.push(_this.nearCache.tryReserveForUpdate(key));
165
+ }
166
+ }
167
+ return _super.prototype.getAllInternal.call(_this, partitionsToKeys, result).then(function (serializedEntryArray) {
168
+ serializedEntryArray.forEach(function (serializedEntry, index) {
169
+ var key = serializedEntry[0];
170
+ var value = serializedEntry[1];
171
+ _this.nearCache.tryPublishReserved(key, value, reservations[index]);
172
+ });
173
+ return result;
174
+ });
175
+ });
176
+ };
177
+ NearCachedMapProxy.prototype.replaceIfSameInternal = function (keyData, oldValueData, newValueData) {
178
+ return _super.prototype.replaceIfSameInternal.call(this, keyData, oldValueData, newValueData)
179
+ .then(this.invalidateCacheEntryAndReturn.bind(this, keyData));
180
+ };
181
+ NearCachedMapProxy.prototype.replaceInternal = function (keyData, valueData) {
182
+ return _super.prototype.replaceInternal.call(this, keyData, valueData).then(this.invalidateCacheEntryAndReturn.bind(this, keyData));
183
+ };
184
+ NearCachedMapProxy.prototype.setInternal = function (keyData, valueData, ttl) {
185
+ return _super.prototype.setInternal.call(this, keyData, valueData, ttl).then(this.invalidateCacheEntryAndReturn.bind(this, keyData));
186
+ };
187
+ NearCachedMapProxy.prototype.tryPutInternal = function (keyData, valueData, timeout) {
188
+ return _super.prototype.tryPutInternal.call(this, keyData, valueData, timeout)
189
+ .then(this.invalidateCacheEntryAndReturn.bind(this, keyData));
190
+ };
191
+ NearCachedMapProxy.prototype.removeNearCacheInvalidationListener = function () {
192
+ this.client.getRepairingTask().deregisterHandler(this.name);
193
+ return this.client.getListenerService().deregisterListener(this.invalidationListenerId);
194
+ };
195
+ NearCachedMapProxy.prototype.invalidateCacheEntryAndReturn = function (keyData, retVal) {
196
+ this.nearCache.invalidate(keyData);
197
+ return retVal;
198
+ };
199
+ NearCachedMapProxy.prototype.invalidateCacheAndReturn = function (retVal) {
200
+ this.nearCache.clear();
201
+ return retVal;
202
+ };
203
+ NearCachedMapProxy.prototype.addNearCacheInvalidationListener = function () {
204
+ var _this = this;
205
+ var codec = this.createInvalidationListenerCodec(this.name, EventType_1.EventType.INVALIDATION);
206
+ if (this.supportsRepairableNearCache()) {
207
+ return this.createNearCacheEventHandler().then(function (handler) {
208
+ return _this.client.getListenerService().registerListener(codec, handler);
209
+ });
210
+ }
211
+ else {
212
+ return this.client.getListenerService().registerListener(codec, this.createPre38NearCacheEventHandler());
213
+ }
214
+ };
215
+ NearCachedMapProxy.prototype.createInvalidationListenerCodec = function (name, flags) {
216
+ if (this.supportsRepairableNearCache()) {
217
+ return {
218
+ encodeAddRequest: function (localOnly) {
219
+ return MapAddNearCacheInvalidationListenerCodec_1.MapAddNearCacheInvalidationListenerCodec.encodeRequest(name, flags, localOnly);
220
+ },
221
+ decodeAddResponse: function (msg) {
222
+ return MapAddNearCacheInvalidationListenerCodec_1.MapAddNearCacheInvalidationListenerCodec.decodeResponse(msg).response;
223
+ },
224
+ encodeRemoveRequest: function (listenerId) {
225
+ return MapRemoveEntryListenerCodec_1.MapRemoveEntryListenerCodec.encodeRequest(name, listenerId);
226
+ },
227
+ };
228
+ }
229
+ else {
230
+ return {
231
+ encodeAddRequest: function (localOnly) {
232
+ return MapAddNearCacheEntryListenerCodec_1.MapAddNearCacheEntryListenerCodec.encodeRequest(name, flags, localOnly);
233
+ },
234
+ decodeAddResponse: function (msg) {
235
+ return MapAddNearCacheEntryListenerCodec_1.MapAddNearCacheEntryListenerCodec.decodeResponse(msg).response;
236
+ },
237
+ encodeRemoveRequest: function (listenerId) {
238
+ return MapRemoveEntryListenerCodec_1.MapRemoveEntryListenerCodec.encodeRequest(name, listenerId);
239
+ },
240
+ };
241
+ }
242
+ };
243
+ NearCachedMapProxy.prototype.supportsRepairableNearCache = function () {
244
+ return this.getConnectedServerVersion() >= BuildInfo_1.BuildInfo.calculateServerVersion(3, 8, 0);
245
+ };
246
+ NearCachedMapProxy.prototype.createPre38NearCacheEventHandler = function () {
247
+ var nearCache = this.nearCache;
248
+ var handle = function (keyData) {
249
+ if (keyData == null) {
250
+ nearCache.clear();
251
+ }
252
+ else {
253
+ nearCache.invalidate(keyData);
254
+ }
255
+ };
256
+ var handleBatch = function (keys) {
257
+ keys.forEach(function (key) {
258
+ nearCache.invalidate(key);
259
+ });
260
+ };
261
+ return function (m) {
262
+ MapAddNearCacheEntryListenerCodec_1.MapAddNearCacheEntryListenerCodec.handle(m, handle, handleBatch);
263
+ };
264
+ };
265
+ NearCachedMapProxy.prototype.createNearCacheEventHandler = function () {
266
+ var _this = this;
267
+ var repairingTask = this.client.getRepairingTask();
268
+ return repairingTask.registerAndGetHandler(this.getName(), this.nearCache).then(function (repairingHandler) {
269
+ var staleReadDetector = new StaleReadDetectorImpl_1.StaleReadDetectorImpl(repairingHandler, _this.client.getPartitionService());
270
+ _this.nearCache.setStaleReadDetector(staleReadDetector);
271
+ var handle = function (key, sourceUuid, partitionUuid, sequence) {
272
+ repairingHandler.handle(key, sourceUuid, partitionUuid, sequence);
273
+ };
274
+ var handleBatch = function (keys, sourceUuids, partititonUuids, sequences) {
275
+ repairingHandler.handleBatch(keys, sourceUuids, partititonUuids, sequences);
276
+ };
277
+ return function (m) {
278
+ MapAddNearCacheInvalidationListenerCodec_1.MapAddNearCacheInvalidationListenerCodec.handle(m, handle, handleBatch);
279
+ };
280
+ });
281
+ };
282
+ return NearCachedMapProxy;
283
+ }(MapProxy_1.MapProxy));
284
+ exports.NearCachedMapProxy = NearCachedMapProxy;
@@ -0,0 +1,162 @@
1
+ /// <reference types="bluebird" />
2
+ /// <reference types="long" />
3
+ import * as Promise from 'bluebird';
4
+ import * as Long from 'long';
5
+ import { DistributedObject } from '../DistributedObject';
6
+ /**
7
+ * PN (Positive-Negative) CRDT counter.
8
+ * <p>
9
+ * The counter supports adding and subtracting values as well as
10
+ * retrieving the current counter value.
11
+ * The counter guarantees that whenever two nodes have received the
12
+ * same set of updates, possibly in a different order, their state is
13
+ * identical, and any conflicting updates are merged automatically.
14
+ * If no new updates are made to the shared state, all nodes that can
15
+ * communicate will eventually have the same data.
16
+ * <p>
17
+ * The invocation is remote. This may lead to indeterminate state -
18
+ * the update may be applied but the response has not been received.
19
+ * In this case, the caller will be notified with a `TargetDisconnectedError`
20
+ * <p>
21
+ * The read and write methods provide monotonic read and RYW (read-your-write)
22
+ * guarantees. These guarantees are session guarantees which means that if
23
+ * no replica with the previously observed state is reachable, the session
24
+ * guarantees are lost and the method invocation will throw a
25
+ * `ConsistencyLostError`. This does not mean
26
+ * that an update is lost. All of the updates are part of some replica and
27
+ * will be eventually reflected in the state of all other replicas. This
28
+ * error just means that you cannot observe your own writes because
29
+ * all replicas that contain your updates are currently unreachable.
30
+ * After you have received a `ConsistencyLostError`, you can either
31
+ * wait for a sufficiently up-to-date replica to become reachable in which
32
+ * case the session can be continued or you can reset the session by calling
33
+ * the `reset()` method. If you have called the `reset()` method,
34
+ * a new session is started with the next invocation to a CRDT replica.
35
+ * <p>
36
+ * <b>NOTE:</b>
37
+ * The CRDT state is kept entirely on non-lite (data) members. If there
38
+ * aren't any and the methods here are invoked, they will
39
+ * fail with a `NoDataMemberInClusterError`.
40
+ *
41
+ * @requires Hazelcast 3.10
42
+ */
43
+ export interface PNCounter extends DistributedObject {
44
+ /**
45
+ * Returns the current value of the counter.
46
+ *
47
+ * @throws `NoDataMemberInClusterError` if the cluster does not contain
48
+ * any data members
49
+ * @throws `UnsupportedOperationError` if the cluster version is less
50
+ * than 3.10
51
+ * @throws `ConsistencyLostError` if the session guarantees have
52
+ * been lost
53
+ * @returns the current value of the counter
54
+ */
55
+ get(): Promise<Long>;
56
+ /**
57
+ * Adds the given value to the current value.
58
+ *
59
+ * @param delta the value to add
60
+ * @return the previous value
61
+ * @throws `NoDataMemberInClusterError` if the cluster does not contain
62
+ * any data members
63
+ * @throws `UnsupportedOperationError` if the cluster version is less
64
+ * than 3.10
65
+ * @throws `ConsistencyLostError` if the session guarantees have
66
+ * been lost
67
+ */
68
+ getAndAdd(delta: Long | number): Promise<Long>;
69
+ /**
70
+ * Adds the given value to the current value.
71
+ *
72
+ * @param delta the value to add
73
+ * @return the updated value
74
+ * @throws `NoDataMemberInClusterError` if the cluster does not contain
75
+ * any data members
76
+ * @throws `UnsupportedOperationError` if the cluster version is less
77
+ * than 3.10
78
+ * @throws `ConsistencyLostError` if the session guarantees have
79
+ * been lost
80
+ */
81
+ addAndGet(delta: Long | number): Promise<Long>;
82
+ /**
83
+ * Subtracts the given value from the current value.
84
+ *
85
+ * @param delta the value to add
86
+ * @return the previous value
87
+ * @throws `NoDataMemberInClusterError` if the cluster does not contain
88
+ * any data members
89
+ * @throws `UnsupportedOperationError` if the cluster version is less
90
+ * than 3.10
91
+ * @throws `ConsistencyLostError` if the session guarantees have
92
+ * been lost
93
+ */
94
+ getAndSubtract(delta: Long | number): Promise<Long>;
95
+ /**
96
+ * Subtracts the given value from the current value.
97
+ *
98
+ * @param delta the value to subtract
99
+ * @return the updated value
100
+ * @throws `NoDataMemberInClusterError` if the cluster does not contain
101
+ * any data members
102
+ * @throws `UnsupportedOperationError` if the cluster version is less
103
+ * than 3.10
104
+ * @throws `ConsistencyLostError` if the session guarantees have
105
+ * been lost
106
+ */
107
+ subtractAndGet(delta: Long | number): Promise<Long>;
108
+ /**
109
+ * Decrements by one the current value.
110
+ *
111
+ * @return the updated value
112
+ * @throws `NoDataMemberInClusterError` if the cluster does not contain
113
+ * any data members
114
+ * @throws `UnsupportedOperationError` if the cluster version is less
115
+ * than 3.10
116
+ * @throws `ConsistencyLostError` if the session guarantees have
117
+ * been lost
118
+ */
119
+ decrementAndGet(): Promise<Long>;
120
+ /**
121
+ * Increments by one the current value.
122
+ *
123
+ * @return the updated value
124
+ * @throws `NoDataMemberInClusterError` if the cluster does not contain
125
+ * any data members
126
+ * @throws `UnsupportedOperationError` if the cluster version is less
127
+ * than 3.10
128
+ * @throws `ConsistencyLostError` if the session guarantees have
129
+ * been lost
130
+ */
131
+ incrementAndGet(): Promise<Long>;
132
+ /**
133
+ * Decrements by one the current value.
134
+ *
135
+ * @return the previous value
136
+ * @throws `NoDataMemberInClusterError` if the cluster does not contain
137
+ * any data members
138
+ * @throws `UnsupportedOperationError` if the cluster version is less
139
+ * than 3.10
140
+ * @throws `ConsistencyLostError` if the session guarantees have
141
+ * been lost
142
+ */
143
+ getAndDecrement(): Promise<Long>;
144
+ /**
145
+ * Increments by one the current value.
146
+ *
147
+ * @return the previous value
148
+ * @throws `NoDataMemberInClusterError` if the cluster does not contain
149
+ * any data members
150
+ * @throws `UnsupportedOperationError` if the cluster version is less
151
+ * than 3.10
152
+ * @throws `ConsistencyLostError` if the session guarantees have
153
+ * beenlost
154
+ */
155
+ getAndIncrement(): Promise<Long>;
156
+ /**
157
+ * Resets the observed state by this PN counter. This method may be used
158
+ * after a method invocation has thrown a `ConsistencyLostError`
159
+ * to reset the proxy and to be able to start a new session.
160
+ */
161
+ reset(): Promise<void>;
162
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2008-2021, Hazelcast, Inc. All Rights Reserved.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,30 @@
1
+ /// <reference types="bluebird" />
2
+ /// <reference types="long" />
3
+ import * as Promise from 'bluebird';
4
+ import * as Long from 'long';
5
+ import { BaseProxy } from './BaseProxy';
6
+ import { PNCounter } from './PNCounter';
7
+ export declare class PNCounterProxy extends BaseProxy implements PNCounter {
8
+ private static readonly EMPTY_ARRAY;
9
+ private lastObservedVectorClock;
10
+ private maximumReplicaCount;
11
+ private currentTargetReplicaAddress;
12
+ get(): Promise<Long>;
13
+ getAndAdd(delta: Long | number): Promise<Long>;
14
+ addAndGet(delta: Long | number): Promise<Long>;
15
+ getAndSubtract(delta: Long | number): Promise<Long>;
16
+ subtractAndGet(delta: Long | number): Promise<Long>;
17
+ decrementAndGet(): Promise<Long>;
18
+ incrementAndGet(): Promise<Long>;
19
+ getAndDecrement(): Promise<Long>;
20
+ getAndIncrement(): Promise<Long>;
21
+ reset(): Promise<void>;
22
+ private invokeInternal(excludedAddresses, lastError, codec, ...codecArgs);
23
+ private encodeInvokeInternal<T>(target, codec, ...codecArguments);
24
+ private getCRDTOperationTarget(excludedAddresses);
25
+ private chooseTargetReplica(excludedAddresses);
26
+ private getReplicaAddresses(excludedAddresses);
27
+ private getMaxConfiguredReplicaCount();
28
+ private updateObservedReplicaTimestamps(observedTimestamps);
29
+ private toVectorClock(timestamps);
30
+ }
@@ -0,0 +1,181 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2008-2021, Hazelcast, Inc. All Rights Reserved.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ var __extends = (this && this.__extends) || (function () {
18
+ var extendStatics = Object.setPrototypeOf ||
19
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
20
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
21
+ return function (d, b) {
22
+ extendStatics(d, b);
23
+ function __() { this.constructor = d; }
24
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
25
+ };
26
+ })();
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ var Promise = require("bluebird");
29
+ var Long = require("long");
30
+ var PNCounterAddCodec_1 = require("../codec/PNCounterAddCodec");
31
+ var PNCounterGetCodec_1 = require("../codec/PNCounterGetCodec");
32
+ var PNCounterGetConfiguredReplicaCountCodec_1 = require("../codec/PNCounterGetConfiguredReplicaCountCodec");
33
+ var MemberSelectors_1 = require("../core/MemberSelectors");
34
+ var VectorClock_1 = require("../core/VectorClock");
35
+ var HazelcastError_1 = require("../HazelcastError");
36
+ var Util_1 = require("../Util");
37
+ var BaseProxy_1 = require("./BaseProxy");
38
+ var PNCounterProxy = /** @class */ (function (_super) {
39
+ __extends(PNCounterProxy, _super);
40
+ function PNCounterProxy() {
41
+ var _this = _super !== null && _super.apply(this, arguments) || this;
42
+ _this.lastObservedVectorClock = new VectorClock_1.VectorClock();
43
+ _this.maximumReplicaCount = 0;
44
+ return _this;
45
+ }
46
+ PNCounterProxy.prototype.get = function () {
47
+ return this.invokeInternal(PNCounterProxy.EMPTY_ARRAY, null, PNCounterGetCodec_1.PNCounterGetCodec);
48
+ };
49
+ PNCounterProxy.prototype.getAndAdd = function (delta) {
50
+ return this.invokeInternal(PNCounterProxy.EMPTY_ARRAY, null, PNCounterAddCodec_1.PNCounterAddCodec, delta, true);
51
+ };
52
+ PNCounterProxy.prototype.addAndGet = function (delta) {
53
+ return this.invokeInternal(PNCounterProxy.EMPTY_ARRAY, null, PNCounterAddCodec_1.PNCounterAddCodec, delta, false);
54
+ };
55
+ PNCounterProxy.prototype.getAndSubtract = function (delta) {
56
+ if (!Long.isLong(delta)) {
57
+ delta = Long.fromNumber(delta);
58
+ }
59
+ return this.invokeInternal(PNCounterProxy.EMPTY_ARRAY, null, PNCounterAddCodec_1.PNCounterAddCodec, delta.neg(), true);
60
+ };
61
+ PNCounterProxy.prototype.subtractAndGet = function (delta) {
62
+ if (!Long.isLong(delta)) {
63
+ delta = Long.fromNumber(delta);
64
+ }
65
+ return this.invokeInternal(PNCounterProxy.EMPTY_ARRAY, null, PNCounterAddCodec_1.PNCounterAddCodec, delta.neg(), false);
66
+ };
67
+ PNCounterProxy.prototype.decrementAndGet = function () {
68
+ return this.invokeInternal(PNCounterProxy.EMPTY_ARRAY, null, PNCounterAddCodec_1.PNCounterAddCodec, Long.fromNumber(-1), false);
69
+ };
70
+ PNCounterProxy.prototype.incrementAndGet = function () {
71
+ return this.invokeInternal(PNCounterProxy.EMPTY_ARRAY, null, PNCounterAddCodec_1.PNCounterAddCodec, Long.fromNumber(1), false);
72
+ };
73
+ PNCounterProxy.prototype.getAndDecrement = function () {
74
+ return this.invokeInternal(PNCounterProxy.EMPTY_ARRAY, null, PNCounterAddCodec_1.PNCounterAddCodec, Long.fromNumber(-1), true);
75
+ };
76
+ PNCounterProxy.prototype.getAndIncrement = function () {
77
+ return this.invokeInternal(PNCounterProxy.EMPTY_ARRAY, null, PNCounterAddCodec_1.PNCounterAddCodec, Long.fromNumber(1), true);
78
+ };
79
+ PNCounterProxy.prototype.reset = function () {
80
+ this.lastObservedVectorClock = new VectorClock_1.VectorClock();
81
+ return Promise.resolve();
82
+ };
83
+ PNCounterProxy.prototype.invokeInternal = function (excludedAddresses, lastError, codec) {
84
+ var _this = this;
85
+ var codecArgs = [];
86
+ for (var _i = 3; _i < arguments.length; _i++) {
87
+ codecArgs[_i - 3] = arguments[_i];
88
+ }
89
+ return this.getCRDTOperationTarget(excludedAddresses).then(function (target) {
90
+ if (target == null) {
91
+ if (lastError) {
92
+ throw lastError;
93
+ }
94
+ else {
95
+ throw new HazelcastError_1.NoDataMemberInClusterError('Cannot invoke operations on a CRDT ' +
96
+ 'because the cluster does not contain any data members');
97
+ }
98
+ }
99
+ return _this.encodeInvokeInternal.apply(_this, [target, codec].concat(codecArgs)).then(function (result) {
100
+ _this.updateObservedReplicaTimestamps(result.replicaTimestamps);
101
+ return result.value;
102
+ }).catch(function (err) {
103
+ if (excludedAddresses === PNCounterProxy.EMPTY_ARRAY) {
104
+ excludedAddresses = [];
105
+ }
106
+ excludedAddresses.push(target);
107
+ return _this.invokeInternal.apply(_this, [excludedAddresses, err, codec].concat(codecArgs));
108
+ });
109
+ });
110
+ };
111
+ PNCounterProxy.prototype.encodeInvokeInternal = function (target, codec) {
112
+ var codecArguments = [];
113
+ for (var _i = 2; _i < arguments.length; _i++) {
114
+ codecArguments[_i - 2] = arguments[_i];
115
+ }
116
+ return this.encodeInvokeOnAddress.apply(this, [codec, target].concat(codecArguments, [this.lastObservedVectorClock.entrySet(), target]));
117
+ };
118
+ PNCounterProxy.prototype.getCRDTOperationTarget = function (excludedAddresses) {
119
+ var _this = this;
120
+ if (this.currentTargetReplicaAddress != null &&
121
+ !excludedAddresses.some(this.currentTargetReplicaAddress.equals.bind(this.currentTargetReplicaAddress))) {
122
+ return Promise.resolve(this.currentTargetReplicaAddress);
123
+ }
124
+ else {
125
+ return this.chooseTargetReplica(excludedAddresses).then(function (target) {
126
+ _this.currentTargetReplicaAddress = target;
127
+ return target;
128
+ });
129
+ }
130
+ };
131
+ PNCounterProxy.prototype.chooseTargetReplica = function (excludedAddresses) {
132
+ return this.getReplicaAddresses(excludedAddresses).then(function (replicaAddresses) {
133
+ if (replicaAddresses.length === 0) {
134
+ return null;
135
+ }
136
+ return replicaAddresses[Util_1.randomInt(replicaAddresses.length)];
137
+ });
138
+ };
139
+ PNCounterProxy.prototype.getReplicaAddresses = function (excludedAddresses) {
140
+ var dataMembers = this.client.getClusterService().getMembers(MemberSelectors_1.MemberSelectors.DATA_MEMBER_SELECTOR);
141
+ return this.getMaxConfiguredReplicaCount().then(function (replicaCount) {
142
+ var currentCount = Math.min(replicaCount, dataMembers.length);
143
+ var replicaAddresses = [];
144
+ for (var i = 0; i < currentCount; i++) {
145
+ var memberAddress = dataMembers[i].address;
146
+ if (!excludedAddresses.some(memberAddress.equals.bind(memberAddress))) {
147
+ replicaAddresses.push(memberAddress);
148
+ }
149
+ }
150
+ return replicaAddresses;
151
+ });
152
+ };
153
+ PNCounterProxy.prototype.getMaxConfiguredReplicaCount = function () {
154
+ var _this = this;
155
+ if (this.maximumReplicaCount > 0) {
156
+ return Promise.resolve(this.maximumReplicaCount);
157
+ }
158
+ else {
159
+ return this.encodeInvokeOnRandomTarget(PNCounterGetConfiguredReplicaCountCodec_1.PNCounterGetConfiguredReplicaCountCodec).then(function (count) {
160
+ _this.maximumReplicaCount = count;
161
+ return _this.maximumReplicaCount;
162
+ });
163
+ }
164
+ };
165
+ PNCounterProxy.prototype.updateObservedReplicaTimestamps = function (observedTimestamps) {
166
+ var observedClock = this.toVectorClock(observedTimestamps);
167
+ if (observedClock.isAfter(this.lastObservedVectorClock)) {
168
+ this.lastObservedVectorClock = observedClock;
169
+ }
170
+ };
171
+ PNCounterProxy.prototype.toVectorClock = function (timestamps) {
172
+ var vectorClock = new VectorClock_1.VectorClock();
173
+ timestamps.forEach(function (entry) {
174
+ vectorClock.setReplicaTimestamp(entry[0], entry[1]);
175
+ });
176
+ return vectorClock;
177
+ };
178
+ PNCounterProxy.EMPTY_ARRAY = [];
179
+ return PNCounterProxy;
180
+ }(BaseProxy_1.BaseProxy));
181
+ exports.PNCounterProxy = PNCounterProxy;