@spine-event-engine/server 2.0.0-snapshot.25 → 2.0.0-snapshot.26
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/README.md +49 -9
- package/REFERENCE.md +339 -22
- package/dist/agent/agent-history.d.ts +19 -3
- package/dist/agent/agent-history.d.ts.map +1 -1
- package/dist/agent/agent-history.js +41 -10
- package/dist/agent/agent-history.js.map +1 -1
- package/dist/agent/agent-live-read-runtime.d.ts +12 -1
- package/dist/agent/agent-live-read-runtime.d.ts.map +1 -1
- package/dist/agent/agent-live-read-runtime.js +5 -4
- package/dist/agent/agent-live-read-runtime.js.map +1 -1
- package/dist/browser/browser-server.d.ts +163 -0
- package/dist/browser/browser-server.d.ts.map +1 -1
- package/dist/browser/browser-server.js +579 -188
- package/dist/browser/browser-server.js.map +1 -1
- package/dist/browser/durable-subscription-bindings.d.ts +5 -0
- package/dist/browser/durable-subscription-bindings.d.ts.map +1 -1
- package/dist/browser/durable-subscription-bindings.js +226 -38
- package/dist/browser/durable-subscription-bindings.js.map +1 -1
- package/dist/browser/options.d.ts +5 -0
- package/dist/browser/options.d.ts.map +1 -1
- package/dist/bus/command-bus.d.ts +3 -0
- package/dist/bus/command-bus.d.ts.map +1 -1
- package/dist/bus/command-bus.js +69 -9
- package/dist/bus/command-bus.js.map +1 -1
- package/dist/bus/command-errors.d.ts +20 -4
- package/dist/bus/command-errors.d.ts.map +1 -1
- package/dist/bus/command-errors.js +47 -7
- package/dist/bus/command-errors.js.map +1 -1
- package/dist/bus/event-bus.d.ts +3 -0
- package/dist/bus/event-bus.d.ts.map +1 -1
- package/dist/bus/event-bus.js +130 -8
- package/dist/bus/event-bus.js.map +1 -1
- package/dist/context/bounded-context.d.ts +29 -11
- package/dist/context/bounded-context.d.ts.map +1 -1
- package/dist/context/bounded-context.js +147 -186
- package/dist/context/bounded-context.js.map +1 -1
- package/dist/entity/entity.d.ts +59 -0
- package/dist/entity/entity.d.ts.map +1 -1
- package/dist/entity/entity.js +60 -0
- package/dist/entity/entity.js.map +1 -1
- package/dist/handler/app-query-handler.d.ts +60 -0
- package/dist/handler/app-query-handler.d.ts.map +1 -0
- package/dist/handler/app-query-handler.js +23 -0
- package/dist/handler/app-query-handler.js.map +1 -0
- package/dist/handler/generated-registry-discovery.d.ts +6 -0
- package/dist/handler/generated-registry-discovery.d.ts.map +1 -1
- package/dist/handler/generated-registry-discovery.js +71 -2
- package/dist/handler/generated-registry-discovery.js.map +1 -1
- package/dist/handler/handler-decorators.d.ts +8 -29
- package/dist/handler/handler-decorators.d.ts.map +1 -1
- package/dist/handler/handler-decorators.js +33 -210
- package/dist/handler/handler-decorators.js.map +1 -1
- package/dist/handler/spine-metadata-inventory.d.ts +99 -0
- package/dist/handler/spine-metadata-inventory.d.ts.map +1 -0
- package/dist/handler/spine-metadata-inventory.js +162 -0
- package/dist/handler/spine-metadata-inventory.js.map +1 -0
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/repository/repository.d.ts +44 -1
- package/dist/repository/repository.d.ts.map +1 -1
- package/dist/repository/repository.js +368 -88
- package/dist/repository/repository.js.map +1 -1
- package/dist/server/managed-server-application.d.ts +12 -11
- package/dist/server/managed-server-application.d.ts.map +1 -1
- package/dist/server/managed-server-application.js +41 -25
- package/dist/server/managed-server-application.js.map +1 -1
- package/dist/server/node-coordinator.d.ts +18 -5
- package/dist/server/node-coordinator.d.ts.map +1 -1
- package/dist/server/node-coordinator.js +554 -84
- package/dist/server/node-coordinator.js.map +1 -1
- package/dist/server/reserved-spine-rpc-paths.json +1 -0
- package/dist/server/server-environment.d.ts +17 -0
- package/dist/server/server-environment.d.ts.map +1 -1
- package/dist/server/server-environment.js +77 -16
- package/dist/server/server-environment.js.map +1 -1
- package/dist/server/server.d.ts +45 -0
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +111 -3
- package/dist/server/server.js.map +1 -1
- package/dist/services/app-query-execution.d.ts +53 -0
- package/dist/services/app-query-execution.d.ts.map +1 -0
- package/dist/services/app-query-execution.js +408 -0
- package/dist/services/app-query-execution.js.map +1 -0
- package/dist/services/query-reader.d.ts +32 -7
- package/dist/services/query-reader.d.ts.map +1 -1
- package/dist/services/query-reader.js +22 -2
- package/dist/services/query-reader.js.map +1 -1
- package/dist/services/read-request-status.d.ts +65 -0
- package/dist/services/read-request-status.d.ts.map +1 -0
- package/dist/services/read-request-status.js +151 -0
- package/dist/services/read-request-status.js.map +1 -0
- package/dist/services/spine-services.d.ts +36 -7
- package/dist/services/spine-services.d.ts.map +1 -1
- package/dist/services/spine-services.js +900 -168
- package/dist/services/spine-services.js.map +1 -1
- package/dist/services/trusted-reader-ingress.d.ts +92 -0
- package/dist/services/trusted-reader-ingress.d.ts.map +1 -0
- package/dist/services/trusted-reader-ingress.js +89 -0
- package/dist/services/trusted-reader-ingress.js.map +1 -0
- package/dist/spi/handler-registry.d.ts +2 -0
- package/dist/spi/handler-registry.d.ts.map +1 -1
- package/dist/spi/handler-registry.js +1 -1
- package/dist/spi/handler-registry.js.map +1 -1
- package/dist/stand/read-side-filter-engine.d.ts +46 -0
- package/dist/stand/read-side-filter-engine.d.ts.map +1 -0
- package/dist/stand/read-side-filter-engine.js +356 -0
- package/dist/stand/read-side-filter-engine.js.map +1 -0
- package/dist/stand/read-side-filter.d.ts +247 -0
- package/dist/stand/read-side-filter.d.ts.map +1 -0
- package/dist/stand/read-side-filter.js +39 -0
- package/dist/stand/read-side-filter.js.map +1 -0
- package/dist/stand/read-side-message.d.ts +66 -0
- package/dist/stand/read-side-message.d.ts.map +1 -0
- package/dist/stand/read-side-message.js +167 -0
- package/dist/stand/read-side-message.js.map +1 -0
- package/dist/stand/stand-direct-delivery.d.ts +161 -0
- package/dist/stand/stand-direct-delivery.d.ts.map +1 -0
- package/dist/stand/stand-direct-delivery.js +210 -0
- package/dist/stand/stand-direct-delivery.js.map +1 -0
- package/dist/stand/stand.d.ts +80 -42
- package/dist/stand/stand.d.ts.map +1 -1
- package/dist/stand/stand.js +410 -54
- package/dist/stand/stand.js.map +1 -1
- package/dist/stand/subscription-observer.d.ts.map +1 -1
- package/dist/stand/subscription-observer.js +103 -0
- package/dist/stand/subscription-observer.js.map +1 -1
- package/dist/stand/subscription-read-filters.d.ts +40 -0
- package/dist/stand/subscription-read-filters.d.ts.map +1 -0
- package/dist/stand/subscription-read-filters.js +91 -0
- package/dist/stand/subscription-read-filters.js.map +1 -0
- package/dist/stand/subscription-reader-binding.d.ts +20 -0
- package/dist/stand/subscription-reader-binding.d.ts.map +1 -0
- package/dist/stand/subscription-reader-binding.js +56 -0
- package/dist/stand/subscription-reader-binding.js.map +1 -0
- package/dist/stand/subscription-records.d.ts +30 -3
- package/dist/stand/subscription-records.d.ts.map +1 -1
- package/dist/stand/subscription-records.js +61 -16
- package/dist/stand/subscription-records.js.map +1 -1
- package/dist/stand/subscription-registry.d.ts +49 -14
- package/dist/stand/subscription-registry.d.ts.map +1 -1
- package/dist/stand/subscription-registry.js +150 -31
- package/dist/stand/subscription-registry.js.map +1 -1
- package/dist/stand/subscription-runtime.d.ts +7 -2
- package/dist/stand/subscription-runtime.d.ts.map +1 -1
- package/dist/stand/subscription-runtime.js +131 -25
- package/dist/stand/subscription-runtime.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +14 -14
package/dist/server/server.d.ts
CHANGED
|
@@ -1,6 +1,25 @@
|
|
|
1
|
+
import { type Message } from "@bufbuild/protobuf";
|
|
2
|
+
import { type ActorContext } from "@spine-event-engine/proto";
|
|
3
|
+
import type { AppQueryResponseFor } from "@spine-event-engine/core";
|
|
4
|
+
import { type TrustedReaderContext } from "@spine-event-engine/core/spi/trusted-reader";
|
|
1
5
|
import { BoundedContext, BoundedContextBuilder } from "../context/bounded-context.js";
|
|
2
6
|
import type { StandSubscriptionRegistry } from "../stand/subscription-registry.js";
|
|
3
7
|
import { type SpineServicesOptions } from "../services/spine-services.js";
|
|
8
|
+
import type { AppQueryHandler } from "../handler/app-query-handler.js";
|
|
9
|
+
import { ReadSideFilter } from "../stand/read-side-filter.js";
|
|
10
|
+
/**
|
|
11
|
+
* Trusted framework input for a direct application query call.
|
|
12
|
+
*/
|
|
13
|
+
export interface ServerQueryExecutionContext extends TrustedReaderContext {
|
|
14
|
+
/**
|
|
15
|
+
* Effective actor and tenant captured from the current invocation.
|
|
16
|
+
*/
|
|
17
|
+
readonly actorContext: ActorContext;
|
|
18
|
+
/**
|
|
19
|
+
* Cancellation of the current invocation, when available.
|
|
20
|
+
*/
|
|
21
|
+
readonly signal?: AbortSignal;
|
|
22
|
+
}
|
|
4
23
|
/**
|
|
5
24
|
* Performs work coupled to listener readiness and network shutdown.
|
|
6
25
|
*/
|
|
@@ -52,6 +71,15 @@ export declare class Server {
|
|
|
52
71
|
* @returns This server builder.
|
|
53
72
|
*/
|
|
54
73
|
add(context: BoundedContext | BoundedContextBuilder): this;
|
|
74
|
+
/**
|
|
75
|
+
* Executes a generated application request through this Server's active handler table.
|
|
76
|
+
*
|
|
77
|
+
* @typeParam Q Generated request with a declared paired response.
|
|
78
|
+
* @param query Generated application request, captured before any await.
|
|
79
|
+
* @param executionContext Effective actor and verified facts from framework execution.
|
|
80
|
+
* @returns The paired generated application result.
|
|
81
|
+
*/
|
|
82
|
+
query<Q extends Message>(query: Q & (AppQueryResponseFor<Q> extends never ? never : unknown), executionContext: ServerQueryExecutionContext): Promise<AppQueryResponseFor<Q>>;
|
|
55
83
|
/**
|
|
56
84
|
* Adds a framework closeable owned by this server assembly.
|
|
57
85
|
*
|
|
@@ -59,6 +87,9 @@ export declare class Server {
|
|
|
59
87
|
* @returns This server builder.
|
|
60
88
|
*/
|
|
61
89
|
addResource(resource: {
|
|
90
|
+
/**
|
|
91
|
+
* Releases this resource during server shutdown.
|
|
92
|
+
*/
|
|
62
93
|
close(): unknown;
|
|
63
94
|
}): this;
|
|
64
95
|
/**
|
|
@@ -108,6 +139,9 @@ export declare class Server {
|
|
|
108
139
|
* @internal
|
|
109
140
|
*/
|
|
110
141
|
export declare const serverBuilderAccess: Readonly<{
|
|
142
|
+
/**
|
|
143
|
+
* Reports whether the configured server host resolves to a loopback address.
|
|
144
|
+
*/
|
|
111
145
|
isLoopback(server: Server): boolean;
|
|
112
146
|
}>;
|
|
113
147
|
/**
|
|
@@ -144,6 +178,14 @@ export interface ServerOptions {
|
|
|
144
178
|
* listener open. They use {@link ServerEnvironment.storageFactory}.
|
|
145
179
|
*/
|
|
146
180
|
readonly contexts?: readonly (BoundedContext | BoundedContextBuilder)[];
|
|
181
|
+
/**
|
|
182
|
+
* Handler instances selected explicitly for this Server's App Query routes.
|
|
183
|
+
*/
|
|
184
|
+
readonly appQueries?: readonly AppQueryHandler<never, Message>[];
|
|
185
|
+
/**
|
|
186
|
+
* Domain policies applied once to this Server's gRPC read results.
|
|
187
|
+
*/
|
|
188
|
+
readonly readSideFilters?: readonly ReadSideFilter<import("@spine-event-engine/core").MessageSchema>[];
|
|
147
189
|
/**
|
|
148
190
|
* Service-level options for Command, Query, and Subscription routes.
|
|
149
191
|
*/
|
|
@@ -152,6 +194,9 @@ export interface ServerOptions {
|
|
|
152
194
|
* Extra framework-owned closeables to close after contexts become safe to close.
|
|
153
195
|
*/
|
|
154
196
|
readonly resources?: readonly {
|
|
197
|
+
/**
|
|
198
|
+
* Releases the resource after contexts are safe to close.
|
|
199
|
+
*/
|
|
155
200
|
close(): unknown;
|
|
156
201
|
}[];
|
|
157
202
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAS,KAAK,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAClF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,6CAA6C,CAAC;AAIrD,OAAO,EACL,cAAc,EACd,qBAAqB,EAEtB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAEnF,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,+BAA+B,CAAC;AAGvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAwB9D;;GAEG;AACH,MAAM,WAAW,2BAA4B,SAAQ,oBAAoB;IACvE;;OAEG;IACH,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAEpC;;OAEG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAKD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAGhC;;;;OAIG;IACH,KAAK,IAAI,OAAO,CAAC;IAEjB;;;;OAIG;IACH,KAAK,IAAI,OAAO,CAAC;CAClB;AAED;;;;;;GAMG;AACH,qBAAa,MAAM;;IA4CjB;;;;OAIG;gBACS,OAAO,GAAE,aAAkB;IAoBvC;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,IAAI,CAAC,aAAa,EAAE,MAAM,CAAM,GAAG,MAAM;IAI9E;;;;;;;;;OASG;IACH,GAAG,CAAC,OAAO,EAAE,cAAc,GAAG,qBAAqB,GAAG,IAAI;IAK1D;;;;;;;OAOG;IACG,KAAK,CAAC,CAAC,SAAS,OAAO,EAC3B,KAAK,EAAE,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC,EACnE,gBAAgB,EAAE,2BAA2B,GAC5C,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAWlC;;;;;OAKG;IACH,WAAW,CAAC,QAAQ,EAAE;QACpB;;WAEG;QACH,KAAK,IAAI,OAAO,CAAC;KAClB,GAAG,IAAI;IAKR;;;;;;;;OAQG;IACH,oBAAoB,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAKxD;;;;;;;;;;;;;OAaG;IACH,KAAK,IAAI,OAAO,CAAC,aAAa,CAAC;IA2C/B;;;;;;;;;;;;;OAaG;IACH,GAAG,IAAI,OAAO,CAAC,aAAa,CAAC;CAmZ9B;AA6BD;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC;IACzC;;OAEG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;CACrC,CAQC,CAAC;AAWH;;GAEG;AACH,MAAM,WAAW,aAAa;IAG5B;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAE/B;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEhC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,cAAc,GAAG,qBAAqB,CAAC,EAAE,CAAC;IAExE;;OAEG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;IAEjE;;OAEG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,cAAc,CAChD,OAAO,0BAA0B,EAAE,aAAa,CACjD,EAAE,CAAC;IAEJ;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;IAE3D;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS;QAC5B;;WAEG;QACH,KAAK,IAAI,OAAO,CAAC;KAClB,EAAE,CAAC;CACL;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAG5B;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB;;;;;;;;;;;;OAYG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAGlC;;;;;OAKG;IACH,sBAAsB,CACpB,MAAM,EAAE,aAAa,GACpB,SAAS,yBAAyB,EAAE,GAAG,SAAS,CAAC;IAEpD;;;;;OAKG;IACH,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrD;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,mBAgBhC,CAAC"}
|
package/dist/server/server.js
CHANGED
|
@@ -12,10 +12,18 @@
|
|
|
12
12
|
* the License.
|
|
13
13
|
*/
|
|
14
14
|
import * as http2 from "node:http2";
|
|
15
|
+
import { clone } from "@bufbuild/protobuf";
|
|
16
|
+
import { ActorContextSchema } from "@spine-event-engine/proto";
|
|
17
|
+
import { snapshotTrustedReader, } from "@spine-event-engine/core/spi/trusted-reader";
|
|
15
18
|
import { connectNodeAdapter } from "@connectrpc/connect-node";
|
|
16
19
|
import { BoundedContext, BoundedContextBuilder, boundedContextAccess, } from "../context/bounded-context.js";
|
|
17
20
|
import { SpineServices, spineServicesAccess, } from "../services/spine-services.js";
|
|
18
21
|
import { RegisteredTargets } from "../services/registered-targets.js";
|
|
22
|
+
import { AppQueryExecution } from "../services/app-query-execution.js";
|
|
23
|
+
import { ReadSideFilter } from "../stand/read-side-filter.js";
|
|
24
|
+
import { ReadSideFilterEngine } from "../stand/read-side-filter-engine.js";
|
|
25
|
+
import { TypeRegistry } from "@spine-event-engine/core";
|
|
26
|
+
import { registeredProtoModules } from "@spine-event-engine/proto/codegen";
|
|
19
27
|
import { ProcessServerCoordinator } from "./process-server-coordinator.js";
|
|
20
28
|
import { CloseErrors, RetryableCloseGroup } from "./retryable-close.js";
|
|
21
29
|
import { ServerEnvironment, serverEnvironmentAccess } from "./server-environment.js";
|
|
@@ -42,11 +50,14 @@ export class Server {
|
|
|
42
50
|
#contexts = [];
|
|
43
51
|
#resources = [];
|
|
44
52
|
#listenerLifecycles = [];
|
|
53
|
+
#appQueries;
|
|
54
|
+
#readFilters;
|
|
45
55
|
#services;
|
|
46
56
|
#environment;
|
|
47
57
|
#starting;
|
|
48
58
|
#startingOwnership;
|
|
49
59
|
#run;
|
|
60
|
+
#active;
|
|
50
61
|
#failedStartCleanup;
|
|
51
62
|
#failedListenerLifecycle;
|
|
52
63
|
#failedStartConsumed = false;
|
|
@@ -61,6 +72,8 @@ export class Server {
|
|
|
61
72
|
this.#readMaxBytes = ServerValues.normalizeMessageMaxBytes(options.readMaxBytes ?? defaultMessageMaxBytes, "readMaxBytes");
|
|
62
73
|
this.#writeMaxBytes = ServerValues.normalizeMessageMaxBytes(options.writeMaxBytes ?? defaultMessageMaxBytes, "writeMaxBytes");
|
|
63
74
|
this.#contexts.push(...(options.contexts ?? []));
|
|
75
|
+
this.#appQueries = Object.freeze([...(options.appQueries ?? [])]);
|
|
76
|
+
this.#readFilters = Object.freeze([...new Set(options.readSideFilters ?? [])]);
|
|
64
77
|
this.#resources.push(...(options.resources ?? []));
|
|
65
78
|
this.#services = options.services ?? {};
|
|
66
79
|
this.#environment = ServerEnvironment.instance();
|
|
@@ -90,6 +103,24 @@ export class Server {
|
|
|
90
103
|
this.#contexts.push(context);
|
|
91
104
|
return this;
|
|
92
105
|
}
|
|
106
|
+
/**
|
|
107
|
+
* Executes a generated application request through this Server's active handler table.
|
|
108
|
+
*
|
|
109
|
+
* @typeParam Q Generated request with a declared paired response.
|
|
110
|
+
* @param query Generated application request, captured before any await.
|
|
111
|
+
* @param executionContext Effective actor and verified facts from framework execution.
|
|
112
|
+
* @returns The paired generated application result.
|
|
113
|
+
*/
|
|
114
|
+
async query(query, executionContext) {
|
|
115
|
+
const detached = structuredClone(query);
|
|
116
|
+
const actor = clone(ActorContextSchema, executionContext.actorContext);
|
|
117
|
+
const reader = snapshotTrustedReader(executionContext);
|
|
118
|
+
const signal = executionContext.signal;
|
|
119
|
+
const running = this.#starting === undefined ? this.#active : await this.#starting;
|
|
120
|
+
if (!(running instanceof RunningHttp2Server))
|
|
121
|
+
throw new Error("Server App Query execution requires a running Server.");
|
|
122
|
+
return running.queryTyped(detached, actor, reader, signal);
|
|
123
|
+
}
|
|
93
124
|
/**
|
|
94
125
|
* Adds a framework closeable owned by this server assembly.
|
|
95
126
|
*
|
|
@@ -130,6 +161,9 @@ export class Server {
|
|
|
130
161
|
start() {
|
|
131
162
|
return this.#start("caller");
|
|
132
163
|
}
|
|
164
|
+
/**
|
|
165
|
+
* Shares or begins startup under the selected environment lifecycle mode.
|
|
166
|
+
*/
|
|
133
167
|
#start(ownership) {
|
|
134
168
|
const current = this.#starting;
|
|
135
169
|
if (current !== undefined) {
|
|
@@ -201,6 +235,7 @@ export class Server {
|
|
|
201
235
|
const routes = await this.#installContexts(contexts, admission);
|
|
202
236
|
const running = await this.#openListener(contexts, routes);
|
|
203
237
|
await this.#startLifecycles(running);
|
|
238
|
+
this.#active = running;
|
|
204
239
|
return running;
|
|
205
240
|
}
|
|
206
241
|
/**
|
|
@@ -234,9 +269,7 @@ export class Server {
|
|
|
234
269
|
* @returns The prepared running listener.
|
|
235
270
|
*/
|
|
236
271
|
async #prepareListener(contexts, routes, closeables, cleanup) {
|
|
237
|
-
const services =
|
|
238
|
-
cleanup.services = services;
|
|
239
|
-
spineServicesAccess.installLogger(services, serverEnvironmentAccess.loggerFor(this.#environment));
|
|
272
|
+
const { queries, services } = this.#createReadServices(contexts, routes, cleanup);
|
|
240
273
|
const { httpServer, sessions } = this.#createHttpListener(services);
|
|
241
274
|
cleanup.network = { server: httpServer, sessions };
|
|
242
275
|
const address = await ServerValues.listen(httpServer, this.#host, this.#port);
|
|
@@ -246,6 +279,7 @@ export class Server {
|
|
|
246
279
|
sessions,
|
|
247
280
|
environment: this.#environment,
|
|
248
281
|
routes,
|
|
282
|
+
queries,
|
|
249
283
|
services,
|
|
250
284
|
host,
|
|
251
285
|
port: address.port,
|
|
@@ -253,6 +287,31 @@ export class Server {
|
|
|
253
287
|
closeables,
|
|
254
288
|
});
|
|
255
289
|
}
|
|
290
|
+
/**
|
|
291
|
+
* Installs Server result policies and query execution into one listener's services.
|
|
292
|
+
*
|
|
293
|
+
* @param contexts Exposed Bounded Contexts.
|
|
294
|
+
* @param routes Validated Entity state routes.
|
|
295
|
+
* @param cleanup Retained failure cleanup state.
|
|
296
|
+
* @returns Listener services and App Query execution lifetime.
|
|
297
|
+
*/
|
|
298
|
+
#createReadServices(contexts, routes, cleanup) {
|
|
299
|
+
const filters = this.#readFilters.length === 0
|
|
300
|
+
? undefined
|
|
301
|
+
: new ReadSideFilterEngine(this.#readFilters, TypeRegistry.from(...registeredProtoModules()));
|
|
302
|
+
const queries = new AppQueryExecution(this.#appQueries, routes, filters);
|
|
303
|
+
const services = new SpineServices({
|
|
304
|
+
contexts,
|
|
305
|
+
readMaxBytes: this.#readMaxBytes,
|
|
306
|
+
...this.#services,
|
|
307
|
+
});
|
|
308
|
+
cleanup.services = services;
|
|
309
|
+
spineServicesAccess.installAppQueries(services, queries);
|
|
310
|
+
if (filters !== undefined)
|
|
311
|
+
spineServicesAccess.installReadFilters(services, filters);
|
|
312
|
+
spineServicesAccess.installLogger(services, serverEnvironmentAccess.loggerFor(this.#environment));
|
|
313
|
+
return { queries, services };
|
|
314
|
+
}
|
|
256
315
|
/**
|
|
257
316
|
* Prepares an HTTP listener and its tracked sessions for startup.
|
|
258
317
|
*
|
|
@@ -411,6 +470,9 @@ export class Server {
|
|
|
411
470
|
throw error;
|
|
412
471
|
}
|
|
413
472
|
}
|
|
473
|
+
/**
|
|
474
|
+
* Retries deferred network and resource cleanup from a failed startup, then reports the prior failure.
|
|
475
|
+
*/
|
|
414
476
|
async #retryFailedStartCleanup(cleanup) {
|
|
415
477
|
const errors = [];
|
|
416
478
|
if (!(await this.#closeFailedStartNetwork(cleanup, errors))) {
|
|
@@ -422,12 +484,18 @@ export class Server {
|
|
|
422
484
|
}
|
|
423
485
|
throw new Error("Server deferred cleanup completed after an earlier failed start.");
|
|
424
486
|
}
|
|
487
|
+
/**
|
|
488
|
+
* Retries a failed listener lifecycle close and leaves the server terminal.
|
|
489
|
+
*/
|
|
425
490
|
async #retryFailedListenerLifecycle(running) {
|
|
426
491
|
await running.close();
|
|
427
492
|
this.#failedListenerLifecycle = undefined;
|
|
428
493
|
this.#failedStartConsumed = true;
|
|
429
494
|
throw new Error("Server deferred cleanup completed after an earlier failed start.");
|
|
430
495
|
}
|
|
496
|
+
/**
|
|
497
|
+
* Cleans up startup resources after listener lifecycle startup fails.
|
|
498
|
+
*/
|
|
431
499
|
async #cleanupFailedListenerStart(cleanup, startError) {
|
|
432
500
|
const errors = [];
|
|
433
501
|
if (!(await this.#closeFailedStartNetwork(cleanup, errors))) {
|
|
@@ -436,6 +504,9 @@ export class Server {
|
|
|
436
504
|
await this.#advanceFailedStartCleanup(cleanup, errors);
|
|
437
505
|
return ServerValues.throwListenerStartError(startError, errors);
|
|
438
506
|
}
|
|
507
|
+
/**
|
|
508
|
+
* Closes acquired dependencies and releases startup registrations after network cleanup succeeds.
|
|
509
|
+
*/
|
|
439
510
|
async #advanceFailedStartCleanup(cleanup, errors) {
|
|
440
511
|
let closeFailed = false;
|
|
441
512
|
try {
|
|
@@ -455,6 +526,9 @@ export class Server {
|
|
|
455
526
|
this.#failedStartConsumed = true;
|
|
456
527
|
}
|
|
457
528
|
}
|
|
529
|
+
/**
|
|
530
|
+
* Attempts listener and session shutdown, retaining cleanup state if it fails.
|
|
531
|
+
*/
|
|
458
532
|
async #closeFailedStartNetwork(cleanup, errors) {
|
|
459
533
|
const network = cleanup.network;
|
|
460
534
|
if (network === undefined) {
|
|
@@ -470,6 +544,9 @@ export class Server {
|
|
|
470
544
|
return false;
|
|
471
545
|
}
|
|
472
546
|
}
|
|
547
|
+
/**
|
|
548
|
+
* Clears the in-progress startup marker after the shared attempt settles.
|
|
549
|
+
*/
|
|
473
550
|
#finishStart(starting) {
|
|
474
551
|
if (this.#starting === starting) {
|
|
475
552
|
this.#starting = undefined;
|
|
@@ -483,11 +560,17 @@ export class Server {
|
|
|
483
560
|
* @internal
|
|
484
561
|
*/
|
|
485
562
|
export const serverBuilderAccess = Object.freeze({
|
|
563
|
+
/**
|
|
564
|
+
* Reports whether the configured server host resolves to a loopback address.
|
|
565
|
+
*/
|
|
486
566
|
isLoopback(server) {
|
|
487
567
|
const host = serverHosts.get(server);
|
|
488
568
|
return host !== undefined && isLoopbackHost(host);
|
|
489
569
|
},
|
|
490
570
|
});
|
|
571
|
+
/**
|
|
572
|
+
* Recognizes IPv4 and IPv6 loopback host spellings accepted by the server.
|
|
573
|
+
*/
|
|
491
574
|
function isLoopbackHost(host) {
|
|
492
575
|
if (host === "::1" || host === "::ffff:127.0.0.1")
|
|
493
576
|
return true;
|
|
@@ -500,11 +583,17 @@ function isLoopbackHost(host) {
|
|
|
500
583
|
* @internal
|
|
501
584
|
*/
|
|
502
585
|
export const runningServerAccess = Object.freeze({
|
|
586
|
+
/**
|
|
587
|
+
* Returns subscription registries for contexts in this running server, when available.
|
|
588
|
+
*/
|
|
503
589
|
subscriptionRegistries(server) {
|
|
504
590
|
return runningContexts
|
|
505
591
|
.get(server)
|
|
506
592
|
?.map((context) => boundedContextAccess.subscriptionRegistry(context));
|
|
507
593
|
},
|
|
594
|
+
/**
|
|
595
|
+
* Waits for admitted Delivery work across this server’s contexts to settle.
|
|
596
|
+
*/
|
|
508
597
|
drainDelivery(server) {
|
|
509
598
|
return server instanceof RunningHttp2Server ? server.drainDelivery() : Promise.resolve();
|
|
510
599
|
},
|
|
@@ -522,6 +611,7 @@ class RunningHttp2Server {
|
|
|
522
611
|
#environment;
|
|
523
612
|
#routes;
|
|
524
613
|
#services;
|
|
614
|
+
#queries;
|
|
525
615
|
host;
|
|
526
616
|
port;
|
|
527
617
|
baseUrl;
|
|
@@ -542,17 +632,34 @@ class RunningHttp2Server {
|
|
|
542
632
|
this.#environment = options.environment;
|
|
543
633
|
this.#routes = options.routes;
|
|
544
634
|
this.#services = options.services;
|
|
635
|
+
this.#queries = options.queries;
|
|
545
636
|
this.host = options.host;
|
|
546
637
|
this.port = options.port;
|
|
547
638
|
this.baseUrl = `http://${ServerValues.formatHostForUrl(options.host)}:${options.port.toString()}`;
|
|
548
639
|
this.#closeGroup = new RetryableCloseGroup(this.#closeables, "Server close failed while closing owned contexts/resources.");
|
|
549
640
|
}
|
|
641
|
+
/**
|
|
642
|
+
* Dispatches a generated request only while this listener remains active.
|
|
643
|
+
*
|
|
644
|
+
* @typeParam Q Generated application request with a paired response.
|
|
645
|
+
* @param query Captured generated request.
|
|
646
|
+
* @param actor Current effective actor and tenant.
|
|
647
|
+
* @param reader Verified current invocation facts.
|
|
648
|
+
* @param signal Current invocation cancellation, when available.
|
|
649
|
+
* @returns The paired generated application result.
|
|
650
|
+
*/
|
|
651
|
+
queryTyped(query, actor, reader, signal) {
|
|
652
|
+
if (this.#closed !== undefined)
|
|
653
|
+
return Promise.reject(new Error("Server App Query execution is closed."));
|
|
654
|
+
return this.#queries.executeTyped(query, actor, reader, signal);
|
|
655
|
+
}
|
|
550
656
|
/**
|
|
551
657
|
* Closes this listener once, preserving a failed close for retry.
|
|
552
658
|
*
|
|
553
659
|
* @returns Completion after resources close.
|
|
554
660
|
*/
|
|
555
661
|
close() {
|
|
662
|
+
this.#queries.beginClose();
|
|
556
663
|
this.#closed ??= this.#closeOnce().catch((error) => {
|
|
557
664
|
this.#closed = undefined;
|
|
558
665
|
throw error;
|
|
@@ -648,6 +755,7 @@ class RunningHttp2Server {
|
|
|
648
755
|
* @returns Completion after all context work drains.
|
|
649
756
|
*/
|
|
650
757
|
async #drainContexts() {
|
|
758
|
+
await this.#queries.drain();
|
|
651
759
|
for (const context of this.#contexts)
|
|
652
760
|
boundedContextAccess.beginClose(context);
|
|
653
761
|
const drained = await Promise.allSettled(this.#contexts.map((context) => boundedContextAccess.drainWork(context)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { type Message } from "@bufbuild/protobuf";
|
|
2
|
+
import type { AppQueryResponseFor } from "@spine-event-engine/core";
|
|
3
|
+
import { type TrustedReaderContext } from "@spine-event-engine/core/spi/trusted-reader";
|
|
4
|
+
import { type ActorContext } from "@spine-event-engine/proto";
|
|
5
|
+
import { type AppQuery, type AppQueryResponse } from "@spine-event-engine/proto/client";
|
|
6
|
+
import { AppQueryHandler } from "../handler/app-query-handler.js";
|
|
7
|
+
import { RegisteredTargets } from "./registered-targets.js";
|
|
8
|
+
import { ReadSideFilterEngine } from "../stand/read-side-filter-engine.js";
|
|
9
|
+
/**
|
|
10
|
+
* Dispatches only the App Query handlers selected for one Server assembly.
|
|
11
|
+
*/
|
|
12
|
+
export declare class AppQueryExecution {
|
|
13
|
+
#private;
|
|
14
|
+
/**
|
|
15
|
+
* Resolves exact-class generated metadata before the Server listener opens.
|
|
16
|
+
*
|
|
17
|
+
* @param handlers Explicit handler instances selected by this Server.
|
|
18
|
+
* @param targets Entity state routes installed in this Server.
|
|
19
|
+
* @param serverFilters Policies applied only when the result crosses gRPC.
|
|
20
|
+
*/
|
|
21
|
+
constructor(handlers: readonly AppQueryHandler<never, Message>[], targets: RegisteredTargets, serverFilters?: ReadSideFilterEngine);
|
|
22
|
+
/**
|
|
23
|
+
* Executes one detached and validated App Query through its selected handler.
|
|
24
|
+
*
|
|
25
|
+
* @param input App Query envelope captured at the Server boundary.
|
|
26
|
+
* @param reader Verified current invocation facts.
|
|
27
|
+
* @param signal Current invocation cancellation, when available.
|
|
28
|
+
* @returns One paired result in a successful response envelope.
|
|
29
|
+
*/
|
|
30
|
+
execute(input: AppQuery, reader: TrustedReaderContext, signal?: AbortSignal): Promise<AppQueryResponse>;
|
|
31
|
+
/**
|
|
32
|
+
* Stops accepting App Queries while allowing admitted work to settle.
|
|
33
|
+
*/
|
|
34
|
+
beginClose(): void;
|
|
35
|
+
/**
|
|
36
|
+
* Waits for admitted work without treating request failure as a close failure.
|
|
37
|
+
*
|
|
38
|
+
* @returns Completion after every admitted handler settles.
|
|
39
|
+
*/
|
|
40
|
+
drain(): Promise<void>;
|
|
41
|
+
/**
|
|
42
|
+
* Wraps a generated application request and returns its paired generated result.
|
|
43
|
+
*
|
|
44
|
+
* @typeParam Q Generated request associated with a declared response.
|
|
45
|
+
* @param request Request from trusted application code.
|
|
46
|
+
* @param actor Current effective actor and tenant context.
|
|
47
|
+
* @param reader Verified current identity and authority facts.
|
|
48
|
+
* @param signal Current invocation cancellation, when available.
|
|
49
|
+
* @returns The selected handler's paired generated result.
|
|
50
|
+
*/
|
|
51
|
+
executeTyped<Q extends Message>(request: Q, actor: ActorContext, reader: TrustedReaderContext, signal?: AbortSignal): Promise<AppQueryResponseFor<Q>>;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=app-query-execution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-query-execution.d.ts","sourceRoot":"","sources":["../../src/services/app-query-execution.ts"],"names":[],"mappings":"AAcA,OAAO,EAA6B,KAAK,OAAO,EAAqB,MAAM,oBAAoB,CAAC;AAIhG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAIL,KAAK,YAAY,EAElB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAIL,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACtB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EAAE,eAAe,EAAwB,MAAM,iCAAiC,CAAC;AAWxF,OAAO,EAAE,iBAAiB,EAAyB,MAAM,yBAAyB,CAAC;AAKnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAW3E;;GAEG;AACH,qBAAa,iBAAiB;;IAe5B;;;;;;OAMG;gBAED,QAAQ,EAAE,SAAS,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EACpD,OAAO,EAAE,iBAAiB,EAC1B,aAAa,CAAC,EAAE,oBAAoB;IAmBtC;;;;;;;OAOG;IACH,OAAO,CACL,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,oBAAoB,EAC5B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,gBAAgB,CAAC;IA8B5B;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA+B5B;;;;;;;;;OASG;IACG,YAAY,CAAC,CAAC,SAAS,OAAO,EAClC,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,oBAAoB,EAC5B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;CAkVnC"}
|