actor-ts 0.9.1 → 0.10.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.
- package/CHANGELOG.md +382 -0
- package/README.md +285 -269
- package/dist/ActorSystem.d.ts +3 -38
- package/dist/ActorSystem.d.ts.map +1 -1
- package/dist/ActorSystem.js +2 -2
- package/dist/ActorSystem.js.map +1 -1
- package/dist/ActorSystemOptions.d.ts +91 -0
- package/dist/ActorSystemOptions.d.ts.map +1 -0
- package/dist/ActorSystemOptions.js +45 -0
- package/dist/ActorSystemOptions.js.map +1 -0
- package/dist/Logger.d.ts +63 -0
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +146 -0
- package/dist/Logger.js.map +1 -1
- package/dist/cache/MemcachedCache.d.ts +2 -12
- package/dist/cache/MemcachedCache.d.ts.map +1 -1
- package/dist/cache/MemcachedCache.js +2 -1
- package/dist/cache/MemcachedCache.js.map +1 -1
- package/dist/cache/MemcachedCacheOptions.d.ts +40 -0
- package/dist/cache/MemcachedCacheOptions.d.ts.map +1 -0
- package/dist/cache/MemcachedCacheOptions.js +32 -0
- package/dist/cache/MemcachedCacheOptions.js.map +1 -0
- package/dist/cache/RedisCache.d.ts +2 -22
- package/dist/cache/RedisCache.d.ts.map +1 -1
- package/dist/cache/RedisCache.js +2 -1
- package/dist/cache/RedisCache.js.map +1 -1
- package/dist/cache/RedisCacheOptions.d.ts +56 -0
- package/dist/cache/RedisCacheOptions.d.ts.map +1 -0
- package/dist/cache/RedisCacheOptions.js +43 -0
- package/dist/cache/RedisCacheOptions.js.map +1 -0
- package/dist/cache/index.d.ts +6 -2
- package/dist/cache/index.d.ts.map +1 -1
- package/dist/cache/index.js +2 -0
- package/dist/cache/index.js.map +1 -1
- package/dist/cluster/Cluster.d.ts +4 -63
- package/dist/cluster/Cluster.d.ts.map +1 -1
- package/dist/cluster/Cluster.js +10 -5
- package/dist/cluster/Cluster.js.map +1 -1
- package/dist/cluster/ClusterBootstrap.d.ts +6 -84
- package/dist/cluster/ClusterBootstrap.d.ts.map +1 -1
- package/dist/cluster/ClusterBootstrap.js +33 -21
- package/dist/cluster/ClusterBootstrap.js.map +1 -1
- package/dist/cluster/ClusterBootstrapOptions.d.ts +152 -0
- package/dist/cluster/ClusterBootstrapOptions.d.ts.map +1 -0
- package/dist/cluster/ClusterBootstrapOptions.js +103 -0
- package/dist/cluster/ClusterBootstrapOptions.js.map +1 -0
- package/dist/cluster/ClusterClient.d.ts +21 -31
- package/dist/cluster/ClusterClient.d.ts.map +1 -1
- package/dist/cluster/ClusterClient.js +21 -6
- package/dist/cluster/ClusterClient.js.map +1 -1
- package/dist/cluster/ClusterClientOptions.d.ts +65 -0
- package/dist/cluster/ClusterClientOptions.d.ts.map +1 -0
- package/dist/cluster/ClusterClientOptions.js +43 -0
- package/dist/cluster/ClusterClientOptions.js.map +1 -0
- package/dist/cluster/ClusterClientReceptionist.d.ts +2 -8
- package/dist/cluster/ClusterClientReceptionist.d.ts.map +1 -1
- package/dist/cluster/ClusterClientReceptionist.js +3 -1
- package/dist/cluster/ClusterClientReceptionist.js.map +1 -1
- package/dist/cluster/ClusterClientReceptionistOptions.d.ts +32 -0
- package/dist/cluster/ClusterClientReceptionistOptions.d.ts.map +1 -0
- package/dist/cluster/ClusterClientReceptionistOptions.js +22 -0
- package/dist/cluster/ClusterClientReceptionistOptions.js.map +1 -0
- package/dist/cluster/ClusterOptions.d.ts +116 -0
- package/dist/cluster/ClusterOptions.d.ts.map +1 -0
- package/dist/cluster/ClusterOptions.js +77 -0
- package/dist/cluster/ClusterOptions.js.map +1 -0
- package/dist/cluster/FailureDetector.d.ts +4 -11
- package/dist/cluster/FailureDetector.d.ts.map +1 -1
- package/dist/cluster/FailureDetector.js +4 -3
- package/dist/cluster/FailureDetector.js.map +1 -1
- package/dist/cluster/FailureDetectorOptions.d.ts +38 -0
- package/dist/cluster/FailureDetectorOptions.d.ts.map +1 -0
- package/dist/cluster/FailureDetectorOptions.js +31 -0
- package/dist/cluster/FailureDetectorOptions.js.map +1 -0
- package/dist/cluster/PhiAccrualFailureDetector.d.ts +3 -19
- package/dist/cluster/PhiAccrualFailureDetector.d.ts.map +1 -1
- package/dist/cluster/PhiAccrualFailureDetector.js +2 -2
- package/dist/cluster/PhiAccrualFailureDetector.js.map +1 -1
- package/dist/cluster/PhiAccrualOptions.d.ts +53 -0
- package/dist/cluster/PhiAccrualOptions.d.ts.map +1 -0
- package/dist/cluster/PhiAccrualOptions.js +43 -0
- package/dist/cluster/PhiAccrualOptions.js.map +1 -0
- package/dist/cluster/downing/KeepOldest.d.ts +2 -11
- package/dist/cluster/downing/KeepOldest.d.ts.map +1 -1
- package/dist/cluster/downing/KeepOldest.js +2 -2
- package/dist/cluster/downing/KeepOldest.js.map +1 -1
- package/dist/cluster/downing/KeepOldestOptions.d.ts +34 -0
- package/dist/cluster/downing/KeepOldestOptions.d.ts.map +1 -0
- package/dist/cluster/downing/KeepOldestOptions.js +23 -0
- package/dist/cluster/downing/KeepOldestOptions.js.map +1 -0
- package/dist/cluster/downing/KeepReferee.d.ts +2 -10
- package/dist/cluster/downing/KeepReferee.d.ts.map +1 -1
- package/dist/cluster/downing/KeepReferee.js +3 -3
- package/dist/cluster/downing/KeepReferee.js.map +1 -1
- package/dist/cluster/downing/KeepRefereeOptions.d.ts +35 -0
- package/dist/cluster/downing/KeepRefereeOptions.d.ts.map +1 -0
- package/dist/cluster/downing/KeepRefereeOptions.js +25 -0
- package/dist/cluster/downing/KeepRefereeOptions.js.map +1 -0
- package/dist/cluster/downing/LeaseMajority.d.ts +63 -21
- package/dist/cluster/downing/LeaseMajority.d.ts.map +1 -1
- package/dist/cluster/downing/LeaseMajority.js +132 -9
- package/dist/cluster/downing/LeaseMajority.js.map +1 -1
- package/dist/cluster/downing/LeaseMajorityOptions.d.ts +49 -0
- package/dist/cluster/downing/LeaseMajorityOptions.d.ts.map +1 -0
- package/dist/cluster/downing/LeaseMajorityOptions.js +31 -0
- package/dist/cluster/downing/LeaseMajorityOptions.js.map +1 -0
- package/dist/cluster/downing/StaticQuorum.d.ts +2 -7
- package/dist/cluster/downing/StaticQuorum.d.ts.map +1 -1
- package/dist/cluster/downing/StaticQuorum.js +3 -3
- package/dist/cluster/downing/StaticQuorum.js.map +1 -1
- package/dist/cluster/downing/StaticQuorumOptions.d.ts +30 -0
- package/dist/cluster/downing/StaticQuorumOptions.d.ts.map +1 -0
- package/dist/cluster/downing/StaticQuorumOptions.js +23 -0
- package/dist/cluster/downing/StaticQuorumOptions.js.map +1 -0
- package/dist/cluster/downing/index.d.ts +8 -4
- package/dist/cluster/downing/index.d.ts.map +1 -1
- package/dist/cluster/downing/index.js +4 -0
- package/dist/cluster/downing/index.js.map +1 -1
- package/dist/cluster/index.d.ts +34 -19
- package/dist/cluster/index.d.ts.map +1 -1
- package/dist/cluster/index.js +15 -4
- package/dist/cluster/index.js.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubExtension.d.ts +2 -2
- package/dist/cluster/pubsub/DistributedPubSubExtension.d.ts.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubExtension.js +5 -2
- package/dist/cluster/pubsub/DistributedPubSubExtension.js.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubMediator.d.ts +3 -7
- package/dist/cluster/pubsub/DistributedPubSubMediator.d.ts.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubMediator.js +3 -3
- package/dist/cluster/pubsub/DistributedPubSubMediator.js.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubOptions.d.ts +29 -0
- package/dist/cluster/pubsub/DistributedPubSubOptions.d.ts.map +1 -0
- package/dist/cluster/pubsub/DistributedPubSubOptions.js +23 -0
- package/dist/cluster/pubsub/DistributedPubSubOptions.js.map +1 -0
- package/dist/cluster/pubsub/index.d.ts +2 -1
- package/dist/cluster/pubsub/index.d.ts.map +1 -1
- package/dist/cluster/pubsub/index.js +1 -0
- package/dist/cluster/pubsub/index.js.map +1 -1
- package/dist/cluster/router/ClusterRouter.d.ts +12 -32
- package/dist/cluster/router/ClusterRouter.d.ts.map +1 -1
- package/dist/cluster/router/ClusterRouter.js +4 -2
- package/dist/cluster/router/ClusterRouter.js.map +1 -1
- package/dist/cluster/router/ClusterRouterOptions.d.ts +60 -0
- package/dist/cluster/router/ClusterRouterOptions.d.ts.map +1 -0
- package/dist/cluster/router/ClusterRouterOptions.js +41 -0
- package/dist/cluster/router/ClusterRouterOptions.js.map +1 -0
- package/dist/cluster/router/index.d.ts +3 -1
- package/dist/cluster/router/index.d.ts.map +1 -1
- package/dist/cluster/router/index.js +1 -0
- package/dist/cluster/router/index.js.map +1 -1
- package/dist/cluster/sharding/CassandraRememberEntitiesStore.d.ts +1 -15
- package/dist/cluster/sharding/CassandraRememberEntitiesStore.d.ts.map +1 -1
- package/dist/cluster/sharding/CassandraRememberEntitiesStore.js +35 -2
- package/dist/cluster/sharding/CassandraRememberEntitiesStore.js.map +1 -1
- package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.d.ts +63 -0
- package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.js +63 -0
- package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.js.map +1 -0
- package/dist/cluster/sharding/ClusterSharding.d.ts +18 -64
- package/dist/cluster/sharding/ClusterSharding.d.ts.map +1 -1
- package/dist/cluster/sharding/ClusterSharding.js +44 -20
- package/dist/cluster/sharding/ClusterSharding.js.map +1 -1
- package/dist/cluster/sharding/CoordinatorState.d.ts +1 -1
- package/dist/cluster/sharding/CoordinatorState.js +1 -1
- package/dist/cluster/sharding/ShardCoordinator.d.ts +3 -63
- package/dist/cluster/sharding/ShardCoordinator.d.ts.map +1 -1
- package/dist/cluster/sharding/ShardCoordinator.js +3 -3
- package/dist/cluster/sharding/ShardCoordinator.js.map +1 -1
- package/dist/cluster/sharding/ShardCoordinatorOptions.d.ts +111 -0
- package/dist/cluster/sharding/ShardCoordinatorOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/ShardCoordinatorOptions.js +69 -0
- package/dist/cluster/sharding/ShardCoordinatorOptions.js.map +1 -0
- package/dist/cluster/sharding/ShardRegion.d.ts +2 -33
- package/dist/cluster/sharding/ShardRegion.d.ts.map +1 -1
- package/dist/cluster/sharding/ShardRegion.js.map +1 -1
- package/dist/cluster/sharding/ShardedDaemonProcess.d.ts +2 -22
- package/dist/cluster/sharding/ShardedDaemonProcess.d.ts.map +1 -1
- package/dist/cluster/sharding/ShardedDaemonProcess.js +14 -11
- package/dist/cluster/sharding/ShardedDaemonProcess.js.map +1 -1
- package/dist/cluster/sharding/ShardedDaemonProcessOptions.d.ts +51 -0
- package/dist/cluster/sharding/ShardedDaemonProcessOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/ShardedDaemonProcessOptions.js +35 -0
- package/dist/cluster/sharding/ShardedDaemonProcessOptions.js.map +1 -0
- package/dist/cluster/sharding/ShardingOptions.d.ts +84 -0
- package/dist/cluster/sharding/ShardingOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/ShardingOptions.js +62 -0
- package/dist/cluster/sharding/ShardingOptions.js.map +1 -0
- package/dist/cluster/sharding/StartShardingOptions.d.ts +98 -0
- package/dist/cluster/sharding/StartShardingOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/StartShardingOptions.js +52 -0
- package/dist/cluster/sharding/StartShardingOptions.js.map +1 -0
- package/dist/cluster/singleton/ClusterSingleton.d.ts +2 -30
- package/dist/cluster/singleton/ClusterSingleton.d.ts.map +1 -1
- package/dist/cluster/singleton/ClusterSingleton.js +15 -9
- package/dist/cluster/singleton/ClusterSingleton.js.map +1 -1
- package/dist/cluster/singleton/ClusterSingletonManager.d.ts +3 -18
- package/dist/cluster/singleton/ClusterSingletonManager.d.ts.map +1 -1
- package/dist/cluster/singleton/ClusterSingletonManager.js +3 -3
- package/dist/cluster/singleton/ClusterSingletonManager.js.map +1 -1
- package/dist/cluster/singleton/ClusterSingletonManagerOptions.d.ts +49 -0
- package/dist/cluster/singleton/ClusterSingletonManagerOptions.d.ts.map +1 -0
- package/dist/cluster/singleton/ClusterSingletonManagerOptions.js +40 -0
- package/dist/cluster/singleton/ClusterSingletonManagerOptions.js.map +1 -0
- package/dist/cluster/singleton/StartSingletonOptions.d.ts +64 -0
- package/dist/cluster/singleton/StartSingletonOptions.d.ts.map +1 -0
- package/dist/cluster/singleton/StartSingletonOptions.js +40 -0
- package/dist/cluster/singleton/StartSingletonOptions.js.map +1 -0
- package/dist/cluster/singleton/index.d.ts +6 -2
- package/dist/cluster/singleton/index.d.ts.map +1 -1
- package/dist/cluster/singleton/index.js +2 -0
- package/dist/cluster/singleton/index.js.map +1 -1
- package/dist/config/ConfigKeys.d.ts +5 -0
- package/dist/config/ConfigKeys.d.ts.map +1 -1
- package/dist/config/ConfigKeys.js +5 -0
- package/dist/config/ConfigKeys.js.map +1 -1
- package/dist/coordination/Lease.d.ts +32 -14
- package/dist/coordination/Lease.d.ts.map +1 -1
- package/dist/coordination/LeaseOptions.d.ts +61 -0
- package/dist/coordination/LeaseOptions.d.ts.map +1 -0
- package/dist/coordination/LeaseOptions.js +50 -0
- package/dist/coordination/LeaseOptions.js.map +1 -0
- package/dist/coordination/index.d.ts +5 -2
- package/dist/coordination/index.d.ts.map +1 -1
- package/dist/coordination/index.js +2 -0
- package/dist/coordination/index.js.map +1 -1
- package/dist/coordination/leases/InMemoryLease.d.ts +18 -5
- package/dist/coordination/leases/InMemoryLease.d.ts.map +1 -1
- package/dist/coordination/leases/InMemoryLease.js +23 -11
- package/dist/coordination/leases/InMemoryLease.js.map +1 -1
- package/dist/coordination/leases/KubernetesLease.d.ts +19 -24
- package/dist/coordination/leases/KubernetesLease.d.ts.map +1 -1
- package/dist/coordination/leases/KubernetesLease.js +28 -9
- package/dist/coordination/leases/KubernetesLease.js.map +1 -1
- package/dist/coordination/leases/KubernetesLeaseOptions.d.ts +58 -0
- package/dist/coordination/leases/KubernetesLeaseOptions.d.ts.map +1 -0
- package/dist/coordination/leases/KubernetesLeaseOptions.js +42 -0
- package/dist/coordination/leases/KubernetesLeaseOptions.js.map +1 -0
- package/dist/crdt/DistributedData.d.ts +2 -22
- package/dist/crdt/DistributedData.d.ts.map +1 -1
- package/dist/crdt/DistributedData.js +3 -2
- package/dist/crdt/DistributedData.js.map +1 -1
- package/dist/crdt/DistributedDataOptions.d.ts +50 -0
- package/dist/crdt/DistributedDataOptions.d.ts.map +1 -0
- package/dist/crdt/DistributedDataOptions.js +28 -0
- package/dist/crdt/DistributedDataOptions.js.map +1 -0
- package/dist/crdt/index.d.ts +3 -1
- package/dist/crdt/index.d.ts.map +1 -1
- package/dist/crdt/index.js +1 -0
- package/dist/crdt/index.js.map +1 -1
- package/dist/delivery/ProducerController.d.ts +4 -19
- package/dist/delivery/ProducerController.d.ts.map +1 -1
- package/dist/delivery/ProducerController.js +4 -3
- package/dist/delivery/ProducerController.js.map +1 -1
- package/dist/delivery/ProducerControllerOptions.d.ts +50 -0
- package/dist/delivery/ProducerControllerOptions.d.ts.map +1 -0
- package/dist/delivery/ProducerControllerOptions.js +36 -0
- package/dist/delivery/ProducerControllerOptions.js.map +1 -0
- package/dist/delivery/ReliableDelivery.d.ts +3 -2
- package/dist/delivery/ReliableDelivery.d.ts.map +1 -1
- package/dist/delivery/ReliableDelivery.js +2 -2
- package/dist/delivery/ReliableDelivery.js.map +1 -1
- package/dist/delivery/index.d.ts +3 -1
- package/dist/delivery/index.d.ts.map +1 -1
- package/dist/delivery/index.js +1 -0
- package/dist/delivery/index.js.map +1 -1
- package/dist/discovery/AutoDiscoveryOptions.d.ts +72 -0
- package/dist/discovery/AutoDiscoveryOptions.d.ts.map +1 -0
- package/dist/discovery/AutoDiscoveryOptions.js +34 -0
- package/dist/discovery/AutoDiscoveryOptions.js.map +1 -0
- package/dist/discovery/ConfigSeedProvider.d.ts +2 -7
- package/dist/discovery/ConfigSeedProvider.d.ts.map +1 -1
- package/dist/discovery/ConfigSeedProvider.js +4 -3
- package/dist/discovery/ConfigSeedProvider.js.map +1 -1
- package/dist/discovery/ConfigSeedProviderOptions.d.ts +34 -0
- package/dist/discovery/ConfigSeedProviderOptions.d.ts.map +1 -0
- package/dist/discovery/ConfigSeedProviderOptions.js +27 -0
- package/dist/discovery/ConfigSeedProviderOptions.js.map +1 -0
- package/dist/discovery/DnsSeedProvider.d.ts +3 -27
- package/dist/discovery/DnsSeedProvider.d.ts.map +1 -1
- package/dist/discovery/DnsSeedProvider.js +4 -4
- package/dist/discovery/DnsSeedProvider.js.map +1 -1
- package/dist/discovery/DnsSeedProviderOptions.d.ts +67 -0
- package/dist/discovery/DnsSeedProviderOptions.d.ts.map +1 -0
- package/dist/discovery/DnsSeedProviderOptions.js +48 -0
- package/dist/discovery/DnsSeedProviderOptions.js.map +1 -0
- package/dist/discovery/KubernetesApiSeedProvider.d.ts +2 -13
- package/dist/discovery/KubernetesApiSeedProvider.d.ts.map +1 -1
- package/dist/discovery/KubernetesApiSeedProvider.js +2 -2
- package/dist/discovery/KubernetesApiSeedProvider.js.map +1 -1
- package/dist/discovery/KubernetesApiSeedProviderOptions.d.ts +46 -0
- package/dist/discovery/KubernetesApiSeedProviderOptions.d.ts.map +1 -0
- package/dist/discovery/KubernetesApiSeedProviderOptions.js +39 -0
- package/dist/discovery/KubernetesApiSeedProviderOptions.js.map +1 -0
- package/dist/discovery/Receptionist.d.ts +3 -6
- package/dist/discovery/Receptionist.d.ts.map +1 -1
- package/dist/discovery/Receptionist.js +10 -3
- package/dist/discovery/Receptionist.js.map +1 -1
- package/dist/discovery/ReceptionistOptions.d.ts +30 -0
- package/dist/discovery/ReceptionistOptions.d.ts.map +1 -0
- package/dist/discovery/ReceptionistOptions.js +24 -0
- package/dist/discovery/ReceptionistOptions.js.map +1 -0
- package/dist/discovery/autoDiscovery.d.ts +3 -44
- package/dist/discovery/autoDiscovery.d.ts.map +1 -1
- package/dist/discovery/autoDiscovery.js +31 -32
- package/dist/discovery/autoDiscovery.js.map +1 -1
- package/dist/discovery/index.d.ts +10 -5
- package/dist/discovery/index.d.ts.map +1 -1
- package/dist/discovery/index.js +5 -0
- package/dist/discovery/index.js.map +1 -1
- package/dist/http/HttpExtension.d.ts.map +1 -1
- package/dist/http/HttpExtension.js +69 -8
- package/dist/http/HttpExtension.js.map +1 -1
- package/dist/http/Route.d.ts +76 -4
- package/dist/http/Route.d.ts.map +1 -1
- package/dist/http/Route.js +74 -1
- package/dist/http/Route.js.map +1 -1
- package/dist/http/backend/ExpressBackend.d.ts +18 -12
- package/dist/http/backend/ExpressBackend.d.ts.map +1 -1
- package/dist/http/backend/ExpressBackend.js +134 -8
- package/dist/http/backend/ExpressBackend.js.map +1 -1
- package/dist/http/backend/ExpressBackendOptions.d.ts +47 -0
- package/dist/http/backend/ExpressBackendOptions.d.ts.map +1 -0
- package/dist/http/backend/ExpressBackendOptions.js +35 -0
- package/dist/http/backend/ExpressBackendOptions.js.map +1 -0
- package/dist/http/backend/FastifyBackend.d.ts +4 -1
- package/dist/http/backend/FastifyBackend.d.ts.map +1 -1
- package/dist/http/backend/FastifyBackend.js +71 -1
- package/dist/http/backend/FastifyBackend.js.map +1 -1
- package/dist/http/backend/HonoBackend.d.ts +19 -13
- package/dist/http/backend/HonoBackend.d.ts.map +1 -1
- package/dist/http/backend/HonoBackend.js +152 -5
- package/dist/http/backend/HonoBackend.js.map +1 -1
- package/dist/http/backend/HonoBackendOptions.d.ts +47 -0
- package/dist/http/backend/HonoBackendOptions.d.ts.map +1 -0
- package/dist/http/backend/HonoBackendOptions.js +35 -0
- package/dist/http/backend/HonoBackendOptions.js.map +1 -0
- package/dist/http/backend/HttpServerBackend.d.ts +24 -0
- package/dist/http/backend/HttpServerBackend.d.ts.map +1 -1
- package/dist/http/index.d.ts +11 -5
- package/dist/http/index.d.ts.map +1 -1
- package/dist/http/index.js +8 -1
- package/dist/http/index.js.map +1 -1
- package/dist/http/middleware/BearerToken.d.ts +44 -0
- package/dist/http/middleware/BearerToken.d.ts.map +1 -0
- package/dist/http/middleware/BearerToken.js +72 -0
- package/dist/http/middleware/BearerToken.js.map +1 -0
- package/dist/http/middleware/IpAllowlist.d.ts +45 -0
- package/dist/http/middleware/IpAllowlist.d.ts.map +1 -0
- package/dist/http/middleware/IpAllowlist.js +148 -0
- package/dist/http/middleware/IpAllowlist.js.map +1 -0
- package/dist/http/middleware/index.d.ts +5 -0
- package/dist/http/middleware/index.d.ts.map +1 -0
- package/dist/http/middleware/index.js +3 -0
- package/dist/http/middleware/index.js.map +1 -0
- package/dist/http/types.d.ts +9 -0
- package/dist/http/types.d.ts.map +1 -1
- package/dist/http/types.js.map +1 -1
- package/dist/http/ws/ConnectionWiring.d.ts +59 -0
- package/dist/http/ws/ConnectionWiring.d.ts.map +1 -0
- package/dist/http/ws/ConnectionWiring.js +112 -0
- package/dist/http/ws/ConnectionWiring.js.map +1 -0
- package/dist/http/ws/SocketAdapter.d.ts +72 -0
- package/dist/http/ws/SocketAdapter.d.ts.map +1 -0
- package/dist/http/ws/SocketAdapter.js +97 -0
- package/dist/http/ws/SocketAdapter.js.map +1 -0
- package/dist/http/ws/WebSocketClientActor.d.ts +66 -0
- package/dist/http/ws/WebSocketClientActor.d.ts.map +1 -0
- package/dist/http/ws/WebSocketClientActor.js +194 -0
- package/dist/http/ws/WebSocketClientActor.js.map +1 -0
- package/dist/http/ws/WebSocketClientOptions.d.ts +77 -0
- package/dist/http/ws/WebSocketClientOptions.d.ts.map +1 -0
- package/dist/http/ws/WebSocketClientOptions.js +69 -0
- package/dist/http/ws/WebSocketClientOptions.js.map +1 -0
- package/dist/http/ws/WebSocketConnectionActor.d.ts +51 -0
- package/dist/http/ws/WebSocketConnectionActor.d.ts.map +1 -0
- package/dist/http/ws/WebSocketConnectionActor.js +170 -0
- package/dist/http/ws/WebSocketConnectionActor.js.map +1 -0
- package/dist/http/ws/WebSocketRoute.d.ts +20 -0
- package/dist/http/ws/WebSocketRoute.d.ts.map +1 -0
- package/dist/http/ws/WebSocketRoute.js +44 -0
- package/dist/http/ws/WebSocketRoute.js.map +1 -0
- package/dist/http/ws/WebSocketRouteOptions.d.ts +54 -0
- package/dist/http/ws/WebSocketRouteOptions.d.ts.map +1 -0
- package/dist/http/ws/WebSocketRouteOptions.js +55 -0
- package/dist/http/ws/WebSocketRouteOptions.js.map +1 -0
- package/dist/http/ws/WebSocketServerActor.d.ts +65 -0
- package/dist/http/ws/WebSocketServerActor.d.ts.map +1 -0
- package/dist/http/ws/WebSocketServerActor.js +133 -0
- package/dist/http/ws/WebSocketServerActor.js.map +1 -0
- package/dist/http/ws/WsCodec.d.ts +65 -0
- package/dist/http/ws/WsCodec.d.ts.map +1 -0
- package/dist/http/ws/WsCodec.js +82 -0
- package/dist/http/ws/WsCodec.js.map +1 -0
- package/dist/http/ws/WsConnection.d.ts +59 -0
- package/dist/http/ws/WsConnection.d.ts.map +1 -0
- package/dist/http/ws/WsConnection.js +45 -0
- package/dist/http/ws/WsConnection.js.map +1 -0
- package/dist/http/ws/WsMessages.d.ts +91 -0
- package/dist/http/ws/WsMessages.d.ts.map +1 -0
- package/dist/http/ws/WsMessages.js +90 -0
- package/dist/http/ws/WsMessages.js.map +1 -0
- package/dist/http/ws/WsPolicy.d.ts +32 -0
- package/dist/http/ws/WsPolicy.d.ts.map +1 -0
- package/dist/http/ws/WsPolicy.js +43 -0
- package/dist/http/ws/WsPolicy.js.map +1 -0
- package/dist/http/ws/index.d.ts +22 -0
- package/dist/http/ws/index.d.ts.map +1 -0
- package/dist/http/ws/index.js +15 -0
- package/dist/http/ws/index.js.map +1 -0
- package/dist/http/ws/matchPattern.d.ts +12 -0
- package/dist/http/ws/matchPattern.d.ts.map +1 -0
- package/dist/http/ws/matchPattern.js +29 -0
- package/dist/http/ws/matchPattern.js.map +1 -0
- package/dist/http/ws/rawResponse.d.ts +15 -0
- package/dist/http/ws/rawResponse.d.ts.map +1 -0
- package/dist/http/ws/rawResponse.js +54 -0
- package/dist/http/ws/rawResponse.js.map +1 -0
- package/dist/http/ws/types.d.ts +70 -0
- package/dist/http/ws/types.d.ts.map +1 -0
- package/dist/http/ws/types.js +81 -0
- package/dist/http/ws/types.js.map +1 -0
- package/dist/http/ws/wsCtor.d.ts +34 -0
- package/dist/http/ws/wsCtor.d.ts.map +1 -0
- package/dist/http/ws/wsCtor.js +38 -0
- package/dist/http/ws/wsCtor.js.map +1 -0
- package/dist/index.d.ts +25 -23
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -11
- package/dist/index.js.map +1 -1
- package/dist/internal/ActorCell.d.ts +16 -1
- package/dist/internal/ActorCell.d.ts.map +1 -1
- package/dist/internal/ActorCell.js +32 -2
- package/dist/internal/ActorCell.js.map +1 -1
- package/dist/io/broker/AmqpActor.d.ts +19 -16
- package/dist/io/broker/AmqpActor.d.ts.map +1 -1
- package/dist/io/broker/AmqpActor.js +13 -5
- package/dist/io/broker/AmqpActor.js.map +1 -1
- package/dist/io/broker/AmqpOptions.d.ts +41 -0
- package/dist/io/broker/AmqpOptions.d.ts.map +1 -0
- package/dist/io/broker/AmqpOptions.js +34 -0
- package/dist/io/broker/AmqpOptions.js.map +1 -0
- package/dist/io/broker/BrokerActor.d.ts +4 -3
- package/dist/io/broker/BrokerActor.d.ts.map +1 -1
- package/dist/io/broker/BrokerActor.js +4 -2
- package/dist/io/broker/BrokerActor.js.map +1 -1
- package/dist/io/broker/BrokerOptions.d.ts +24 -0
- package/dist/io/broker/BrokerOptions.d.ts.map +1 -0
- package/dist/io/broker/BrokerOptions.js +29 -0
- package/dist/io/broker/BrokerOptions.js.map +1 -0
- package/dist/io/broker/BrokerSettings.d.ts +2 -2
- package/dist/io/broker/BrokerSettings.d.ts.map +1 -1
- package/dist/io/broker/BrokerSettings.js.map +1 -1
- package/dist/io/broker/GrpcClientActor.d.ts +6 -19
- package/dist/io/broker/GrpcClientActor.d.ts.map +1 -1
- package/dist/io/broker/GrpcClientActor.js +1 -1
- package/dist/io/broker/GrpcClientActor.js.map +1 -1
- package/dist/io/broker/GrpcClientOptions.d.ts +48 -0
- package/dist/io/broker/GrpcClientOptions.d.ts.map +1 -0
- package/dist/io/broker/GrpcClientOptions.js +42 -0
- package/dist/io/broker/GrpcClientOptions.js.map +1 -0
- package/dist/io/broker/GrpcServerActor.d.ts +3 -24
- package/dist/io/broker/GrpcServerActor.d.ts.map +1 -1
- package/dist/io/broker/GrpcServerActor.js +3 -3
- package/dist/io/broker/GrpcServerActor.js.map +1 -1
- package/dist/io/broker/GrpcServerOptions.d.ts +58 -0
- package/dist/io/broker/GrpcServerOptions.d.ts.map +1 -0
- package/dist/io/broker/GrpcServerOptions.js +44 -0
- package/dist/io/broker/GrpcServerOptions.js.map +1 -0
- package/dist/io/broker/JetStreamActor.d.ts +13 -35
- package/dist/io/broker/JetStreamActor.d.ts.map +1 -1
- package/dist/io/broker/JetStreamActor.js +2 -2
- package/dist/io/broker/JetStreamActor.js.map +1 -1
- package/dist/io/broker/JetStreamOptions.d.ts +64 -0
- package/dist/io/broker/JetStreamOptions.d.ts.map +1 -0
- package/dist/io/broker/JetStreamOptions.js +54 -0
- package/dist/io/broker/JetStreamOptions.js.map +1 -0
- package/dist/io/broker/KafkaActor.d.ts +13 -54
- package/dist/io/broker/KafkaActor.d.ts.map +1 -1
- package/dist/io/broker/KafkaActor.js +20 -8
- package/dist/io/broker/KafkaActor.js.map +1 -1
- package/dist/io/broker/KafkaOptions.d.ts +82 -0
- package/dist/io/broker/KafkaOptions.d.ts.map +1 -0
- package/dist/io/broker/KafkaOptions.js +50 -0
- package/dist/io/broker/KafkaOptions.js.map +1 -0
- package/dist/io/broker/MqttActor.d.ts +174 -114
- package/dist/io/broker/MqttActor.d.ts.map +1 -1
- package/dist/io/broker/MqttActor.js +328 -103
- package/dist/io/broker/MqttActor.js.map +1 -1
- package/dist/io/broker/MqttCodec.d.ts +70 -0
- package/dist/io/broker/MqttCodec.d.ts.map +1 -0
- package/dist/io/broker/MqttCodec.js +98 -0
- package/dist/io/broker/MqttCodec.js.map +1 -0
- package/dist/io/broker/MqttMessages.d.ts +145 -0
- package/dist/io/broker/MqttMessages.d.ts.map +1 -0
- package/dist/io/broker/MqttMessages.js +102 -0
- package/dist/io/broker/MqttMessages.js.map +1 -0
- package/dist/io/broker/MqttOptions.d.ts +100 -0
- package/dist/io/broker/MqttOptions.d.ts.map +1 -0
- package/dist/io/broker/MqttOptions.js +73 -0
- package/dist/io/broker/MqttOptions.js.map +1 -0
- package/dist/io/broker/NatsActor.d.ts +6 -21
- package/dist/io/broker/NatsActor.d.ts.map +1 -1
- package/dist/io/broker/NatsActor.js +1 -1
- package/dist/io/broker/NatsActor.js.map +1 -1
- package/dist/io/broker/NatsOptions.d.ts +51 -0
- package/dist/io/broker/NatsOptions.d.ts.map +1 -0
- package/dist/io/broker/NatsOptions.js +42 -0
- package/dist/io/broker/NatsOptions.js.map +1 -0
- package/dist/io/broker/RedisStreamsActor.d.ts +6 -24
- package/dist/io/broker/RedisStreamsActor.d.ts.map +1 -1
- package/dist/io/broker/RedisStreamsActor.js +1 -1
- package/dist/io/broker/RedisStreamsActor.js.map +1 -1
- package/dist/io/broker/RedisStreamsOptions.d.ts +51 -0
- package/dist/io/broker/RedisStreamsOptions.d.ts.map +1 -0
- package/dist/io/broker/RedisStreamsOptions.js +38 -0
- package/dist/io/broker/RedisStreamsOptions.js.map +1 -0
- package/dist/io/broker/SseActor.d.ts +6 -15
- package/dist/io/broker/SseActor.d.ts.map +1 -1
- package/dist/io/broker/SseActor.js +1 -1
- package/dist/io/broker/SseActor.js.map +1 -1
- package/dist/io/broker/SseOptions.d.ts +38 -0
- package/dist/io/broker/SseOptions.d.ts.map +1 -0
- package/dist/io/broker/SseOptions.js +30 -0
- package/dist/io/broker/SseOptions.js.map +1 -0
- package/dist/io/broker/TcpSocketActor.d.ts +6 -21
- package/dist/io/broker/TcpSocketActor.d.ts.map +1 -1
- package/dist/io/broker/TcpSocketActor.js +1 -1
- package/dist/io/broker/TcpSocketActor.js.map +1 -1
- package/dist/io/broker/TcpSocketOptions.d.ts +46 -0
- package/dist/io/broker/TcpSocketOptions.d.ts.map +1 -0
- package/dist/io/broker/TcpSocketOptions.js +34 -0
- package/dist/io/broker/TcpSocketOptions.js.map +1 -0
- package/dist/io/broker/UdpSocketActor.d.ts +6 -17
- package/dist/io/broker/UdpSocketActor.d.ts.map +1 -1
- package/dist/io/broker/UdpSocketActor.js +1 -1
- package/dist/io/broker/UdpSocketActor.js.map +1 -1
- package/dist/io/broker/UdpSocketOptions.d.ts +42 -0
- package/dist/io/broker/UdpSocketOptions.d.ts.map +1 -0
- package/dist/io/broker/UdpSocketOptions.js +34 -0
- package/dist/io/broker/UdpSocketOptions.js.map +1 -0
- package/dist/io/broker/index.d.ts +39 -19
- package/dist/io/broker/index.d.ts.map +1 -1
- package/dist/io/broker/index.js +21 -4
- package/dist/io/broker/index.js.map +1 -1
- package/dist/mailbox/BoundedMailbox.d.ts +12 -0
- package/dist/mailbox/BoundedMailbox.d.ts.map +1 -1
- package/dist/mailbox/BoundedMailbox.js +7 -1
- package/dist/mailbox/BoundedMailbox.js.map +1 -1
- package/dist/management/HttpManagement.d.ts +34 -1
- package/dist/management/HttpManagement.d.ts.map +1 -1
- package/dist/management/HttpManagement.js +30 -4
- package/dist/management/HttpManagement.js.map +1 -1
- package/dist/metrics/PromClientAdapter.d.ts +2 -12
- package/dist/metrics/PromClientAdapter.d.ts.map +1 -1
- package/dist/metrics/PromClientAdapter.js +2 -2
- package/dist/metrics/PromClientAdapter.js.map +1 -1
- package/dist/metrics/PromClientAdapterOptions.d.ts +46 -0
- package/dist/metrics/PromClientAdapterOptions.d.ts.map +1 -0
- package/dist/metrics/PromClientAdapterOptions.js +35 -0
- package/dist/metrics/PromClientAdapterOptions.js.map +1 -0
- package/dist/metrics/index.d.ts +3 -1
- package/dist/metrics/index.d.ts.map +1 -1
- package/dist/metrics/index.js +1 -0
- package/dist/metrics/index.js.map +1 -1
- package/dist/persistence/DurableStateActor.d.ts +4 -9
- package/dist/persistence/DurableStateActor.d.ts.map +1 -1
- package/dist/persistence/DurableStateActor.js +3 -3
- package/dist/persistence/DurableStateActor.js.map +1 -1
- package/dist/persistence/DurableStateOptions.d.ts +40 -0
- package/dist/persistence/DurableStateOptions.d.ts.map +1 -0
- package/dist/persistence/DurableStateOptions.js +36 -0
- package/dist/persistence/DurableStateOptions.js.map +1 -0
- package/dist/persistence/PersistenceOptions.d.ts +45 -0
- package/dist/persistence/PersistenceOptions.d.ts.map +1 -1
- package/dist/persistence/ReplicatedEventSourcedActor.d.ts.map +1 -1
- package/dist/persistence/ReplicatedEventSourcedActor.js +2 -2
- package/dist/persistence/ReplicatedEventSourcedActor.js.map +1 -1
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.d.ts +32 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.js +120 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.js.map +1 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.d.ts +38 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.js +38 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.js.map +1 -0
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.d.ts +4 -9
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.d.ts.map +1 -1
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.js +49 -7
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.js.map +1 -1
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.d.ts +61 -0
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.js +42 -0
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.js.map +1 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStore.d.ts +38 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStore.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStore.js +121 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStore.js.map +1 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.d.ts +38 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.js +38 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.js.map +1 -0
- package/dist/persistence/index.d.ts +59 -16
- package/dist/persistence/index.d.ts.map +1 -1
- package/dist/persistence/index.js +33 -2
- package/dist/persistence/index.js.map +1 -1
- package/dist/persistence/journals/CassandraJournal.d.ts +1 -48
- package/dist/persistence/journals/CassandraJournal.d.ts.map +1 -1
- package/dist/persistence/journals/CassandraJournal.js +2 -2
- package/dist/persistence/journals/CassandraJournal.js.map +1 -1
- package/dist/persistence/journals/CassandraJournalOptions.d.ts +107 -0
- package/dist/persistence/journals/CassandraJournalOptions.d.ts.map +1 -0
- package/dist/persistence/journals/CassandraJournalOptions.js +90 -0
- package/dist/persistence/journals/CassandraJournalOptions.js.map +1 -0
- package/dist/persistence/journals/CassandraPlugin.d.ts +1 -16
- package/dist/persistence/journals/CassandraPlugin.d.ts.map +1 -1
- package/dist/persistence/journals/CassandraPlugin.js +9 -4
- package/dist/persistence/journals/CassandraPlugin.js.map +1 -1
- package/dist/persistence/journals/CassandraPluginOptions.d.ts +51 -0
- package/dist/persistence/journals/CassandraPluginOptions.d.ts.map +1 -0
- package/dist/persistence/journals/CassandraPluginOptions.js +37 -0
- package/dist/persistence/journals/CassandraPluginOptions.js.map +1 -0
- package/dist/persistence/journals/MariaDbClient.d.ts +54 -0
- package/dist/persistence/journals/MariaDbClient.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbClient.js +40 -0
- package/dist/persistence/journals/MariaDbClient.js.map +1 -0
- package/dist/persistence/journals/MariaDbJournal.d.ts +29 -0
- package/dist/persistence/journals/MariaDbJournal.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbJournal.js +161 -0
- package/dist/persistence/journals/MariaDbJournal.js.map +1 -0
- package/dist/persistence/journals/MariaDbJournalOptions.d.ts +43 -0
- package/dist/persistence/journals/MariaDbJournalOptions.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbJournalOptions.js +43 -0
- package/dist/persistence/journals/MariaDbJournalOptions.js.map +1 -0
- package/dist/persistence/journals/MariaDbPlugin.d.ts +27 -0
- package/dist/persistence/journals/MariaDbPlugin.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbPlugin.js +30 -0
- package/dist/persistence/journals/MariaDbPlugin.js.map +1 -0
- package/dist/persistence/journals/MariaDbPluginOptions.d.ts +52 -0
- package/dist/persistence/journals/MariaDbPluginOptions.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbPluginOptions.js +38 -0
- package/dist/persistence/journals/MariaDbPluginOptions.js.map +1 -0
- package/dist/persistence/journals/PostgresClient.d.ts +56 -0
- package/dist/persistence/journals/PostgresClient.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresClient.js +35 -0
- package/dist/persistence/journals/PostgresClient.js.map +1 -0
- package/dist/persistence/journals/PostgresJournal.d.ts +41 -0
- package/dist/persistence/journals/PostgresJournal.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresJournal.js +176 -0
- package/dist/persistence/journals/PostgresJournal.js.map +1 -0
- package/dist/persistence/journals/PostgresJournalOptions.d.ts +44 -0
- package/dist/persistence/journals/PostgresJournalOptions.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresJournalOptions.js +44 -0
- package/dist/persistence/journals/PostgresJournalOptions.js.map +1 -0
- package/dist/persistence/journals/PostgresPlugin.d.ts +32 -0
- package/dist/persistence/journals/PostgresPlugin.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresPlugin.js +35 -0
- package/dist/persistence/journals/PostgresPlugin.js.map +1 -0
- package/dist/persistence/journals/PostgresPluginOptions.d.ts +54 -0
- package/dist/persistence/journals/PostgresPluginOptions.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresPluginOptions.js +39 -0
- package/dist/persistence/journals/PostgresPluginOptions.js.map +1 -0
- package/dist/persistence/journals/SqliteJournal.d.ts +5 -19
- package/dist/persistence/journals/SqliteJournal.d.ts.map +1 -1
- package/dist/persistence/journals/SqliteJournal.js +10 -9
- package/dist/persistence/journals/SqliteJournal.js.map +1 -1
- package/dist/persistence/journals/SqliteJournalOptions.d.ts +41 -0
- package/dist/persistence/journals/SqliteJournalOptions.d.ts.map +1 -0
- package/dist/persistence/journals/SqliteJournalOptions.js +31 -0
- package/dist/persistence/journals/SqliteJournalOptions.js.map +1 -0
- package/dist/persistence/object-storage/BodyCodec.d.ts +43 -0
- package/dist/persistence/object-storage/BodyCodec.d.ts.map +1 -1
- package/dist/persistence/object-storage/BodyCodec.js +78 -20
- package/dist/persistence/object-storage/BodyCodec.js.map +1 -1
- package/dist/persistence/object-storage/Compression.d.ts +21 -7
- package/dist/persistence/object-storage/Compression.d.ts.map +1 -1
- package/dist/persistence/object-storage/Compression.js +79 -29
- package/dist/persistence/object-storage/Compression.js.map +1 -1
- package/dist/persistence/object-storage/FilesystemObjectStorageBackend.d.ts +2 -61
- package/dist/persistence/object-storage/FilesystemObjectStorageBackend.d.ts.map +1 -1
- package/dist/persistence/object-storage/FilesystemObjectStorageBackend.js +56 -11
- package/dist/persistence/object-storage/FilesystemObjectStorageBackend.js.map +1 -1
- package/dist/persistence/object-storage/FilesystemObjectStorageOptions.d.ts +45 -0
- package/dist/persistence/object-storage/FilesystemObjectStorageOptions.d.ts.map +1 -0
- package/dist/persistence/object-storage/FilesystemObjectStorageOptions.js +30 -0
- package/dist/persistence/object-storage/FilesystemObjectStorageOptions.js.map +1 -0
- package/dist/persistence/object-storage/Integrity.d.ts +43 -0
- package/dist/persistence/object-storage/Integrity.d.ts.map +1 -0
- package/dist/persistence/object-storage/Integrity.js +66 -0
- package/dist/persistence/object-storage/Integrity.js.map +1 -0
- package/dist/persistence/object-storage/ObjectStoragePlugin.d.ts +6 -22
- package/dist/persistence/object-storage/ObjectStoragePlugin.d.ts.map +1 -1
- package/dist/persistence/object-storage/ObjectStoragePlugin.js +36 -28
- package/dist/persistence/object-storage/ObjectStoragePlugin.js.map +1 -1
- package/dist/persistence/object-storage/ObjectStoragePluginOptions.d.ts +60 -0
- package/dist/persistence/object-storage/ObjectStoragePluginOptions.d.ts.map +1 -0
- package/dist/persistence/object-storage/ObjectStoragePluginOptions.js +52 -0
- package/dist/persistence/object-storage/ObjectStoragePluginOptions.js.map +1 -0
- package/dist/persistence/object-storage/PluginConfig.d.ts +5 -2
- package/dist/persistence/object-storage/PluginConfig.d.ts.map +1 -1
- package/dist/persistence/object-storage/PluginConfig.js +8 -0
- package/dist/persistence/object-storage/PluginConfig.js.map +1 -1
- package/dist/persistence/object-storage/S3ObjectStorageBackend.d.ts +1 -30
- package/dist/persistence/object-storage/S3ObjectStorageBackend.d.ts.map +1 -1
- package/dist/persistence/object-storage/S3ObjectStorageBackend.js +12 -7
- package/dist/persistence/object-storage/S3ObjectStorageBackend.js.map +1 -1
- package/dist/persistence/object-storage/S3ObjectStorageOptions.d.ts +64 -0
- package/dist/persistence/object-storage/S3ObjectStorageOptions.d.ts.map +1 -0
- package/dist/persistence/object-storage/S3ObjectStorageOptions.js +42 -0
- package/dist/persistence/object-storage/S3ObjectStorageOptions.js.map +1 -0
- package/dist/persistence/object-storage/reEncryptionSweep.d.ts +72 -0
- package/dist/persistence/object-storage/reEncryptionSweep.d.ts.map +1 -1
- package/dist/persistence/object-storage/reEncryptionSweep.js +82 -2
- package/dist/persistence/object-storage/reEncryptionSweep.js.map +1 -1
- package/dist/persistence/projection/ProjectionActor.d.ts +4 -24
- package/dist/persistence/projection/ProjectionActor.d.ts.map +1 -1
- package/dist/persistence/projection/ProjectionActor.js +36 -2
- package/dist/persistence/projection/ProjectionActor.js.map +1 -1
- package/dist/persistence/projection/ProjectionOptions.d.ts +109 -0
- package/dist/persistence/projection/ProjectionOptions.d.ts.map +1 -0
- package/dist/persistence/projection/ProjectionOptions.js +108 -0
- package/dist/persistence/projection/ProjectionOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/CachedSnapshotStore.d.ts +2 -10
- package/dist/persistence/snapshot-stores/CachedSnapshotStore.d.ts.map +1 -1
- package/dist/persistence/snapshot-stores/CachedSnapshotStore.js +12 -6
- package/dist/persistence/snapshot-stores/CachedSnapshotStore.js.map +1 -1
- package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.d.ts +37 -0
- package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.js +31 -0
- package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/CassandraSnapshotStore.d.ts +1 -11
- package/dist/persistence/snapshot-stores/CassandraSnapshotStore.d.ts.map +1 -1
- package/dist/persistence/snapshot-stores/CassandraSnapshotStore.js +3 -3
- package/dist/persistence/snapshot-stores/CassandraSnapshotStore.js.map +1 -1
- package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.d.ts +61 -0
- package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.js +73 -0
- package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.d.ts +30 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.js +102 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.js.map +1 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.d.ts +42 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.js +42 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.d.ts +2 -15
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.d.ts.map +1 -1
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.js +10 -6
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.js.map +1 -1
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.d.ts +45 -0
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.js +38 -0
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStore.d.ts +31 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStore.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStore.js +101 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStore.js.map +1 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.d.ts +42 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.js +42 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/SqliteSnapshotStore.d.ts +2 -15
- package/dist/persistence/snapshot-stores/SqliteSnapshotStore.d.ts.map +1 -1
- package/dist/persistence/snapshot-stores/SqliteSnapshotStore.js +7 -6
- package/dist/persistence/snapshot-stores/SqliteSnapshotStore.js.map +1 -1
- package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.d.ts +40 -0
- package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.js +31 -0
- package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.js.map +1 -0
- package/dist/runtime/http/BunHonoRunner.d.ts +7 -1
- package/dist/runtime/http/BunHonoRunner.d.ts.map +1 -1
- package/dist/runtime/http/BunHonoRunner.js +22 -0
- package/dist/runtime/http/BunHonoRunner.js.map +1 -1
- package/dist/runtime/http/DenoHonoRunner.d.ts +5 -2
- package/dist/runtime/http/DenoHonoRunner.d.ts.map +1 -1
- package/dist/runtime/http/DenoHonoRunner.js +19 -2
- package/dist/runtime/http/DenoHonoRunner.js.map +1 -1
- package/dist/runtime/http/HonoServerRunner.d.ts +39 -0
- package/dist/runtime/http/HonoServerRunner.d.ts.map +1 -1
- package/dist/runtime/http/NodeHonoRunner.d.ts +3 -1
- package/dist/runtime/http/NodeHonoRunner.d.ts.map +1 -1
- package/dist/runtime/http/NodeHonoRunner.js +22 -0
- package/dist/runtime/http/NodeHonoRunner.js.map +1 -1
- package/dist/runtime/http/index.d.ts +1 -1
- package/dist/runtime/http/index.d.ts.map +1 -1
- package/dist/runtime/http/index.js.map +1 -1
- package/dist/testkit/ManualScheduler.d.ts +2 -1
- package/dist/testkit/ManualScheduler.d.ts.map +1 -1
- package/dist/testkit/ManualScheduler.js +2 -1
- package/dist/testkit/ManualScheduler.js.map +1 -1
- package/dist/testkit/MockCluster.d.ts +74 -0
- package/dist/testkit/MockCluster.d.ts.map +1 -0
- package/dist/testkit/MockCluster.js +163 -0
- package/dist/testkit/MockCluster.js.map +1 -0
- package/dist/testkit/MultiNodeClusterFixture.d.ts +62 -0
- package/dist/testkit/MultiNodeClusterFixture.d.ts.map +1 -0
- package/dist/testkit/MultiNodeClusterFixture.js +43 -0
- package/dist/testkit/MultiNodeClusterFixture.js.map +1 -0
- package/dist/testkit/MultiNodeSpec.d.ts +45 -3
- package/dist/testkit/MultiNodeSpec.d.ts.map +1 -1
- package/dist/testkit/MultiNodeSpec.js +108 -14
- package/dist/testkit/MultiNodeSpec.js.map +1 -1
- package/dist/testkit/ParallelMultiNodeSpec.d.ts +12 -2
- package/dist/testkit/ParallelMultiNodeSpec.d.ts.map +1 -1
- package/dist/testkit/ParallelMultiNodeSpec.js +49 -4
- package/dist/testkit/ParallelMultiNodeSpec.js.map +1 -1
- package/dist/testkit/SnapshotMigrationTest.d.ts +86 -0
- package/dist/testkit/SnapshotMigrationTest.d.ts.map +1 -0
- package/dist/testkit/SnapshotMigrationTest.js +77 -0
- package/dist/testkit/SnapshotMigrationTest.js.map +1 -0
- package/dist/testkit/TestKit.d.ts +6 -8
- package/dist/testkit/TestKit.d.ts.map +1 -1
- package/dist/testkit/TestKit.js +10 -6
- package/dist/testkit/TestKit.js.map +1 -1
- package/dist/testkit/TestKitOptions.d.ts +26 -0
- package/dist/testkit/TestKitOptions.d.ts.map +1 -0
- package/dist/testkit/TestKitOptions.js +19 -0
- package/dist/testkit/TestKitOptions.js.map +1 -0
- package/dist/testkit/TestProbe.d.ts +2 -7
- package/dist/testkit/TestProbe.d.ts.map +1 -1
- package/dist/testkit/TestProbe.js +2 -1
- package/dist/testkit/TestProbe.js.map +1 -1
- package/dist/testkit/TestProbeOptions.d.ts +26 -0
- package/dist/testkit/TestProbeOptions.d.ts.map +1 -0
- package/dist/testkit/TestProbeOptions.js +19 -0
- package/dist/testkit/TestProbeOptions.js.map +1 -0
- package/dist/testkit/index.d.ts +10 -2
- package/dist/testkit/index.d.ts.map +1 -1
- package/dist/testkit/index.js +5 -0
- package/dist/testkit/index.js.map +1 -1
- package/dist/testkit/internal/parallel-multi-node-bootstrap.d.ts.map +1 -1
- package/dist/testkit/internal/parallel-multi-node-bootstrap.js +16 -12
- package/dist/testkit/internal/parallel-multi-node-bootstrap.js.map +1 -1
- package/dist/tracing/OtelAdapter.d.ts +4 -12
- package/dist/tracing/OtelAdapter.d.ts.map +1 -1
- package/dist/tracing/OtelAdapter.js +4 -2
- package/dist/tracing/OtelAdapter.js.map +1 -1
- package/dist/tracing/OtelAdapterOptions.d.ts +42 -0
- package/dist/tracing/OtelAdapterOptions.d.ts.map +1 -0
- package/dist/tracing/OtelAdapterOptions.js +34 -0
- package/dist/tracing/OtelAdapterOptions.js.map +1 -0
- package/dist/tracing/OtelLogsAdapter.d.ts +100 -0
- package/dist/tracing/OtelLogsAdapter.d.ts.map +1 -0
- package/dist/tracing/OtelLogsAdapter.js +130 -0
- package/dist/tracing/OtelLogsAdapter.js.map +1 -0
- package/dist/tracing/index.d.ts +5 -1
- package/dist/tracing/index.d.ts.map +1 -1
- package/dist/tracing/index.js +2 -0
- package/dist/tracing/index.js.map +1 -1
- package/dist/util/Constants.d.ts +23 -0
- package/dist/util/Constants.d.ts.map +1 -1
- package/dist/util/Constants.js +23 -0
- package/dist/util/Constants.js.map +1 -1
- package/dist/util/Lazy.d.ts +31 -0
- package/dist/util/Lazy.d.ts.map +1 -1
- package/dist/util/Lazy.js +70 -0
- package/dist/util/Lazy.js.map +1 -1
- package/dist/util/OptionsBuilder.d.ts +48 -0
- package/dist/util/OptionsBuilder.d.ts.map +1 -0
- package/dist/util/OptionsBuilder.js +53 -0
- package/dist/util/OptionsBuilder.js.map +1 -0
- package/dist/worker/WorkerCluster.d.ts +2 -11
- package/dist/worker/WorkerCluster.d.ts.map +1 -1
- package/dist/worker/WorkerCluster.js +2 -1
- package/dist/worker/WorkerCluster.js.map +1 -1
- package/dist/worker/WorkerClusterOptions.d.ts +55 -0
- package/dist/worker/WorkerClusterOptions.d.ts.map +1 -0
- package/dist/worker/WorkerClusterOptions.js +55 -0
- package/dist/worker/WorkerClusterOptions.js.map +1 -0
- package/dist/worker/index.d.ts +3 -1
- package/dist/worker/index.d.ts.map +1 -1
- package/dist/worker/index.js +1 -0
- package/dist/worker/index.js.map +1 -1
- package/package.json +56 -13
- package/dist/io/broker/ServerWebSocketActor.d.ts +0 -109
- package/dist/io/broker/ServerWebSocketActor.d.ts.map +0 -1
- package/dist/io/broker/ServerWebSocketActor.js +0 -128
- package/dist/io/broker/ServerWebSocketActor.js.map +0 -1
- package/dist/io/broker/WebSocketActor.d.ts +0 -77
- package/dist/io/broker/WebSocketActor.d.ts.map +0 -1
- package/dist/io/broker/WebSocketActor.js +0 -217
- package/dist/io/broker/WebSocketActor.js.map +0 -1
- package/dist/io/broker/WebSocketServerAdapters.d.ts +0 -140
- package/dist/io/broker/WebSocketServerAdapters.d.ts.map +0 -1
- package/dist/io/broker/WebSocketServerAdapters.js +0 -155
- package/dist/io/broker/WebSocketServerAdapters.js.map +0 -1
|
@@ -2,6 +2,7 @@ import { extensionId } from '../../Extension.js';
|
|
|
2
2
|
import { Props } from '../../Props.js';
|
|
3
3
|
import { fromNullable } from '../../util/Option.js';
|
|
4
4
|
import { ClusterSingletonManager, singletonManagerPath, } from './ClusterSingletonManager.js';
|
|
5
|
+
import { ClusterSingletonManagerOptions } from './ClusterSingletonManagerOptions.js';
|
|
5
6
|
import { ClusterSingletonProxy } from './ClusterSingletonProxy.js';
|
|
6
7
|
/**
|
|
7
8
|
* Extension registered on the ActorSystem that manages all
|
|
@@ -15,7 +16,8 @@ export class ClusterSingleton {
|
|
|
15
16
|
constructor(system) {
|
|
16
17
|
this.system = system;
|
|
17
18
|
}
|
|
18
|
-
start(cluster,
|
|
19
|
+
start(cluster, options) {
|
|
20
|
+
const settings = options;
|
|
19
21
|
const existing = this.handles.get(settings.typeName);
|
|
20
22
|
if (existing)
|
|
21
23
|
return existing;
|
|
@@ -31,14 +33,18 @@ export class ClusterSingleton {
|
|
|
31
33
|
managerRef.tell({ t: 'singleton-deliver', body: env.body });
|
|
32
34
|
});
|
|
33
35
|
const managerProps = Props.create(() => {
|
|
34
|
-
const
|
|
35
|
-
cluster
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
36
|
+
const managerOptions = ClusterSingletonManagerOptions.create()
|
|
37
|
+
.withCluster(cluster)
|
|
38
|
+
.withTypeName(settings.typeName)
|
|
39
|
+
.withSingletonProps(settings.props);
|
|
40
|
+
if (settings.role !== undefined)
|
|
41
|
+
managerOptions.withRole(settings.role);
|
|
42
|
+
if (settings.lease !== undefined)
|
|
43
|
+
managerOptions.withLease(settings.lease);
|
|
44
|
+
if (settings.acquireRetryIntervalMs !== undefined) {
|
|
45
|
+
managerOptions.withAcquireRetryIntervalMs(settings.acquireRetryIntervalMs);
|
|
46
|
+
}
|
|
47
|
+
const mgr = new ClusterSingletonManager(managerOptions);
|
|
42
48
|
mgr._envelopeUnsub = envelopeUnsub;
|
|
43
49
|
return mgr;
|
|
44
50
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClusterSingleton.js","sourceRoot":"","sources":["../../../src/cluster/singleton/ClusterSingleton.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ClusterSingleton.js","sourceRoot":"","sources":["../../../src/cluster/singleton/ClusterSingleton.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { Actor } from '../../Actor.js';
|
|
2
|
-
import type { Lease } from '../../coordination/Lease.js';
|
|
3
|
-
import type { Props } from '../../Props.js';
|
|
4
2
|
import { Terminated } from '../../SystemMessages.js';
|
|
5
|
-
import type {
|
|
3
|
+
import type { ClusterSingletonManagerOptions, ClusterSingletonManagerOptionsType } from './ClusterSingletonManagerOptions.js';
|
|
6
4
|
/**
|
|
7
5
|
* Path at which every node hosts its ClusterSingletonManager for a given
|
|
8
6
|
* singleton typeName. Used by the proxy/envelope layer to address the
|
|
@@ -33,19 +31,6 @@ type ManagerEvent = {
|
|
|
33
31
|
t: 'acquire-retry';
|
|
34
32
|
};
|
|
35
33
|
type Inbox = SingletonDeliver | ManagerEvent | Terminated;
|
|
36
|
-
export interface ClusterSingletonManagerSettings<T> {
|
|
37
|
-
readonly cluster: Cluster;
|
|
38
|
-
/** Logical name for this singleton; also used as the child-actor name. */
|
|
39
|
-
readonly typeName: string;
|
|
40
|
-
/** How to construct the singleton actor. Only instantiated on the leader. */
|
|
41
|
-
readonly singletonProps: Props<T>;
|
|
42
|
-
/** Optional role — only nodes with this role will host the singleton. */
|
|
43
|
-
readonly role?: string;
|
|
44
|
-
/** Optional split-brain protection — see {@link StartSingletonSettings.lease}. */
|
|
45
|
-
readonly lease?: Lease;
|
|
46
|
-
/** Retry interval for `lease.acquire()` after a failed attempt. Default: 5 s. */
|
|
47
|
-
readonly acquireRetryIntervalMs?: number;
|
|
48
|
-
}
|
|
49
34
|
/**
|
|
50
35
|
* Runs on every node. Watches cluster events and (re)spawns the singleton
|
|
51
36
|
* child when this node is the cluster leader; stops the child when it is not.
|
|
@@ -65,7 +50,6 @@ export interface ClusterSingletonManagerSettings<T> {
|
|
|
65
50
|
* with an in-flight acquire.
|
|
66
51
|
*/
|
|
67
52
|
export declare class ClusterSingletonManager<T> extends Actor<Inbox> {
|
|
68
|
-
readonly settings: ClusterSingletonManagerSettings<T>;
|
|
69
53
|
private child;
|
|
70
54
|
/**
|
|
71
55
|
* The previous child while it is mid-stop. We watch every child we
|
|
@@ -88,7 +72,8 @@ export declare class ClusterSingletonManager<T> extends Actor<Inbox> {
|
|
|
88
72
|
private leaseState;
|
|
89
73
|
/** Callback the extension hands us so we can release the envelope path on stop. */
|
|
90
74
|
_envelopeUnsub: (() => void) | null;
|
|
91
|
-
|
|
75
|
+
readonly settings: ClusterSingletonManagerOptionsType<T>;
|
|
76
|
+
constructor(options: ClusterSingletonManagerOptions<T>);
|
|
92
77
|
preStart(): void;
|
|
93
78
|
postStop(): Promise<void>;
|
|
94
79
|
onReceive(msg: Inbox): void | Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClusterSingletonManager.d.ts","sourceRoot":"","sources":["../../../src/cluster/singleton/ClusterSingletonManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"ClusterSingletonManager.d.ts","sourceRoot":"","sources":["../../../src/cluster/singleton/ClusterSingletonManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAGvC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,KAAK,EAAE,8BAA8B,EAAE,kCAAkC,EAAE,MAAM,qCAAqC,CAAC;AAG9H;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEjF;AAED,oEAAoE;AACpE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,CAAC,EAAE,mBAAmB,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB;AAGD;;;;;GAKG;AACH,KAAK,YAAY,GACb;IAAE,CAAC,EAAE,WAAW,CAAA;CAAE,GAClB;IAAE,CAAC,EAAE,sBAAsB,CAAC;IAAC,GAAG,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,GAC1D;IAAE,CAAC,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,CAAC,EAAE,eAAe,CAAA;CAAE,CAAC;AAE3B,KAAK,KAAK,GAAG,gBAAgB,GAAG,YAAY,GAAG,UAAU,CAAC;AAE1D;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,uBAAuB,CAAC,CAAC,CAAE,SAAQ,KAAK,CAAC,KAAK,CAAC;IAC1D,OAAO,CAAC,KAAK,CAA4B;IACzC;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,UAAU,CAA4B;IAE9C,gEAAgE;IAChE,OAAO,CAAC,UAAU,CAAyC;IAE3D,mFAAmF;IACnF,cAAc,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAQ;IAE3C,QAAQ,CAAC,QAAQ,EAAE,kCAAkC,CAAC,CAAC,CAAC,CAAC;gBAE7C,OAAO,EAAE,8BAA8B,CAAC,CAAC,CAAC;IAK7C,QAAQ,IAAI,IAAI;IAwCV,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAkB/B,SAAS,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAcpD;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,CAAC,aAAa;IAWrB,iFAAiF;IACjF,OAAO,CAAC,aAAa;YAYP,eAAe;YA8Bf,UAAU;IAWxB,OAAO,CAAC,mBAAmB;IA4B3B,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,KAAK;IAcb,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,oBAAoB;CAO7B"}
|
|
@@ -29,7 +29,6 @@ export function singletonManagerPath(systemName, typeName) {
|
|
|
29
29
|
* with an in-flight acquire.
|
|
30
30
|
*/
|
|
31
31
|
export class ClusterSingletonManager extends Actor {
|
|
32
|
-
settings;
|
|
33
32
|
child = null;
|
|
34
33
|
/**
|
|
35
34
|
* The previous child while it is mid-stop. We watch every child we
|
|
@@ -52,9 +51,10 @@ export class ClusterSingletonManager extends Actor {
|
|
|
52
51
|
leaseState = 'none';
|
|
53
52
|
/** Callback the extension hands us so we can release the envelope path on stop. */
|
|
54
53
|
_envelopeUnsub = null;
|
|
55
|
-
|
|
54
|
+
settings;
|
|
55
|
+
constructor(options) {
|
|
56
56
|
super();
|
|
57
|
-
this.settings =
|
|
57
|
+
this.settings = options;
|
|
58
58
|
}
|
|
59
59
|
preStart() {
|
|
60
60
|
const cluster = this.settings.cluster;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClusterSingletonManager.js","sourceRoot":"","sources":["../../../src/cluster/singleton/ClusterSingletonManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"ClusterSingletonManager.js","sourceRoot":"","sources":["../../../src/cluster/singleton/ClusterSingletonManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { Lease } from '../../coordination/Lease.js';
|
|
2
|
+
import type { Props } from '../../Props.js';
|
|
3
|
+
import { OptionsBuilder } from '../../util/OptionsBuilder.js';
|
|
4
|
+
import type { Cluster } from '../Cluster.js';
|
|
5
|
+
/** Plain settings-object shape consumed by a {@link ClusterSingletonManager}. */
|
|
6
|
+
export interface ClusterSingletonManagerOptionsType<T> {
|
|
7
|
+
readonly cluster: Cluster;
|
|
8
|
+
/** Logical name for this singleton; also used as the child-actor name. */
|
|
9
|
+
readonly typeName: string;
|
|
10
|
+
/** How to construct the singleton actor. Only instantiated on the leader. */
|
|
11
|
+
readonly singletonProps: Props<T>;
|
|
12
|
+
/** Optional role — only nodes with this role will host the singleton. */
|
|
13
|
+
readonly role?: string;
|
|
14
|
+
/** Optional split-brain protection — see {@link StartSingletonOptionsType.lease}. */
|
|
15
|
+
readonly lease?: Lease;
|
|
16
|
+
/** Retry interval for `lease.acquire()` after a failed attempt. Default: 5 s. */
|
|
17
|
+
readonly acquireRetryIntervalMs?: number;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Fluent builder for {@link ClusterSingletonManagerOptionsType}. The
|
|
21
|
+
* manager is constructed directly by the {@link ClusterSingleton}
|
|
22
|
+
* extension, so callers rarely build this by hand — but the builder
|
|
23
|
+
* keeps the construction API uniform with the rest of the cluster layer.
|
|
24
|
+
*/
|
|
25
|
+
export declare class ClusterSingletonManagerOptionsBuilder<T> extends OptionsBuilder<ClusterSingletonManagerOptionsType<T>> {
|
|
26
|
+
/** Start a fresh builder. */
|
|
27
|
+
static create<T>(): ClusterSingletonManagerOptionsBuilder<T>;
|
|
28
|
+
/** The cluster this manager lives in — drives membership + leadership. */
|
|
29
|
+
withCluster(cluster: Cluster): this;
|
|
30
|
+
/** Logical name for this singleton; also used as the child-actor name. */
|
|
31
|
+
withTypeName(typeName: string): this;
|
|
32
|
+
/** How to construct the singleton actor. Only instantiated on the leader. */
|
|
33
|
+
withSingletonProps(props: Props<T>): this;
|
|
34
|
+
/** Only nodes carrying this role tag will host the singleton. */
|
|
35
|
+
withRole(role: string): this;
|
|
36
|
+
/** Split-brain protection — the leader acquires this lease before spawning. */
|
|
37
|
+
withLease(lease: Lease): this;
|
|
38
|
+
/** Retry interval (ms) for `lease.acquire()` after a failed attempt. Default 5 s. */
|
|
39
|
+
withAcquireRetryIntervalMs(ms: number): this;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Accepted input for a {@link ClusterSingletonManager}: the fluent
|
|
43
|
+
* {@link ClusterSingletonManagerOptionsBuilder} OR a plain (partial)
|
|
44
|
+
* {@link ClusterSingletonManagerOptionsType} object.
|
|
45
|
+
*/
|
|
46
|
+
export type ClusterSingletonManagerOptions<T> = ClusterSingletonManagerOptionsBuilder<T> | Partial<ClusterSingletonManagerOptionsType<T>>;
|
|
47
|
+
/** Value alias so `ClusterSingletonManagerOptions.create()` resolves to the builder. */
|
|
48
|
+
export declare const ClusterSingletonManagerOptions: typeof ClusterSingletonManagerOptionsBuilder;
|
|
49
|
+
//# sourceMappingURL=ClusterSingletonManagerOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClusterSingletonManagerOptions.d.ts","sourceRoot":"","sources":["../../../src/cluster/singleton/ClusterSingletonManagerOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,iFAAiF;AACjF,MAAM,WAAW,kCAAkC,CAAC,CAAC;IACnD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,0EAA0E;IAC1E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,8EAA8E;IAC9E,QAAQ,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAClC,yEAAyE;IACzE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,qFAAqF;IACrF,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IACvB,kFAAkF;IAClF,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,CAAC;CAC1C;AAED;;;;;GAKG;AACH,qBAAa,qCAAqC,CAAC,CAAC,CAAE,SAAQ,cAAc,CAAC,kCAAkC,CAAC,CAAC,CAAC,CAAC;IACjH,6BAA6B;IAC7B,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,qCAAqC,CAAC,CAAC,CAAC;IAI5D,0EAA0E;IAC1E,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAInC,0EAA0E;IAC1E,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIpC,8EAA8E;IAC9E,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI;IAIzC,iEAAiE;IACjE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI5B,+EAA+E;IAC/E,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAI7B,sFAAsF;IACtF,0BAA0B,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;CAG7C;AAED;;;;GAIG;AACH,MAAM,MAAM,8BAA8B,CAAC,CAAC,IACxC,qCAAqC,CAAC,CAAC,CAAC,GACxC,OAAO,CAAC,kCAAkC,CAAC,CAAC,CAAC,CAAC,CAAC;AACnD,wFAAwF;AACxF,eAAO,MAAM,8BAA8B,8CAAwC,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { OptionsBuilder } from '../../util/OptionsBuilder.js';
|
|
2
|
+
/**
|
|
3
|
+
* Fluent builder for {@link ClusterSingletonManagerOptionsType}. The
|
|
4
|
+
* manager is constructed directly by the {@link ClusterSingleton}
|
|
5
|
+
* extension, so callers rarely build this by hand — but the builder
|
|
6
|
+
* keeps the construction API uniform with the rest of the cluster layer.
|
|
7
|
+
*/
|
|
8
|
+
export class ClusterSingletonManagerOptionsBuilder extends OptionsBuilder {
|
|
9
|
+
/** Start a fresh builder. */
|
|
10
|
+
static create() {
|
|
11
|
+
return new ClusterSingletonManagerOptionsBuilder();
|
|
12
|
+
}
|
|
13
|
+
/** The cluster this manager lives in — drives membership + leadership. */
|
|
14
|
+
withCluster(cluster) {
|
|
15
|
+
return this.set('cluster', cluster);
|
|
16
|
+
}
|
|
17
|
+
/** Logical name for this singleton; also used as the child-actor name. */
|
|
18
|
+
withTypeName(typeName) {
|
|
19
|
+
return this.set('typeName', typeName);
|
|
20
|
+
}
|
|
21
|
+
/** How to construct the singleton actor. Only instantiated on the leader. */
|
|
22
|
+
withSingletonProps(props) {
|
|
23
|
+
return this.set('singletonProps', props);
|
|
24
|
+
}
|
|
25
|
+
/** Only nodes carrying this role tag will host the singleton. */
|
|
26
|
+
withRole(role) {
|
|
27
|
+
return this.set('role', role);
|
|
28
|
+
}
|
|
29
|
+
/** Split-brain protection — the leader acquires this lease before spawning. */
|
|
30
|
+
withLease(lease) {
|
|
31
|
+
return this.set('lease', lease);
|
|
32
|
+
}
|
|
33
|
+
/** Retry interval (ms) for `lease.acquire()` after a failed attempt. Default 5 s. */
|
|
34
|
+
withAcquireRetryIntervalMs(ms) {
|
|
35
|
+
return this.set('acquireRetryIntervalMs', ms);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/** Value alias so `ClusterSingletonManagerOptions.create()` resolves to the builder. */
|
|
39
|
+
export const ClusterSingletonManagerOptions = ClusterSingletonManagerOptionsBuilder;
|
|
40
|
+
//# sourceMappingURL=ClusterSingletonManagerOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClusterSingletonManagerOptions.js","sourceRoot":"","sources":["../../../src/cluster/singleton/ClusterSingletonManagerOptions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAkB9D;;;;;GAKG;AACH,MAAM,OAAO,qCAAyC,SAAQ,cAAqD;IACjH,6BAA6B;IAC7B,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,qCAAqC,EAAK,CAAC;IACxD,CAAC;IAED,0EAA0E;IAC1E,WAAW,CAAC,OAAgB;QAC1B,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,0EAA0E;IAC1E,YAAY,CAAC,QAAgB;QAC3B,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED,8EAA8E;IAC9E,kBAAkB,CAAC,KAAe;QAChC,OAAO,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,iEAAiE;IACjE,QAAQ,CAAC,IAAY;QACnB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,+EAA+E;IAC/E,SAAS,CAAC,KAAY;QACpB,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAClC,CAAC;IAED,sFAAsF;IACtF,0BAA0B,CAAC,EAAU;QACnC,OAAO,IAAI,CAAC,GAAG,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;CACF;AAUD,wFAAwF;AACxF,MAAM,CAAC,MAAM,8BAA8B,GAAG,qCAAqC,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import type { Lease } from '../../coordination/Lease.js';
|
|
2
|
+
import type { Props } from '../../Props.js';
|
|
3
|
+
import { OptionsBuilder } from '../../util/OptionsBuilder.js';
|
|
4
|
+
/** Plain settings-object shape accepted by {@link ClusterSingleton.start}. */
|
|
5
|
+
export interface StartSingletonOptionsType<T> {
|
|
6
|
+
/** Logical name for this singleton — used in the manager/child actor path. */
|
|
7
|
+
readonly typeName: string;
|
|
8
|
+
/** Props used to construct the singleton on the leader. */
|
|
9
|
+
readonly props: Props<T>;
|
|
10
|
+
/** If set, only nodes carrying this role tag will host the singleton. */
|
|
11
|
+
readonly role?: string;
|
|
12
|
+
/**
|
|
13
|
+
* Optional split-brain protection. When provided, the elected
|
|
14
|
+
* leader's manager calls `lease.acquire()` before spawning the
|
|
15
|
+
* singleton — so a partition that produces two oldest views still
|
|
16
|
+
* only ever spawns the singleton on the side that holds the lease.
|
|
17
|
+
* The manager subscribes to `lease.onLost(reason)` and stops the
|
|
18
|
+
* child if ownership is revoked mid-flight.
|
|
19
|
+
*
|
|
20
|
+
* Without a lease the manager keeps its current sync behaviour:
|
|
21
|
+
* spawn the moment cluster gossip says we're leader, no external
|
|
22
|
+
* arbitration.
|
|
23
|
+
*/
|
|
24
|
+
readonly lease?: Lease;
|
|
25
|
+
/**
|
|
26
|
+
* How often to retry `lease.acquire()` after a failed attempt
|
|
27
|
+
* (another holder owns it, transient backend error, etc.).
|
|
28
|
+
* Default: `5_000` ms. Ignored if no lease is provided.
|
|
29
|
+
*/
|
|
30
|
+
readonly acquireRetryIntervalMs?: number;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Fluent builder for {@link StartSingletonOptionsType}:
|
|
34
|
+
*
|
|
35
|
+
* system.extension(ClusterSingletonId).start(
|
|
36
|
+
* cluster,
|
|
37
|
+
* StartSingletonOptions.create<Cmd>()
|
|
38
|
+
* .withTypeName('counter')
|
|
39
|
+
* .withProps(Props.create(() => new CounterActor())),
|
|
40
|
+
* );
|
|
41
|
+
*/
|
|
42
|
+
export declare class StartSingletonOptionsBuilder<T> extends OptionsBuilder<StartSingletonOptionsType<T>> {
|
|
43
|
+
/** Start a fresh builder. */
|
|
44
|
+
static create<T>(): StartSingletonOptionsBuilder<T>;
|
|
45
|
+
/** Logical name for this singleton — used in the manager/child actor path. */
|
|
46
|
+
withTypeName(typeName: string): this;
|
|
47
|
+
/** Props used to construct the singleton on the leader. */
|
|
48
|
+
withProps(props: Props<T>): this;
|
|
49
|
+
/** Only nodes carrying this role tag will host the singleton. */
|
|
50
|
+
withRole(role: string): this;
|
|
51
|
+
/** Split-brain protection — the leader acquires this lease before spawning. */
|
|
52
|
+
withLease(lease: Lease): this;
|
|
53
|
+
/** Retry interval (ms) for `lease.acquire()` after a failed attempt. Default 5 s. */
|
|
54
|
+
withAcquireRetryIntervalMs(ms: number): this;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Accepted input for {@link ClusterSingleton.start}: the fluent
|
|
58
|
+
* {@link StartSingletonOptionsBuilder} OR a plain (partial)
|
|
59
|
+
* {@link StartSingletonOptionsType} object.
|
|
60
|
+
*/
|
|
61
|
+
export type StartSingletonOptions<T> = StartSingletonOptionsBuilder<T> | Partial<StartSingletonOptionsType<T>>;
|
|
62
|
+
/** Value alias so `StartSingletonOptions.create()` / `new StartSingletonOptions()` resolve to the builder. */
|
|
63
|
+
export declare const StartSingletonOptions: typeof StartSingletonOptionsBuilder;
|
|
64
|
+
//# sourceMappingURL=StartSingletonOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StartSingletonOptions.d.ts","sourceRoot":"","sources":["../../../src/cluster/singleton/StartSingletonOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,8EAA8E;AAC9E,MAAM,WAAW,yBAAyB,CAAC,CAAC;IAC1C,8EAA8E;IAC9E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,2DAA2D;IAC3D,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACzB,yEAAyE;IACzE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,CAAC;CAC1C;AAED;;;;;;;;;GASG;AACH,qBAAa,4BAA4B,CAAC,CAAC,CAAE,SAAQ,cAAc,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;IAC/F,6BAA6B;IAC7B,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,4BAA4B,CAAC,CAAC,CAAC;IAInD,8EAA8E;IAC9E,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIpC,2DAA2D;IAC3D,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI;IAIhC,iEAAiE;IACjE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI5B,+EAA+E;IAC/E,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAI7B,sFAAsF;IACtF,0BAA0B,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;CAG7C;AAED;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAC/B,4BAA4B,CAAC,CAAC,CAAC,GAC/B,OAAO,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1C,8GAA8G;AAC9G,eAAO,MAAM,qBAAqB,qCAA+B,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { OptionsBuilder } from '../../util/OptionsBuilder.js';
|
|
2
|
+
/**
|
|
3
|
+
* Fluent builder for {@link StartSingletonOptionsType}:
|
|
4
|
+
*
|
|
5
|
+
* system.extension(ClusterSingletonId).start(
|
|
6
|
+
* cluster,
|
|
7
|
+
* StartSingletonOptions.create<Cmd>()
|
|
8
|
+
* .withTypeName('counter')
|
|
9
|
+
* .withProps(Props.create(() => new CounterActor())),
|
|
10
|
+
* );
|
|
11
|
+
*/
|
|
12
|
+
export class StartSingletonOptionsBuilder extends OptionsBuilder {
|
|
13
|
+
/** Start a fresh builder. */
|
|
14
|
+
static create() {
|
|
15
|
+
return new StartSingletonOptionsBuilder();
|
|
16
|
+
}
|
|
17
|
+
/** Logical name for this singleton — used in the manager/child actor path. */
|
|
18
|
+
withTypeName(typeName) {
|
|
19
|
+
return this.set('typeName', typeName);
|
|
20
|
+
}
|
|
21
|
+
/** Props used to construct the singleton on the leader. */
|
|
22
|
+
withProps(props) {
|
|
23
|
+
return this.set('props', props);
|
|
24
|
+
}
|
|
25
|
+
/** Only nodes carrying this role tag will host the singleton. */
|
|
26
|
+
withRole(role) {
|
|
27
|
+
return this.set('role', role);
|
|
28
|
+
}
|
|
29
|
+
/** Split-brain protection — the leader acquires this lease before spawning. */
|
|
30
|
+
withLease(lease) {
|
|
31
|
+
return this.set('lease', lease);
|
|
32
|
+
}
|
|
33
|
+
/** Retry interval (ms) for `lease.acquire()` after a failed attempt. Default 5 s. */
|
|
34
|
+
withAcquireRetryIntervalMs(ms) {
|
|
35
|
+
return this.set('acquireRetryIntervalMs', ms);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/** Value alias so `StartSingletonOptions.create()` / `new StartSingletonOptions()` resolve to the builder. */
|
|
39
|
+
export const StartSingletonOptions = StartSingletonOptionsBuilder;
|
|
40
|
+
//# sourceMappingURL=StartSingletonOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StartSingletonOptions.js","sourceRoot":"","sources":["../../../src/cluster/singleton/StartSingletonOptions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AA+B9D;;;;;;;;;GASG;AACH,MAAM,OAAO,4BAAgC,SAAQ,cAA4C;IAC/F,6BAA6B;IAC7B,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,4BAA4B,EAAK,CAAC;IAC/C,CAAC;IAED,8EAA8E;IAC9E,YAAY,CAAC,QAAgB;QAC3B,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED,2DAA2D;IAC3D,SAAS,CAAC,KAAe;QACvB,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAClC,CAAC;IAED,iEAAiE;IACjE,QAAQ,CAAC,IAAY;QACnB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,+EAA+E;IAC/E,SAAS,CAAC,KAAY;QACpB,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAClC,CAAC;IAED,sFAAsF;IACtF,0BAA0B,CAAC,EAAU;QACnC,OAAO,IAAI,CAAC,GAAG,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;CACF;AAUD,8GAA8G;AAC9G,MAAM,CAAC,MAAM,qBAAqB,GAAG,4BAA4B,CAAC"}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
export { ClusterSingleton, ClusterSingletonId, } from './ClusterSingleton.js';
|
|
2
|
-
export
|
|
2
|
+
export { StartSingletonOptions, StartSingletonOptionsBuilder } from './StartSingletonOptions.js';
|
|
3
|
+
export type { StartSingletonOptionsType } from './StartSingletonOptions.js';
|
|
4
|
+
export type { SingletonHandle } from './ClusterSingleton.js';
|
|
3
5
|
export { ClusterSingletonManager, singletonManagerPath, } from './ClusterSingletonManager.js';
|
|
4
|
-
export
|
|
6
|
+
export { ClusterSingletonManagerOptions, ClusterSingletonManagerOptionsBuilder } from './ClusterSingletonManagerOptions.js';
|
|
7
|
+
export type { ClusterSingletonManagerOptionsType } from './ClusterSingletonManagerOptions.js';
|
|
8
|
+
export type { SingletonDeliver } from './ClusterSingletonManager.js';
|
|
5
9
|
export { ClusterSingletonProxy } from './ClusterSingletonProxy.js';
|
|
6
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cluster/singleton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cluster/singleton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AACjG,YAAY,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EACL,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,8BAA8B,EAAE,qCAAqC,EAAE,MAAM,qCAAqC,CAAC;AAC5H,YAAY,EAAE,kCAAkC,EAAE,MAAM,qCAAqC,CAAC;AAC9F,YAAY,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export { ClusterSingleton, ClusterSingletonId, } from './ClusterSingleton.js';
|
|
2
|
+
export { StartSingletonOptions, StartSingletonOptionsBuilder } from './StartSingletonOptions.js';
|
|
2
3
|
export { ClusterSingletonManager, singletonManagerPath, } from './ClusterSingletonManager.js';
|
|
4
|
+
export { ClusterSingletonManagerOptions, ClusterSingletonManagerOptionsBuilder } from './ClusterSingletonManagerOptions.js';
|
|
3
5
|
export { ClusterSingletonProxy } from './ClusterSingletonProxy.js';
|
|
4
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cluster/singleton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cluster/singleton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAGjG,OAAO,EACL,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,8BAA8B,EAAE,qCAAqC,EAAE,MAAM,qCAAqC,CAAC;AAG5H,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -58,6 +58,11 @@ export declare const ConfigKeys: {
|
|
|
58
58
|
readonly websocket: "actor-ts.io.broker.websocket";
|
|
59
59
|
};
|
|
60
60
|
};
|
|
61
|
+
/** HTTP subsystem config roots — `actor-ts.http.*`. */
|
|
62
|
+
readonly http: {
|
|
63
|
+
/** Server-side WebSocket defaults for `websocket()` routes. */
|
|
64
|
+
readonly websocket: "actor-ts.http.websocket";
|
|
65
|
+
};
|
|
61
66
|
/** Persistence plugin selection + config — `actor-ts.persistence.*`. */
|
|
62
67
|
readonly persistence: {
|
|
63
68
|
readonly journal: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigKeys.d.ts","sourceRoot":"","sources":["../../src/config/ConfigKeys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,eAAO,MAAM,UAAU;IACrB,yCAAyC;;;;IAKzC,iDAAiD;;;;;IAMjD,6CAA6C;;;;;;IAO7C,uDAAuD;;;;;;;;;;;;;;;;;;;IAoBvD,wEAAwE;;;;;;;;;;;;;;;;;IAkBxE,qDAAqD;;IAGrD;;;;;;OAMG;;;;;;;CAOK,CAAC"}
|
|
1
|
+
{"version":3,"file":"ConfigKeys.d.ts","sourceRoot":"","sources":["../../src/config/ConfigKeys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,eAAO,MAAM,UAAU;IACrB,yCAAyC;;;;IAKzC,iDAAiD;;;;;IAMjD,6CAA6C;;;;;;IAO7C,uDAAuD;;;;;;;;;;;;;;;;;;;IAoBvD,uDAAuD;;QAErD,+DAA+D;;;IAIjE,wEAAwE;;;;;;;;;;;;;;;;;IAkBxE,qDAAqD;;IAGrD;;;;;;OAMG;;;;;;;CAOK,CAAC"}
|
|
@@ -58,6 +58,11 @@ export const ConfigKeys = {
|
|
|
58
58
|
websocket: 'actor-ts.io.broker.websocket',
|
|
59
59
|
},
|
|
60
60
|
},
|
|
61
|
+
/** HTTP subsystem config roots — `actor-ts.http.*`. */
|
|
62
|
+
http: {
|
|
63
|
+
/** Server-side WebSocket defaults for `websocket()` routes. */
|
|
64
|
+
websocket: 'actor-ts.http.websocket',
|
|
65
|
+
},
|
|
61
66
|
/** Persistence plugin selection + config — `actor-ts.persistence.*`. */
|
|
62
67
|
persistence: {
|
|
63
68
|
journal: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigKeys.js","sourceRoot":"","sources":["../../src/config/ConfigKeys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,yCAAyC;IACzC,MAAM,EAAE;QACN,KAAK,EAAE,uBAAuB;KAC/B;IAED,iDAAiD;IACjD,UAAU,EAAE;QACV,OAAO,EAAE,6BAA6B;QACtC,UAAU,EAAE,gCAAgC;KAC7C;IAED,6CAA6C;IAC7C,KAAK,EAAE;QACL,QAAQ,EAAE,0BAA0B;QACpC,KAAK,EAAE,sBAAsB;QAC7B,SAAS,EAAE,0BAA0B;KACtC;IAED,uDAAuD;IACvD,EAAE,EAAE;QACF,MAAM,EAAE;YACN,IAAI,EAAE,yBAAyB;YAC/B,IAAI,EAAE;gBACJ,MAAM,EAAE,gCAAgC;gBACxC,MAAM,EAAE,gCAAgC;aACzC;YACD,SAAS,EAAE,8BAA8B;YACzC,KAAK,EAAE,0BAA0B;YACjC,IAAI,EAAE,yBAAyB;YAC/B,IAAI,EAAE,yBAAyB;YAC/B,YAAY,EAAE,kCAAkC;YAChD,GAAG,EAAE,wBAAwB;YAC7B,GAAG,EAAE,wBAAwB;YAC7B,GAAG,EAAE,wBAAwB;YAC7B,SAAS,EAAE,8BAA8B;SAC1C;KACF;IAED,wEAAwE;IACxE,WAAW,EAAE;QACX,OAAO,EAAE;YACP,MAAM,EAAE,qCAAqC;YAC7C,QAAQ,EAAE,wCAAwC;YAClD,SAAS,EAAE,wCAAwC;SACpD;QACD,aAAa,EAAE;YACb,MAAM,EAAE,4CAA4C;YACpD,QAAQ,EAAE,+CAA+C;YACzD,SAAS,EAAE,+CAA+C;YAC1D,aAAa,EAAE,oDAAoD;SACpE;QACD,YAAY,EAAE;YACZ,aAAa,EAAE,mDAAmD;SACnE;KACF;IAED,qDAAqD;IACrD,SAAS,EAAE,oBAAoB;IAE/B;;;;;;OAMG;IACH,MAAM,EAAE;QACN,KAAK,EAAM,cAAc;QACzB,IAAI,EAAO,aAAa;QACxB,KAAK,EAAM,cAAc;QACzB,SAAS,EAAE,kBAAkB;KAC9B;CACO,CAAC"}
|
|
1
|
+
{"version":3,"file":"ConfigKeys.js","sourceRoot":"","sources":["../../src/config/ConfigKeys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,yCAAyC;IACzC,MAAM,EAAE;QACN,KAAK,EAAE,uBAAuB;KAC/B;IAED,iDAAiD;IACjD,UAAU,EAAE;QACV,OAAO,EAAE,6BAA6B;QACtC,UAAU,EAAE,gCAAgC;KAC7C;IAED,6CAA6C;IAC7C,KAAK,EAAE;QACL,QAAQ,EAAE,0BAA0B;QACpC,KAAK,EAAE,sBAAsB;QAC7B,SAAS,EAAE,0BAA0B;KACtC;IAED,uDAAuD;IACvD,EAAE,EAAE;QACF,MAAM,EAAE;YACN,IAAI,EAAE,yBAAyB;YAC/B,IAAI,EAAE;gBACJ,MAAM,EAAE,gCAAgC;gBACxC,MAAM,EAAE,gCAAgC;aACzC;YACD,SAAS,EAAE,8BAA8B;YACzC,KAAK,EAAE,0BAA0B;YACjC,IAAI,EAAE,yBAAyB;YAC/B,IAAI,EAAE,yBAAyB;YAC/B,YAAY,EAAE,kCAAkC;YAChD,GAAG,EAAE,wBAAwB;YAC7B,GAAG,EAAE,wBAAwB;YAC7B,GAAG,EAAE,wBAAwB;YAC7B,SAAS,EAAE,8BAA8B;SAC1C;KACF;IAED,uDAAuD;IACvD,IAAI,EAAE;QACJ,+DAA+D;QAC/D,SAAS,EAAE,yBAAyB;KACrC;IAED,wEAAwE;IACxE,WAAW,EAAE;QACX,OAAO,EAAE;YACP,MAAM,EAAE,qCAAqC;YAC7C,QAAQ,EAAE,wCAAwC;YAClD,SAAS,EAAE,wCAAwC;SACpD;QACD,aAAa,EAAE;YACb,MAAM,EAAE,4CAA4C;YACpD,QAAQ,EAAE,+CAA+C;YACzD,SAAS,EAAE,+CAA+C;YAC1D,aAAa,EAAE,oDAAoD;SACpE;QACD,YAAY,EAAE;YACZ,aAAa,EAAE,mDAAmD;SACnE;KACF;IAED,qDAAqD;IACrD,SAAS,EAAE,oBAAoB;IAE/B;;;;;;OAMG;IACH,MAAM,EAAE;QACN,KAAK,EAAM,cAAc;QACzB,IAAI,EAAO,aAAa;QACxB,KAAK,EAAM,cAAc;QACzB,SAAS,EAAE,kBAAkB;KAC9B;CACO,CAAC"}
|
|
@@ -12,10 +12,42 @@
|
|
|
12
12
|
*
|
|
13
13
|
* Different backends implement the contract differently — see
|
|
14
14
|
* `InMemoryLease` (reference + tests) and `KubernetesLease` (production).
|
|
15
|
+
*
|
|
16
|
+
* Backends MAY additionally implement `acquireWithToken()` for fencing-
|
|
17
|
+
* token support — see the method comment below. Consumers that need
|
|
18
|
+
* fencing (e.g. `LeaseMajority` split-brain protection) feature-detect
|
|
19
|
+
* the method and fall back to plain `acquire()` when it's absent.
|
|
15
20
|
*/
|
|
16
21
|
export interface Lease {
|
|
17
22
|
/** Try to acquire the lease. Resolves true on success, false on contention. */
|
|
18
23
|
acquire(): Promise<boolean>;
|
|
24
|
+
/**
|
|
25
|
+
* Optional: acquire the lease and return a backend-issued **fencing
|
|
26
|
+
* token** on success. Returns `null` on contention (semantic
|
|
27
|
+
* equivalent of `acquire()` returning `false`).
|
|
28
|
+
*
|
|
29
|
+
* A fencing token is a value that an external observer can use to
|
|
30
|
+
* order two acquires against the same lease — typically backed by the
|
|
31
|
+
* coordination service's own optimistic-concurrency primitive
|
|
32
|
+
* (Kubernetes Lease's `resourceVersion` + `leaseTransitions`, Redis
|
|
33
|
+
* `SETNX` with an incrementing counter, etcd `revision`, etc.).
|
|
34
|
+
*
|
|
35
|
+
* Why both methods exist: `acquire()` is sufficient for the common
|
|
36
|
+
* "did I win the race?" question, and is the minimum contract every
|
|
37
|
+
* backend must implement. `acquireWithToken()` is for callers that
|
|
38
|
+
* also need to **detect a stale acquire result**. Without a token,
|
|
39
|
+
* a late-arriving `acquire() → true` from a previously-timed-out
|
|
40
|
+
* attempt is indistinguishable from a fresh successful acquire; with
|
|
41
|
+
* a token, the caller compares the token against the current holder
|
|
42
|
+
* to decide whether the result still reflects reality.
|
|
43
|
+
*
|
|
44
|
+
* Tokens are opaque strings — comparison must be exact-string.
|
|
45
|
+
* Backends should choose a representation that's monotonic per
|
|
46
|
+
* acquire (so callers can detect "newer acquire happened after mine").
|
|
47
|
+
*/
|
|
48
|
+
acquireWithToken?(): Promise<{
|
|
49
|
+
readonly token: string;
|
|
50
|
+
} | null>;
|
|
19
51
|
/** Release the lease voluntarily. No-op if not held. */
|
|
20
52
|
release(): Promise<void>;
|
|
21
53
|
/** True if this process currently owns the lease. Purely local — no IO. */
|
|
@@ -23,18 +55,4 @@ export interface Lease {
|
|
|
23
55
|
/** Register a handler fired when ownership is lost unexpectedly. */
|
|
24
56
|
onLost(handler: (reason: string) => void): () => void;
|
|
25
57
|
}
|
|
26
|
-
export interface LeaseSettings {
|
|
27
|
-
/** Lease name — unique identifier within the namespace. */
|
|
28
|
-
readonly name: string;
|
|
29
|
-
/** Identifier of the holder (pod name / host name / uuid). */
|
|
30
|
-
readonly owner: string;
|
|
31
|
-
/** Time-to-live in ms — the backend auto-expires if we fail to renew. */
|
|
32
|
-
readonly ttlMs: number;
|
|
33
|
-
/** How often to renew (< ttlMs — typically ttl/3). */
|
|
34
|
-
readonly renewalIntervalMs?: number;
|
|
35
|
-
/** Max attempts for a single `acquire()` before returning false. */
|
|
36
|
-
readonly acquireRetries?: number;
|
|
37
|
-
/** Delay between acquire retries. */
|
|
38
|
-
readonly acquireRetryDelayMs?: number;
|
|
39
|
-
}
|
|
40
58
|
//# sourceMappingURL=Lease.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Lease.d.ts","sourceRoot":"","sources":["../../src/coordination/Lease.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"Lease.d.ts","sourceRoot":"","sources":["../../src/coordination/Lease.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,KAAK;IACpB,gFAAgF;IAChF,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE5B;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,gBAAgB,CAAC,IAAI,OAAO,CAAC;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IAEhE,yDAAyD;IACzD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzB,4EAA4E;IAC5E,UAAU,IAAI,OAAO,CAAC;IAEtB,oEAAoE;IACpE,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;CACvD"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { OptionsBuilder } from '../util/OptionsBuilder.js';
|
|
2
|
+
/**
|
|
3
|
+
* Plain settings-object shape shared by every {@link Lease} backend — the
|
|
4
|
+
* common construction-time settings. A plain object of these fields is an
|
|
5
|
+
* accepted alternative to the {@link LeaseOptionsBuilder}; concrete backends
|
|
6
|
+
* extend it (e.g. `KubernetesLeaseOptionsType`).
|
|
7
|
+
*/
|
|
8
|
+
export interface LeaseOptionsType {
|
|
9
|
+
/** Lease name — unique identifier within the namespace. */
|
|
10
|
+
readonly name: string;
|
|
11
|
+
/** Identifier of the holder (pod name / host name / uuid). */
|
|
12
|
+
readonly owner: string;
|
|
13
|
+
/** Time-to-live in ms — the backend auto-expires if we fail to renew. */
|
|
14
|
+
readonly ttlMs: number;
|
|
15
|
+
/** How often to renew (< ttlMs — typically ttl/3). */
|
|
16
|
+
readonly renewalIntervalMs?: number;
|
|
17
|
+
/** Max attempts for a single `acquire()` before returning false. */
|
|
18
|
+
readonly acquireRetries?: number;
|
|
19
|
+
/** Delay between acquire retries. */
|
|
20
|
+
readonly acquireRetryDelayMs?: number;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Fluent builder for {@link LeaseOptionsType} — the common construction-time
|
|
24
|
+
* settings every {@link Lease} backend shares. The concrete
|
|
25
|
+
* `KubernetesLeaseOptionsBuilder` subclass extends this with the K8s-specific
|
|
26
|
+
* `withX(...)` methods.
|
|
27
|
+
*
|
|
28
|
+
* new InMemoryLease(
|
|
29
|
+
* LeaseOptions.create().withName('singleton').withOwner(nodeId).withTtlMs(10_000),
|
|
30
|
+
* );
|
|
31
|
+
*
|
|
32
|
+
* Generic over `T extends LeaseOptionsType` so `KubernetesLeaseOptionsBuilder`
|
|
33
|
+
* can inherit these six setters while adding its own — same shape as the
|
|
34
|
+
* broker `BrokerOptionsBuilder<T>` base. The `as keyof T` casts pay for
|
|
35
|
+
* writing the shared setters once against the generic; concrete subclasses
|
|
36
|
+
* stay type-safe because their extra methods target concrete field types.
|
|
37
|
+
*/
|
|
38
|
+
export declare class LeaseOptionsBuilder<T extends LeaseOptionsType = LeaseOptionsType> extends OptionsBuilder<T> {
|
|
39
|
+
/** Start a fresh builder. Equivalent to `new LeaseOptionsBuilder()`. */
|
|
40
|
+
static create(): LeaseOptionsBuilder;
|
|
41
|
+
/** Lease name — unique identifier within the namespace. */
|
|
42
|
+
withName(name: string): this;
|
|
43
|
+
/** Identifier of the holder (pod name / host name / uuid). */
|
|
44
|
+
withOwner(owner: string): this;
|
|
45
|
+
/** Time-to-live in ms — the backend auto-expires if we fail to renew. */
|
|
46
|
+
withTtlMs(ttlMs: number): this;
|
|
47
|
+
/** How often to renew (< ttlMs — typically ttl/3). */
|
|
48
|
+
withRenewalIntervalMs(renewalIntervalMs: number): this;
|
|
49
|
+
/** Max attempts for a single `acquire()` before returning false. */
|
|
50
|
+
withAcquireRetries(acquireRetries: number): this;
|
|
51
|
+
/** Delay between acquire retries. */
|
|
52
|
+
withAcquireRetryDelayMs(acquireRetryDelayMs: number): this;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Accepted input for any lease constructor: the fluent
|
|
56
|
+
* {@link LeaseOptionsBuilder} OR a plain {@link LeaseOptionsType} object.
|
|
57
|
+
*/
|
|
58
|
+
export type LeaseOptions = LeaseOptionsBuilder | Partial<LeaseOptionsType>;
|
|
59
|
+
/** Value alias so `LeaseOptions.create()` / `new LeaseOptions()` resolve to the builder. */
|
|
60
|
+
export declare const LeaseOptions: typeof LeaseOptionsBuilder;
|
|
61
|
+
//# sourceMappingURL=LeaseOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LeaseOptions.d.ts","sourceRoot":"","sources":["../../src/coordination/LeaseOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2DAA2D;IAC3D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,yEAAyE;IACzE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,sDAAsD;IACtD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,oEAAoE;IACpE,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,qCAAqC;IACrC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CACvC;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,mBAAmB,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IACvG,yEAAyE;IACzE,MAAM,CAAC,MAAM,IAAI,mBAAmB;IAIpC,2DAA2D;IAC3D,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI5B,8DAA8D;IAC9D,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI9B,yEAAyE;IACzE,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI9B,sDAAsD;IACtD,qBAAqB,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI;IAItD,oEAAoE;IACpE,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAIhD,qCAAqC;IACrC,uBAAuB,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI;CAG3D;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,mBAAmB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC3E,4FAA4F;AAC5F,eAAO,MAAM,YAAY,4BAAsB,CAAC"}
|