@spine-event-engine/server 2.0.0-snapshot.11
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/LICENSE +201 -0
- package/README.md +209 -0
- package/REFERENCE.md +760 -0
- package/dist/browser/browser-server.d.ts +95 -0
- package/dist/browser/browser-server.d.ts.map +1 -0
- package/dist/browser/browser-server.js +719 -0
- package/dist/browser/browser-server.js.map +1 -0
- package/dist/browser/durable-subscription-bindings.d.ts +122 -0
- package/dist/browser/durable-subscription-bindings.d.ts.map +1 -0
- package/dist/browser/durable-subscription-bindings.js +524 -0
- package/dist/browser/durable-subscription-bindings.js.map +1 -0
- package/dist/browser/index.d.ts +12 -0
- package/dist/browser/index.d.ts.map +1 -0
- package/dist/browser/index.js +24 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/browser/options.d.ts +183 -0
- package/dist/browser/options.d.ts.map +1 -0
- package/dist/browser/options.js +15 -0
- package/dist/browser/options.js.map +1 -0
- package/dist/bus/command-bus.d.ts +63 -0
- package/dist/bus/command-bus.d.ts.map +1 -0
- package/dist/bus/command-bus.js +236 -0
- package/dist/bus/command-bus.js.map +1 -0
- package/dist/bus/command-dispatcher-registry.d.ts +33 -0
- package/dist/bus/command-dispatcher-registry.d.ts.map +1 -0
- package/dist/bus/command-dispatcher-registry.js +75 -0
- package/dist/bus/command-dispatcher-registry.js.map +1 -0
- package/dist/bus/command-dispatcher.d.ts +25 -0
- package/dist/bus/command-dispatcher.d.ts.map +1 -0
- package/dist/bus/command-dispatcher.js +15 -0
- package/dist/bus/command-dispatcher.js.map +1 -0
- package/dist/bus/command-errors.d.ts +23 -0
- package/dist/bus/command-errors.d.ts.map +1 -0
- package/dist/bus/command-errors.js +52 -0
- package/dist/bus/command-errors.js.map +1 -0
- package/dist/bus/event-bus.d.ts +113 -0
- package/dist/bus/event-bus.d.ts.map +1 -0
- package/dist/bus/event-bus.js +518 -0
- package/dist/bus/event-bus.js.map +1 -0
- package/dist/bus/event-dispatcher-origin-schemas.d.ts +17 -0
- package/dist/bus/event-dispatcher-origin-schemas.d.ts.map +1 -0
- package/dist/bus/event-dispatcher-origin-schemas.js +32 -0
- package/dist/bus/event-dispatcher-origin-schemas.js.map +1 -0
- package/dist/bus/event-dispatcher-registry.d.ts +48 -0
- package/dist/bus/event-dispatcher-registry.d.ts.map +1 -0
- package/dist/bus/event-dispatcher-registry.js +176 -0
- package/dist/bus/event-dispatcher-registry.js.map +1 -0
- package/dist/bus/event-dispatcher.d.ts +48 -0
- package/dist/bus/event-dispatcher.d.ts.map +1 -0
- package/dist/bus/event-dispatcher.js +15 -0
- package/dist/bus/event-dispatcher.js.map +1 -0
- package/dist/context/bounded-context.d.ts +592 -0
- package/dist/context/bounded-context.d.ts.map +1 -0
- package/dist/context/bounded-context.js +1897 -0
- package/dist/context/bounded-context.js.map +1 -0
- package/dist/context/entity-inbox.d.ts +63 -0
- package/dist/context/entity-inbox.d.ts.map +1 -0
- package/dist/context/entity-inbox.js +387 -0
- package/dist/context/entity-inbox.js.map +1 -0
- package/dist/context/local-inbox-handoff.d.ts +248 -0
- package/dist/context/local-inbox-handoff.d.ts.map +1 -0
- package/dist/context/local-inbox-handoff.js +340 -0
- package/dist/context/local-inbox-handoff.js.map +1 -0
- package/dist/context/projection-handoff.d.ts +46 -0
- package/dist/context/projection-handoff.d.ts.map +1 -0
- package/dist/context/projection-handoff.js +177 -0
- package/dist/context/projection-handoff.js.map +1 -0
- package/dist/context/tenant-index.d.ts +41 -0
- package/dist/context/tenant-index.d.ts.map +1 -0
- package/dist/context/tenant-index.js +93 -0
- package/dist/context/tenant-index.js.map +1 -0
- package/dist/delivery/conditional-pickup.d.ts +25 -0
- package/dist/delivery/conditional-pickup.d.ts.map +1 -0
- package/dist/delivery/conditional-pickup.js +26 -0
- package/dist/delivery/conditional-pickup.js.map +1 -0
- package/dist/delivery/delivery-builder.d.ts +216 -0
- package/dist/delivery/delivery-builder.d.ts.map +1 -0
- package/dist/delivery/delivery-builder.js +323 -0
- package/dist/delivery/delivery-builder.js.map +1 -0
- package/dist/delivery/delivery-lease.d.ts +15 -0
- package/dist/delivery/delivery-lease.d.ts.map +1 -0
- package/dist/delivery/delivery-lease.js +44 -0
- package/dist/delivery/delivery-lease.js.map +1 -0
- package/dist/delivery/delivery-loop.d.ts +113 -0
- package/dist/delivery/delivery-loop.d.ts.map +1 -0
- package/dist/delivery/delivery-loop.js +119 -0
- package/dist/delivery/delivery-loop.js.map +1 -0
- package/dist/delivery/delivery-monitor.d.ts +165 -0
- package/dist/delivery/delivery-monitor.d.ts.map +1 -0
- package/dist/delivery/delivery-monitor.js +168 -0
- package/dist/delivery/delivery-monitor.js.map +1 -0
- package/dist/delivery/delivery-ports.d.ts +151 -0
- package/dist/delivery/delivery-ports.d.ts.map +1 -0
- package/dist/delivery/delivery-ports.js +15 -0
- package/dist/delivery/delivery-ports.js.map +1 -0
- package/dist/delivery/delivery-run-control.d.ts +50 -0
- package/dist/delivery/delivery-run-control.d.ts.map +1 -0
- package/dist/delivery/delivery-run-control.js +66 -0
- package/dist/delivery/delivery-run-control.js.map +1 -0
- package/dist/delivery/delivery-run-coordinator.d.ts +218 -0
- package/dist/delivery/delivery-run-coordinator.d.ts.map +1 -0
- package/dist/delivery/delivery-run-coordinator.js +609 -0
- package/dist/delivery/delivery-run-coordinator.js.map +1 -0
- package/dist/delivery/delivery-storage-error.d.ts +13 -0
- package/dist/delivery/delivery-storage-error.d.ts.map +1 -0
- package/dist/delivery/delivery-storage-error.js +30 -0
- package/dist/delivery/delivery-storage-error.js.map +1 -0
- package/dist/delivery/delivery-supervisor.d.ts +175 -0
- package/dist/delivery/delivery-supervisor.d.ts.map +1 -0
- package/dist/delivery/delivery-supervisor.js +469 -0
- package/dist/delivery/delivery-supervisor.js.map +1 -0
- package/dist/delivery/delivery-worker.d.ts +180 -0
- package/dist/delivery/delivery-worker.d.ts.map +1 -0
- package/dist/delivery/delivery-worker.js +232 -0
- package/dist/delivery/delivery-worker.js.map +1 -0
- package/dist/delivery/delivery.d.ts +236 -0
- package/dist/delivery/delivery.d.ts.map +1 -0
- package/dist/delivery/delivery.js +539 -0
- package/dist/delivery/delivery.js.map +1 -0
- package/dist/delivery/inbox-records.d.ts +19 -0
- package/dist/delivery/inbox-records.d.ts.map +1 -0
- package/dist/delivery/inbox-records.js +291 -0
- package/dist/delivery/inbox-records.js.map +1 -0
- package/dist/delivery/inbox-storage.d.ts +83 -0
- package/dist/delivery/inbox-storage.d.ts.map +1 -0
- package/dist/delivery/inbox-storage.js +336 -0
- package/dist/delivery/inbox-storage.js.map +1 -0
- package/dist/delivery/inbox.d.ts +272 -0
- package/dist/delivery/inbox.d.ts.map +1 -0
- package/dist/delivery/inbox.js +183 -0
- package/dist/delivery/inbox.js.map +1 -0
- package/dist/delivery/parked-delivery-obligations.d.ts +182 -0
- package/dist/delivery/parked-delivery-obligations.d.ts.map +1 -0
- package/dist/delivery/parked-delivery-obligations.js +390 -0
- package/dist/delivery/parked-delivery-obligations.js.map +1 -0
- package/dist/delivery/shard-index.d.ts +41 -0
- package/dist/delivery/shard-index.d.ts.map +1 -0
- package/dist/delivery/shard-index.js +67 -0
- package/dist/delivery/shard-index.js.map +1 -0
- package/dist/delivery/sharded-work-registry.d.ts +114 -0
- package/dist/delivery/sharded-work-registry.d.ts.map +1 -0
- package/dist/delivery/sharded-work-registry.js +361 -0
- package/dist/delivery/sharded-work-registry.js.map +1 -0
- package/dist/entity/entity-metadata.d.ts +173 -0
- package/dist/entity/entity-metadata.d.ts.map +1 -0
- package/dist/entity/entity-metadata.js +187 -0
- package/dist/entity/entity-metadata.js.map +1 -0
- package/dist/entity/entity-storage-descriptor.d.ts +64 -0
- package/dist/entity/entity-storage-descriptor.d.ts.map +1 -0
- package/dist/entity/entity-storage-descriptor.js +227 -0
- package/dist/entity/entity-storage-descriptor.js.map +1 -0
- package/dist/entity/entity-transaction.d.ts +372 -0
- package/dist/entity/entity-transaction.d.ts.map +1 -0
- package/dist/entity/entity-transaction.js +413 -0
- package/dist/entity/entity-transaction.js.map +1 -0
- package/dist/entity/entity-transition-validation.d.ts +47 -0
- package/dist/entity/entity-transition-validation.d.ts.map +1 -0
- package/dist/entity/entity-transition-validation.js +327 -0
- package/dist/entity/entity-transition-validation.js.map +1 -0
- package/dist/entity/entity.d.ts +605 -0
- package/dist/entity/entity.d.ts.map +1 -0
- package/dist/entity/entity.js +981 -0
- package/dist/entity/entity.js.map +1 -0
- package/dist/entity/implicit-required-id.d.ts +15 -0
- package/dist/entity/implicit-required-id.d.ts.map +1 -0
- package/dist/entity/implicit-required-id.js +123 -0
- package/dist/entity/implicit-required-id.js.map +1 -0
- package/dist/entity/spec-scanner.d.ts +14 -0
- package/dist/entity/spec-scanner.d.ts.map +1 -0
- package/dist/entity/spec-scanner.js +37 -0
- package/dist/entity/spec-scanner.js.map +1 -0
- package/dist/handler/command-registration-readiness.d.ts +99 -0
- package/dist/handler/command-registration-readiness.d.ts.map +1 -0
- package/dist/handler/command-registration-readiness.js +120 -0
- package/dist/handler/command-registration-readiness.js.map +1 -0
- package/dist/handler/declared-rejections.d.ts +11 -0
- package/dist/handler/declared-rejections.d.ts.map +1 -0
- package/dist/handler/declared-rejections.js +34 -0
- package/dist/handler/declared-rejections.js.map +1 -0
- package/dist/handler/event-handler-filter.d.ts +43 -0
- package/dist/handler/event-handler-filter.d.ts.map +1 -0
- package/dist/handler/event-handler-filter.js +128 -0
- package/dist/handler/event-handler-filter.js.map +1 -0
- package/dist/handler/event-registration-readiness.d.ts +196 -0
- package/dist/handler/event-registration-readiness.d.ts.map +1 -0
- package/dist/handler/event-registration-readiness.js +187 -0
- package/dist/handler/event-registration-readiness.js.map +1 -0
- package/dist/handler/external.d.ts +10 -0
- package/dist/handler/external.d.ts.map +1 -0
- package/dist/handler/external.js +15 -0
- package/dist/handler/external.js.map +1 -0
- package/dist/handler/generated-handler-registry.d.ts +185 -0
- package/dist/handler/generated-handler-registry.d.ts.map +1 -0
- package/dist/handler/generated-handler-registry.js +439 -0
- package/dist/handler/generated-handler-registry.js.map +1 -0
- package/dist/handler/generated-registry-discovery.d.ts +94 -0
- package/dist/handler/generated-registry-discovery.d.ts.map +1 -0
- package/dist/handler/generated-registry-discovery.js +226 -0
- package/dist/handler/generated-registry-discovery.js.map +1 -0
- package/dist/handler/handler-decorators.d.ts +151 -0
- package/dist/handler/handler-decorators.d.ts.map +1 -0
- package/dist/handler/handler-decorators.js +275 -0
- package/dist/handler/handler-decorators.js.map +1 -0
- package/dist/handler/handler-metadata.d.ts +553 -0
- package/dist/handler/handler-metadata.d.ts.map +1 -0
- package/dist/handler/handler-metadata.js +437 -0
- package/dist/handler/handler-metadata.js.map +1 -0
- package/dist/handler/registration-readiness-metadata.d.ts +68 -0
- package/dist/handler/registration-readiness-metadata.d.ts.map +1 -0
- package/dist/handler/registration-readiness-metadata.js +171 -0
- package/dist/handler/registration-readiness-metadata.js.map +1 -0
- package/dist/handler/rejection-source.d.ts +11 -0
- package/dist/handler/rejection-source.d.ts.map +1 -0
- package/dist/handler/rejection-source.js +25 -0
- package/dist/handler/rejection-source.js.map +1 -0
- package/dist/handler/standalone.d.ts +25 -0
- package/dist/handler/standalone.d.ts.map +1 -0
- package/dist/handler/standalone.js +38 -0
- package/dist/handler/standalone.js.map +1 -0
- package/dist/index.d.ts +46 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +54 -0
- package/dist/index.js.map +1 -0
- package/dist/integration/external-messages.d.ts +49 -0
- package/dist/integration/external-messages.d.ts.map +1 -0
- package/dist/integration/external-messages.js +112 -0
- package/dist/integration/external-messages.js.map +1 -0
- package/dist/integration/integration-broker.d.ts +74 -0
- package/dist/integration/integration-broker.d.ts.map +1 -0
- package/dist/integration/integration-broker.js +444 -0
- package/dist/integration/integration-broker.js.map +1 -0
- package/dist/integration/third-party-context.d.ts +56 -0
- package/dist/integration/third-party-context.d.ts.map +1 -0
- package/dist/integration/third-party-context.js +130 -0
- package/dist/integration/third-party-context.js.map +1 -0
- package/dist/repository/command-errors.d.ts +25 -0
- package/dist/repository/command-errors.d.ts.map +1 -0
- package/dist/repository/command-errors.js +43 -0
- package/dist/repository/command-errors.js.map +1 -0
- package/dist/repository/command-routing.d.ts +72 -0
- package/dist/repository/command-routing.d.ts.map +1 -0
- package/dist/repository/command-routing.js +98 -0
- package/dist/repository/command-routing.js.map +1 -0
- package/dist/repository/commit-fence.d.ts +22 -0
- package/dist/repository/commit-fence.d.ts.map +1 -0
- package/dist/repository/commit-fence.js +37 -0
- package/dist/repository/commit-fence.js.map +1 -0
- package/dist/repository/event-routing.d.ts +71 -0
- package/dist/repository/event-routing.d.ts.map +1 -0
- package/dist/repository/event-routing.js +96 -0
- package/dist/repository/event-routing.js.map +1 -0
- package/dist/repository/primitive-id.d.ts +75 -0
- package/dist/repository/primitive-id.d.ts.map +1 -0
- package/dist/repository/primitive-id.js +85 -0
- package/dist/repository/primitive-id.js.map +1 -0
- package/dist/repository/repository.d.ts +667 -0
- package/dist/repository/repository.d.ts.map +1 -0
- package/dist/repository/repository.js +3510 -0
- package/dist/repository/repository.js.map +1 -0
- package/dist/repository/routing-declarations.d.ts +75 -0
- package/dist/repository/routing-declarations.d.ts.map +1 -0
- package/dist/repository/routing-declarations.js +101 -0
- package/dist/repository/routing-declarations.js.map +1 -0
- package/dist/repository/state-update-routing.d.ts +66 -0
- package/dist/repository/state-update-routing.d.ts.map +1 -0
- package/dist/repository/state-update-routing.js +91 -0
- package/dist/repository/state-update-routing.js.map +1 -0
- package/dist/runtime/runtime.d.ts +156 -0
- package/dist/runtime/runtime.d.ts.map +1 -0
- package/dist/runtime/runtime.js +215 -0
- package/dist/runtime/runtime.js.map +1 -0
- package/dist/runtime/signal-intake.d.ts +84 -0
- package/dist/runtime/signal-intake.d.ts.map +1 -0
- package/dist/runtime/signal-intake.js +94 -0
- package/dist/runtime/signal-intake.js.map +1 -0
- package/dist/runtime/signal-metadata.d.ts +217 -0
- package/dist/runtime/signal-metadata.d.ts.map +1 -0
- package/dist/runtime/signal-metadata.js +333 -0
- package/dist/runtime/signal-metadata.js.map +1 -0
- package/dist/runtime/signal-publisher.d.ts +144 -0
- package/dist/runtime/signal-publisher.d.ts.map +1 -0
- package/dist/runtime/signal-publisher.js +248 -0
- package/dist/runtime/signal-publisher.js.map +1 -0
- package/dist/runtime/standalone-handler-runtime.d.ts +114 -0
- package/dist/runtime/standalone-handler-runtime.d.ts.map +1 -0
- package/dist/runtime/standalone-handler-runtime.js +307 -0
- package/dist/runtime/standalone-handler-runtime.js.map +1 -0
- package/dist/server/environment-attachment.d.ts +356 -0
- package/dist/server/environment-attachment.d.ts.map +1 -0
- package/dist/server/environment-attachment.js +2062 -0
- package/dist/server/environment-attachment.js.map +1 -0
- package/dist/server/environment-delivery-records.d.ts +77 -0
- package/dist/server/environment-delivery-records.d.ts.map +1 -0
- package/dist/server/environment-delivery-records.js +282 -0
- package/dist/server/environment-delivery-records.js.map +1 -0
- package/dist/server/environment-delivery-worker.d.ts +161 -0
- package/dist/server/environment-delivery-worker.d.ts.map +1 -0
- package/dist/server/environment-delivery-worker.js +673 -0
- package/dist/server/environment-delivery-worker.js.map +1 -0
- package/dist/server/environment.d.ts +43 -0
- package/dist/server/environment.d.ts.map +1 -0
- package/dist/server/environment.js +90 -0
- package/dist/server/environment.js.map +1 -0
- package/dist/server/managed-child-subscription.d.ts +11 -0
- package/dist/server/managed-child-subscription.d.ts.map +1 -0
- package/dist/server/managed-child-subscription.js +44 -0
- package/dist/server/managed-child-subscription.js.map +1 -0
- package/dist/server/managed-server-application.d.ts +327 -0
- package/dist/server/managed-server-application.d.ts.map +1 -0
- package/dist/server/managed-server-application.js +937 -0
- package/dist/server/managed-server-application.js.map +1 -0
- package/dist/server/node-coordinator.d.ts +191 -0
- package/dist/server/node-coordinator.d.ts.map +1 -0
- package/dist/server/node-coordinator.js +552 -0
- package/dist/server/node-coordinator.js.map +1 -0
- package/dist/server/process-server-coordinator.d.ts +15 -0
- package/dist/server/process-server-coordinator.d.ts.map +1 -0
- package/dist/server/process-server-coordinator.js +112 -0
- package/dist/server/process-server-coordinator.js.map +1 -0
- package/dist/server/reserved-spine-rpc-paths.json +8 -0
- package/dist/server/retryable-close.d.ts +28 -0
- package/dist/server/retryable-close.d.ts.map +1 -0
- package/dist/server/retryable-close.js +129 -0
- package/dist/server/retryable-close.js.map +1 -0
- package/dist/server/server-environment.d.ts +180 -0
- package/dist/server/server-environment.d.ts.map +1 -0
- package/dist/server/server-environment.js +418 -0
- package/dist/server/server-environment.js.map +1 -0
- package/dist/server/server-log.d.ts +18 -0
- package/dist/server/server-log.d.ts.map +1 -0
- package/dist/server/server-log.js +100 -0
- package/dist/server/server-log.js.map +1 -0
- package/dist/server/server.d.ts +221 -0
- package/dist/server/server.d.ts.map +1 -0
- package/dist/server/server.js +704 -0
- package/dist/server/server.js.map +1 -0
- package/dist/services/query-reader.d.ts +19 -0
- package/dist/services/query-reader.d.ts.map +1 -0
- package/dist/services/query-reader.js +43 -0
- package/dist/services/query-reader.js.map +1 -0
- package/dist/services/spine-services.d.ts +88 -0
- package/dist/services/spine-services.d.ts.map +1 -0
- package/dist/services/spine-services.js +1582 -0
- package/dist/services/spine-services.js.map +1 -0
- package/dist/spi/delivery.d.ts +5 -0
- package/dist/spi/delivery.d.ts.map +1 -0
- package/dist/spi/delivery.js +18 -0
- package/dist/spi/delivery.js.map +1 -0
- package/dist/spi/handler-registry.d.ts +8 -0
- package/dist/spi/handler-registry.d.ts.map +1 -0
- package/dist/spi/handler-registry.js +15 -0
- package/dist/spi/handler-registry.js.map +1 -0
- package/dist/stand/stand.d.ts +294 -0
- package/dist/stand/stand.d.ts.map +1 -0
- package/dist/stand/stand.js +681 -0
- package/dist/stand/stand.js.map +1 -0
- package/dist/stand/subscription-observer.d.ts +53 -0
- package/dist/stand/subscription-observer.d.ts.map +1 -0
- package/dist/stand/subscription-observer.js +444 -0
- package/dist/stand/subscription-observer.js.map +1 -0
- package/dist/stand/subscription-records.d.ts +12 -0
- package/dist/stand/subscription-records.d.ts.map +1 -0
- package/dist/stand/subscription-records.js +99 -0
- package/dist/stand/subscription-records.js.map +1 -0
- package/dist/stand/subscription-registry.d.ts +285 -0
- package/dist/stand/subscription-registry.d.ts.map +1 -0
- package/dist/stand/subscription-registry.js +403 -0
- package/dist/stand/subscription-registry.js.map +1 -0
- package/dist/stand/subscription-runtime.d.ts +102 -0
- package/dist/stand/subscription-runtime.d.ts.map +1 -0
- package/dist/stand/subscription-runtime.js +380 -0
- package/dist/stand/subscription-runtime.js.map +1 -0
- package/dist/testing/index.d.ts +36 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +54 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +76 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment-delivery-worker.js","sourceRoot":"","sources":["../../src/server/environment-delivery-worker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The Node deployment profile selected for this module graph.
|
|
3
|
+
*/
|
|
4
|
+
export declare enum EnvironmentType {
|
|
5
|
+
/**
|
|
6
|
+
* Selects the local development and test profile.
|
|
7
|
+
*/
|
|
8
|
+
Local = "local",
|
|
9
|
+
/**
|
|
10
|
+
* Selects the production deployment profile.
|
|
11
|
+
*/
|
|
12
|
+
Production = "production"
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Stable process environment information for the Node runtime.
|
|
16
|
+
*
|
|
17
|
+
* The profile is derived once. Facility configuration remains the responsibility
|
|
18
|
+
* of {@link ServerEnvironment} so callers cannot replace a resolved process
|
|
19
|
+
* environment through individual servers.
|
|
20
|
+
*/
|
|
21
|
+
export declare class Environment {
|
|
22
|
+
/**
|
|
23
|
+
* The selected Node deployment profile.
|
|
24
|
+
*/
|
|
25
|
+
readonly type: EnvironmentType;
|
|
26
|
+
private constructor();
|
|
27
|
+
/**
|
|
28
|
+
* Returns this module graph's canonical Node environment.
|
|
29
|
+
*
|
|
30
|
+
* @returns The resolved process environment.
|
|
31
|
+
*/
|
|
32
|
+
static instance(): Environment;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Provides deterministic environment controls for package tests.
|
|
36
|
+
*
|
|
37
|
+
* @internal
|
|
38
|
+
*/
|
|
39
|
+
export declare const EnvironmentTests: {
|
|
40
|
+
readonly reset: () => void;
|
|
41
|
+
readonly use: (type: EnvironmentType) => void;
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=environment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/server/environment.ts"],"names":[],"mappings":"AAcA;;GAEG;AACH,oBAAY,eAAe;IAGzB;;OAEG;IACH,KAAK,UAAU;IAEf;;OAEG;IACH,UAAU,eAAe;CAC1B;AAQD;;;;;;GAMG;AACH,qBAAa,WAAW;IAGtB;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAE/B,OAAO;IAcP;;;;OAIG;IACH,MAAM,CAAC,QAAQ,IAAI,WAAW;CAK/B;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;CAmB9C,CAAC"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2026, CodeMatters. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
|
|
5
|
+
* in compliance with the License. You may obtain a copy of the License at
|
|
6
|
+
*
|
|
7
|
+
* https://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
*
|
|
9
|
+
* Unless required by applicable law or agreed to in writing, software distributed under the License
|
|
10
|
+
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
|
|
11
|
+
* or implied. See the License for the specific language governing permissions and limitations under
|
|
12
|
+
* the License.
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* The Node deployment profile selected for this module graph.
|
|
16
|
+
*/
|
|
17
|
+
export var EnvironmentType;
|
|
18
|
+
(function (EnvironmentType) {
|
|
19
|
+
// prettier-ignore
|
|
20
|
+
/**
|
|
21
|
+
* Selects the local development and test profile.
|
|
22
|
+
*/
|
|
23
|
+
EnvironmentType["Local"] = "local";
|
|
24
|
+
/**
|
|
25
|
+
* Selects the production deployment profile.
|
|
26
|
+
*/
|
|
27
|
+
EnvironmentType["Production"] = "production";
|
|
28
|
+
})(EnvironmentType || (EnvironmentType = {}));
|
|
29
|
+
let resolvedEnvironment;
|
|
30
|
+
let resetLocalTest;
|
|
31
|
+
let useEnvironmentTest = () => {
|
|
32
|
+
throw new Error("Environment test controls are unavailable.");
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Stable process environment information for the Node runtime.
|
|
36
|
+
*
|
|
37
|
+
* The profile is derived once. Facility configuration remains the responsibility
|
|
38
|
+
* of {@link ServerEnvironment} so callers cannot replace a resolved process
|
|
39
|
+
* environment through individual servers.
|
|
40
|
+
*/
|
|
41
|
+
export class Environment {
|
|
42
|
+
// prettier-ignore
|
|
43
|
+
/**
|
|
44
|
+
* The selected Node deployment profile.
|
|
45
|
+
*/
|
|
46
|
+
type;
|
|
47
|
+
constructor(type) {
|
|
48
|
+
this.type = type;
|
|
49
|
+
Object.freeze(this);
|
|
50
|
+
}
|
|
51
|
+
static {
|
|
52
|
+
resetLocalTest = () => {
|
|
53
|
+
resolvedEnvironment = new Environment(EnvironmentType.Local);
|
|
54
|
+
};
|
|
55
|
+
useEnvironmentTest = (type) => {
|
|
56
|
+
resolvedEnvironment = new Environment(type);
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Returns this module graph's canonical Node environment.
|
|
61
|
+
*
|
|
62
|
+
* @returns The resolved process environment.
|
|
63
|
+
*/
|
|
64
|
+
static instance() {
|
|
65
|
+
return (resolvedEnvironment ??= new Environment(process.env.NODE_ENV === "production" ? EnvironmentType.Production : EnvironmentType.Local));
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Provides deterministic environment controls for package tests.
|
|
70
|
+
*
|
|
71
|
+
* @internal
|
|
72
|
+
*/
|
|
73
|
+
export const EnvironmentTests = Object.freeze({
|
|
74
|
+
// prettier-ignore
|
|
75
|
+
/**
|
|
76
|
+
* Restores local environment state before the next singleton lookup.
|
|
77
|
+
*/
|
|
78
|
+
reset() {
|
|
79
|
+
resetLocalTest();
|
|
80
|
+
},
|
|
81
|
+
/**
|
|
82
|
+
* Selects one environment type before the next singleton lookup.
|
|
83
|
+
*
|
|
84
|
+
* @param type Supplies the test environment type.
|
|
85
|
+
*/
|
|
86
|
+
use(type) {
|
|
87
|
+
useEnvironmentTest(type);
|
|
88
|
+
},
|
|
89
|
+
});
|
|
90
|
+
//# sourceMappingURL=environment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/server/environment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH;;GAEG;AACH,MAAM,CAAN,IAAY,eAYX;AAZD,WAAY,eAAe;IACzB,kBAAkB;IAElB;;OAEG;IACH,kCAAe,CAAA;IAEf;;OAEG;IACH,4CAAyB,CAAA;AAC3B,CAAC,EAZW,eAAe,KAAf,eAAe,QAY1B;AAED,IAAI,mBAA4C,CAAC;AACjD,IAAI,cAAwC,CAAC;AAC7C,IAAI,kBAAkB,GAAoC,GAAG,EAAE;IAC7D,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;AAChE,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,OAAO,WAAW;IACtB,kBAAkB;IAElB;;OAEG;IACM,IAAI,CAAkB;IAE/B,YAAoB,IAAqB;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;QACE,cAAc,GAAG,GAAG,EAAE;YACpB,mBAAmB,GAAG,IAAI,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC/D,CAAC,CAAC;QACF,kBAAkB,GAAG,CAAC,IAAI,EAAE,EAAE;YAC5B,mBAAmB,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,QAAQ;QACb,OAAO,CAAC,mBAAmB,KAAK,IAAI,WAAW,CAC7C,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAC3F,CAAC,CAAC;IACL,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAGzB,MAAM,CAAC,MAAM,CAAC;IAChB,kBAAkB;IAElB;;OAEG;IACH,KAAK;QACH,cAAc,EAAE,CAAC;IACnB,CAAC;IAED;;;;OAIG;IACH,GAAG,CAAC,IAAqB;QACvB,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Coordinates private managed-child subscription installation notification.
|
|
3
|
+
*
|
|
4
|
+
* @internal
|
|
5
|
+
*/
|
|
6
|
+
export declare const managedChildSubscriptionAccess: Readonly<{
|
|
7
|
+
install(onInstalled: (id: string) => void): void;
|
|
8
|
+
clear(): void;
|
|
9
|
+
installed(id: string): void;
|
|
10
|
+
}>;
|
|
11
|
+
//# sourceMappingURL=managed-child-subscription.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"managed-child-subscription.d.ts","sourceRoot":"","sources":["../../src/server/managed-child-subscription.ts"],"names":[],"mappings":"AAwBA;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,EAAE,QAAQ,CAAC;IACpD,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IACjD,KAAK,IAAI,IAAI,CAAC;IACd,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAcC,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2026, CodeMatters. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
|
|
5
|
+
* in compliance with the License. You may obtain a copy of the License at
|
|
6
|
+
*
|
|
7
|
+
* https://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
*
|
|
9
|
+
* Unless required by applicable law or agreed to in writing, software distributed under the License
|
|
10
|
+
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
|
|
11
|
+
* or implied. See the License for the specific language governing permissions and limitations under
|
|
12
|
+
* the License.
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Private bridge from the normal local subscription activation point to the
|
|
16
|
+
* managed-child lifecycle. It deliberately carries only a child subscription
|
|
17
|
+
* identity; the public subscription update stream remains untouched.
|
|
18
|
+
*
|
|
19
|
+
* @internal
|
|
20
|
+
*/
|
|
21
|
+
let installed;
|
|
22
|
+
let reported = new Set();
|
|
23
|
+
/**
|
|
24
|
+
* Coordinates private managed-child subscription installation notification.
|
|
25
|
+
*
|
|
26
|
+
* @internal
|
|
27
|
+
*/
|
|
28
|
+
export const managedChildSubscriptionAccess = Object.freeze({
|
|
29
|
+
install(onInstalled) {
|
|
30
|
+
installed = onInstalled;
|
|
31
|
+
reported = new Set();
|
|
32
|
+
},
|
|
33
|
+
clear() {
|
|
34
|
+
installed = undefined;
|
|
35
|
+
reported.clear();
|
|
36
|
+
},
|
|
37
|
+
installed(id) {
|
|
38
|
+
if (installed === undefined || reported.has(id))
|
|
39
|
+
return;
|
|
40
|
+
reported.add(id);
|
|
41
|
+
installed(id);
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
//# sourceMappingURL=managed-child-subscription.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"managed-child-subscription.js","sourceRoot":"","sources":["../../src/server/managed-child-subscription.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH;;;;;;GAMG;AACH,IAAI,SAA6C,CAAC;AAClD,IAAI,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;AAEjC;;;;GAIG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAItC,MAAM,CAAC,MAAM,CAAC;IACjB,OAAO,CAAC,WAAW;QACjB,SAAS,GAAG,WAAW,CAAC;QACxB,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;IACvB,CAAC;IACD,KAAK;QACH,SAAS,GAAG,SAAS,CAAC;QACtB,QAAQ,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;IACD,SAAS,CAAC,EAAE;QACV,IAAI,SAAS,KAAK,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAO;QACxD,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjB,SAAS,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,327 @@
|
|
|
1
|
+
import { type ChildProcess } from "node:child_process";
|
|
2
|
+
import { type RunningServer } from "./server.js";
|
|
3
|
+
import { NodeCoordinator, type ReadyCoordinatorMember } from "./node-coordinator.js";
|
|
4
|
+
import { InMemorySubscriptionRegistry } from "../stand/subscription-registry.js";
|
|
5
|
+
import type { Subscription } from "@spine-event-engine/proto/client";
|
|
6
|
+
/**
|
|
7
|
+
*
|
|
8
|
+
* Configures bounded replacement after an unexpected replica exit.
|
|
9
|
+
*/
|
|
10
|
+
export interface ManagedServerRestartOptions {
|
|
11
|
+
/**
|
|
12
|
+
*
|
|
13
|
+
* Delays the first replacement attempt. Defaults to 250 milliseconds.
|
|
14
|
+
*/
|
|
15
|
+
readonly initialDelayMs?: number;
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* Limits replacement delay to 30 seconds.
|
|
19
|
+
*/
|
|
20
|
+
readonly maximumDelayMs?: number;
|
|
21
|
+
/**
|
|
22
|
+
*
|
|
23
|
+
* Resets replacement delay after 60 seconds of READY status.
|
|
24
|
+
*/
|
|
25
|
+
readonly healthyReadyMs?: number;
|
|
26
|
+
/**
|
|
27
|
+
*
|
|
28
|
+
* Limits concurrent child starts to the smaller of four and processCount.
|
|
29
|
+
*/
|
|
30
|
+
readonly concurrentStarts?: number;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
*
|
|
34
|
+
* Configures one locally assembled complete-replica application.
|
|
35
|
+
*/
|
|
36
|
+
export interface ManagedServerApplicationOptions {
|
|
37
|
+
/**
|
|
38
|
+
*
|
|
39
|
+
* Specifies the number of complete application replicas to start.
|
|
40
|
+
*/
|
|
41
|
+
readonly processCount: number;
|
|
42
|
+
/**
|
|
43
|
+
*
|
|
44
|
+
* Hosts the front-facing Coordinator listener. Defaults to `127.0.0.1`.
|
|
45
|
+
*/
|
|
46
|
+
readonly host?: string;
|
|
47
|
+
/**
|
|
48
|
+
*
|
|
49
|
+
* Selects the front-facing Coordinator listener port.
|
|
50
|
+
*
|
|
51
|
+
* Use zero to request an available port from the operating system. The
|
|
52
|
+
* resulting endpoint is available from the started application handle.
|
|
53
|
+
*/
|
|
54
|
+
readonly port: number;
|
|
55
|
+
/**
|
|
56
|
+
*
|
|
57
|
+
* Identifies the ESM entry module invoked in parent and child processes.
|
|
58
|
+
*/
|
|
59
|
+
readonly moduleUrl: string;
|
|
60
|
+
/**
|
|
61
|
+
*
|
|
62
|
+
* Builds one complete local application server in a child process.
|
|
63
|
+
*
|
|
64
|
+
* The framework owns the returned `Server` for the managed child lifetime.
|
|
65
|
+
* Every assembled Bounded Context must use its actual
|
|
66
|
+
* `InMemorySubscriptionRegistry`: managed mode rejects persistent and custom
|
|
67
|
+
* registries, then closes the assembled server before the child can report
|
|
68
|
+
* READY. This prevents child-local durable subscription ownership.
|
|
69
|
+
*
|
|
70
|
+
* @param options Supplies the child-only loopback listener address.
|
|
71
|
+
* @returns The assembled local application server.
|
|
72
|
+
*/
|
|
73
|
+
readonly createServer: (options: {
|
|
74
|
+
/**
|
|
75
|
+
*
|
|
76
|
+
* Identifies the loopback listener host.
|
|
77
|
+
*/
|
|
78
|
+
readonly host: string;
|
|
79
|
+
/**
|
|
80
|
+
*
|
|
81
|
+
* Requests an ephemeral loopback listener port.
|
|
82
|
+
*/
|
|
83
|
+
readonly port: number;
|
|
84
|
+
}) => Promise<RunningServer>;
|
|
85
|
+
/**
|
|
86
|
+
*
|
|
87
|
+
* Completes child-local prerequisites after local server assembly.
|
|
88
|
+
*
|
|
89
|
+
* This callback runs only in a managed child. It is deliberately lazy so a
|
|
90
|
+
* parent never starts application synchronization work. Completion lets the
|
|
91
|
+
* child report `SYNCHRONIZING`; final Delivery admission and `READY` still
|
|
92
|
+
* wait for the parent Coordinator to activate the child.
|
|
93
|
+
*
|
|
94
|
+
* @returns Completion after child-local prerequisites are established.
|
|
95
|
+
*/
|
|
96
|
+
readonly synchronize?: () => Promise<void>;
|
|
97
|
+
/**
|
|
98
|
+
*
|
|
99
|
+
* Configures bounded private process replacement.
|
|
100
|
+
*/
|
|
101
|
+
readonly restart?: ManagedServerRestartOptions;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
*
|
|
105
|
+
* Represents one managed complete-replica cohort.
|
|
106
|
+
*/
|
|
107
|
+
export interface ManagedServerApplicationHandle {
|
|
108
|
+
/**
|
|
109
|
+
*
|
|
110
|
+
* Reports whether at least one managed child is currently ready.
|
|
111
|
+
*/
|
|
112
|
+
readonly ready: boolean;
|
|
113
|
+
/**
|
|
114
|
+
*
|
|
115
|
+
* Stops all child processes and waits for their exit.
|
|
116
|
+
*
|
|
117
|
+
* @returns Completion after managed child cleanup succeeds.
|
|
118
|
+
*/
|
|
119
|
+
close(): Promise<void>;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
*
|
|
123
|
+
* Starts a managed parent and its complete-replica child processes.
|
|
124
|
+
*/
|
|
125
|
+
export declare const ManagedServerApplication: Readonly<{
|
|
126
|
+
/**
|
|
127
|
+
*
|
|
128
|
+
* Starts a managed parent and complete-replica children without taking
|
|
129
|
+
* process-signal ownership.
|
|
130
|
+
*
|
|
131
|
+
* The caller closes the returned handle. This is for an embedding host that
|
|
132
|
+
* already owns `SIGINT` and `SIGTERM` handling.
|
|
133
|
+
*
|
|
134
|
+
* @param options Configures the managed application replicas.
|
|
135
|
+
* @returns The started managed application handle.
|
|
136
|
+
*/
|
|
137
|
+
start(options: ManagedServerApplicationOptions): Promise<ManagedServerApplicationHandle>;
|
|
138
|
+
/**
|
|
139
|
+
*
|
|
140
|
+
* Starts a managed parent and complete-replica children with process-signal
|
|
141
|
+
* ownership.
|
|
142
|
+
*
|
|
143
|
+
* @param options Configures the managed application replicas.
|
|
144
|
+
* @returns The started managed application handle.
|
|
145
|
+
*/
|
|
146
|
+
run(options: ManagedServerApplicationOptions): Promise<ManagedServerApplicationHandle>;
|
|
147
|
+
}>;
|
|
148
|
+
/**
|
|
149
|
+
*
|
|
150
|
+
* Supplies deterministic dependencies for the private process supervisor.
|
|
151
|
+
*
|
|
152
|
+
* @internal
|
|
153
|
+
*/
|
|
154
|
+
export interface ManagedServerCoordinatorDependencies {
|
|
155
|
+
/**
|
|
156
|
+
*
|
|
157
|
+
* Provides the clock and timers used by managed replica lifecycle tests.
|
|
158
|
+
*/
|
|
159
|
+
readonly clock: {
|
|
160
|
+
/**
|
|
161
|
+
*
|
|
162
|
+
* Reads the current clock value.
|
|
163
|
+
*
|
|
164
|
+
* @returns The current time in milliseconds.
|
|
165
|
+
*/
|
|
166
|
+
now(): number;
|
|
167
|
+
/**
|
|
168
|
+
*
|
|
169
|
+
* Schedules a timeout callback.
|
|
170
|
+
*
|
|
171
|
+
* @param onTimeout Runs when the requested delay elapses.
|
|
172
|
+
* @param delay Specifies the timeout in milliseconds.
|
|
173
|
+
* @returns A timer handle that can be cleared.
|
|
174
|
+
*/
|
|
175
|
+
setTimeout(onTimeout: () => void, delay: number): unknown;
|
|
176
|
+
/**
|
|
177
|
+
*
|
|
178
|
+
* Cancels a scheduled timeout.
|
|
179
|
+
*
|
|
180
|
+
* @param timer Identifies the timer to cancel.
|
|
181
|
+
*/
|
|
182
|
+
clearTimeout(timer: unknown): void;
|
|
183
|
+
};
|
|
184
|
+
/**
|
|
185
|
+
*
|
|
186
|
+
* Starts one child process for a replica incarnation.
|
|
187
|
+
*
|
|
188
|
+
* @param moduleUrl Identifies the child ESM entry module.
|
|
189
|
+
* @param slot Identifies the managed replica slot.
|
|
190
|
+
* @param incarnation Identifies this child process incarnation.
|
|
191
|
+
* @returns The started child process.
|
|
192
|
+
*/
|
|
193
|
+
readonly spawn: (moduleUrl: string, slot: number, incarnation: string) => ChildProcess;
|
|
194
|
+
/**
|
|
195
|
+
*
|
|
196
|
+
* Opens the private parent Coordinator after initial replica readiness.
|
|
197
|
+
*
|
|
198
|
+
* @param options Supplies private Coordinator membership and listener facts.
|
|
199
|
+
* @returns The running private Coordinator.
|
|
200
|
+
*/
|
|
201
|
+
readonly openCoordinator?: (options: {
|
|
202
|
+
readonly members: ManagedServerCoordinator;
|
|
203
|
+
readonly host?: string;
|
|
204
|
+
readonly port?: number;
|
|
205
|
+
}) => Promise<NodeCoordinator>;
|
|
206
|
+
}
|
|
207
|
+
type ManagedServerCoordinatorOptions = Omit<ManagedServerApplicationOptions, "port"> & {
|
|
208
|
+
readonly port?: number;
|
|
209
|
+
readonly manageProcessSignals?: boolean;
|
|
210
|
+
};
|
|
211
|
+
/**
|
|
212
|
+
*
|
|
213
|
+
* Coordinates the parent-only lifecycle of managed application replicas.
|
|
214
|
+
*
|
|
215
|
+
* @internal
|
|
216
|
+
*/
|
|
217
|
+
export declare class ManagedServerCoordinator {
|
|
218
|
+
#private;
|
|
219
|
+
/**
|
|
220
|
+
*
|
|
221
|
+
* Creates a coordinator for one configured replica cohort.
|
|
222
|
+
*
|
|
223
|
+
* @param options Configures complete child application replicas.
|
|
224
|
+
* @param dependencies Supplies private process and clock dependencies.
|
|
225
|
+
*/
|
|
226
|
+
constructor(options: ManagedServerCoordinatorOptions, dependencies?: ManagedServerCoordinatorDependencies);
|
|
227
|
+
/**
|
|
228
|
+
*
|
|
229
|
+
* Starts every initial replica and waits until all report READY.
|
|
230
|
+
*
|
|
231
|
+
* @returns The handle for the started managed cohort.
|
|
232
|
+
*/
|
|
233
|
+
start(): Promise<ManagedServerApplicationHandle>;
|
|
234
|
+
/**
|
|
235
|
+
*
|
|
236
|
+
* Stops managed children and prevents later replacement starts.
|
|
237
|
+
*
|
|
238
|
+
* @returns Completion after child and retired-child cleanup succeeds.
|
|
239
|
+
*/
|
|
240
|
+
close(): Promise<void>;
|
|
241
|
+
/**
|
|
242
|
+
*
|
|
243
|
+
* Returns ready child facts to the next Coordinator slice.
|
|
244
|
+
*
|
|
245
|
+
* @returns The ready child topology facts.
|
|
246
|
+
* @internal
|
|
247
|
+
*/
|
|
248
|
+
readyMembers(): readonly ReadyCoordinatorMember[];
|
|
249
|
+
/**
|
|
250
|
+
* Returns READY and synchronizing members whose relays remain eligible.
|
|
251
|
+
*
|
|
252
|
+
* @returns Private relay member facts.
|
|
253
|
+
*/
|
|
254
|
+
relayMembers(): readonly ReadyCoordinatorMember[];
|
|
255
|
+
/**
|
|
256
|
+
* Records an exact native subscription whose activation started for a member.
|
|
257
|
+
*
|
|
258
|
+
* @param member Supplies the member that owns the child subscription.
|
|
259
|
+
* @param subscription Supplies the activating native subscription.
|
|
260
|
+
*/
|
|
261
|
+
onChildSubscriptionActivated(member: ReadyCoordinatorMember, subscription: Subscription): void;
|
|
262
|
+
/**
|
|
263
|
+
* Clears a pending child-installation wait after cancellation.
|
|
264
|
+
*
|
|
265
|
+
* @param member Supplies the member that owns the cancelled subscription.
|
|
266
|
+
* @param subscription Supplies the cancelled native subscription.
|
|
267
|
+
*/
|
|
268
|
+
onChildSubscriptionCancelled(member: ReadyCoordinatorMember, subscription: Subscription): void;
|
|
269
|
+
/**
|
|
270
|
+
* Activates synchronizing children after their retained relay children install.
|
|
271
|
+
*
|
|
272
|
+
* @returns Completion after each current child receives private activation.
|
|
273
|
+
*/
|
|
274
|
+
onRelaySynchronized(): Promise<void>;
|
|
275
|
+
/**
|
|
276
|
+
* Subscribes one private Coordinator to READY membership changes.
|
|
277
|
+
*
|
|
278
|
+
* @param onChange Runs after an admitted READY member or removed member changes.
|
|
279
|
+
* @returns Stops later private notifications.
|
|
280
|
+
* @internal
|
|
281
|
+
*/
|
|
282
|
+
onReadyMembersChange(onChange: () => void): () => void;
|
|
283
|
+
/**
|
|
284
|
+
* Subscribes one private Coordinator to relay-membership changes.
|
|
285
|
+
*
|
|
286
|
+
* @param onChange Runs after a relay member is admitted or removed.
|
|
287
|
+
* @returns Stops later relay-membership callbacks.
|
|
288
|
+
*/
|
|
289
|
+
onRelayMembersChange(onChange: () => void): () => void;
|
|
290
|
+
/**
|
|
291
|
+
* Returns the private public-listener endpoint for coordinator acceptance.
|
|
292
|
+
*
|
|
293
|
+
* @returns The listener endpoint after managed startup, when open.
|
|
294
|
+
* @internal
|
|
295
|
+
*/
|
|
296
|
+
coordinatorEndpoint(): string | undefined;
|
|
297
|
+
}
|
|
298
|
+
/**
|
|
299
|
+
*
|
|
300
|
+
* Represents private ready-child facts for Coordinator forwarding.
|
|
301
|
+
*
|
|
302
|
+
* @internal
|
|
303
|
+
*/
|
|
304
|
+
type ReadyMember = ReadyCoordinatorMember;
|
|
305
|
+
/**
|
|
306
|
+
*
|
|
307
|
+
* Exposes private Coordinator topology facts to the next internal slice.
|
|
308
|
+
*
|
|
309
|
+
* @internal
|
|
310
|
+
*/
|
|
311
|
+
export declare const managedServerCoordinatorAccess: Readonly<{
|
|
312
|
+
readyMembers(coordinator: ManagedServerCoordinator): readonly ReadyMember[];
|
|
313
|
+
coordinatorEndpoint(coordinator: ManagedServerCoordinator): string | undefined;
|
|
314
|
+
}>;
|
|
315
|
+
/**
|
|
316
|
+
*
|
|
317
|
+
* Exposes private managed-child facts to Coordinator forwarding tests.
|
|
318
|
+
*
|
|
319
|
+
* @internal
|
|
320
|
+
*/
|
|
321
|
+
export declare const managedServerApplicationAccess: Readonly<{
|
|
322
|
+
readyMembers(handle: ManagedServerApplicationHandle): readonly ReadyMember[];
|
|
323
|
+
coordinatorEndpoint(handle: ManagedServerApplicationHandle): string | undefined;
|
|
324
|
+
installRegistriesForTest(server: RunningServer, registries: readonly InMemorySubscriptionRegistry[]): void;
|
|
325
|
+
}>;
|
|
326
|
+
export {};
|
|
327
|
+
//# sourceMappingURL=managed-server-application.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"managed-server-application.d.ts","sourceRoot":"","sources":["../../src/server/managed-server-application.ts"],"names":[],"mappings":"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"}
|