@message-queue-toolkit/core 17.0.0 → 17.2.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/dist/lib/events/DomainEventEmitter.d.ts +3 -0
- package/dist/lib/events/DomainEventEmitter.js +55 -48
- package/dist/lib/events/DomainEventEmitter.js.map +1 -1
- package/dist/lib/events/EventRegistry.d.ts +1 -1
- package/dist/lib/events/EventRegistry.js +4 -4
- package/dist/lib/events/EventRegistry.js.map +1 -1
- package/dist/lib/queues/AbstractPublisherManager.js +2 -2
- package/dist/lib/queues/AbstractPublisherManager.js.map +1 -1
- package/package.json +3 -3
|
@@ -20,10 +20,12 @@ export declare class DomainEventEmitter<SupportedEvents extends CommonEventDefin
|
|
|
20
20
|
private readonly transactionObservabilityManager?;
|
|
21
21
|
private readonly _handlerSpy?;
|
|
22
22
|
private readonly eventHandlerMap;
|
|
23
|
+
private readonly inProgressBackgroundHandlerByEventId;
|
|
23
24
|
constructor(deps: DomainEventEmitterDependencies<SupportedEvents>, options?: {
|
|
24
25
|
handlerSpy?: HandlerSpy<object> | HandlerSpyParams | boolean;
|
|
25
26
|
});
|
|
26
27
|
get handlerSpy(): PublicHandlerSpy<CommonEventDefinitionPublisherSchemaType<SupportedEvents[number]>>;
|
|
28
|
+
dispose(): Promise<void>;
|
|
27
29
|
emit<SupportedEvent extends SupportedEvents[number]>(supportedEvent: SupportedEvent, data: Omit<CommonEventDefinitionPublisherSchemaType<SupportedEvent>, 'type'>, precedingMessageMetadata?: Partial<ConsumerMessageMetadataType>): Promise<Omit<CommonEventDefinitionConsumerSchemaType<SupportedEvent>, 'type'>>;
|
|
28
30
|
/**
|
|
29
31
|
* Register handler for a specific event
|
|
@@ -38,5 +40,6 @@ export declare class DomainEventEmitter<SupportedEvents extends CommonEventDefin
|
|
|
38
40
|
*/
|
|
39
41
|
onAny(handler: AnyEventHandler<SupportedEvents>, isBackgroundHandler?: boolean): void;
|
|
40
42
|
private handleEvent;
|
|
43
|
+
private executeEventHandler;
|
|
41
44
|
private buildTransactionKey;
|
|
42
45
|
}
|
|
@@ -12,6 +12,7 @@ class DomainEventEmitter {
|
|
|
12
12
|
transactionObservabilityManager;
|
|
13
13
|
_handlerSpy;
|
|
14
14
|
eventHandlerMap;
|
|
15
|
+
inProgressBackgroundHandlerByEventId;
|
|
15
16
|
constructor(deps, options = {}) {
|
|
16
17
|
this.eventRegistry = deps.eventRegistry;
|
|
17
18
|
this.metadataFiller = deps.metadataFiller;
|
|
@@ -20,7 +21,8 @@ class DomainEventEmitter {
|
|
|
20
21
|
this.transactionObservabilityManager = deps.transactionObservabilityManager;
|
|
21
22
|
this._handlerSpy =
|
|
22
23
|
(0, HandlerSpy_1.resolveHandlerSpy)(options);
|
|
23
|
-
this.eventHandlerMap =
|
|
24
|
+
this.eventHandlerMap = new Map();
|
|
25
|
+
this.inProgressBackgroundHandlerByEventId = new Map();
|
|
24
26
|
}
|
|
25
27
|
get handlerSpy() {
|
|
26
28
|
if (!this._handlerSpy) {
|
|
@@ -28,6 +30,12 @@ class DomainEventEmitter {
|
|
|
28
30
|
}
|
|
29
31
|
return this._handlerSpy;
|
|
30
32
|
}
|
|
33
|
+
async dispose() {
|
|
34
|
+
await Promise.all(this.inProgressBackgroundHandlerByEventId.values());
|
|
35
|
+
this.inProgressBackgroundHandlerByEventId.clear();
|
|
36
|
+
this.eventHandlerMap.clear();
|
|
37
|
+
this._handlerSpy?.clear();
|
|
38
|
+
}
|
|
31
39
|
async emit(supportedEvent, data, precedingMessageMetadata) {
|
|
32
40
|
const eventTypeName = supportedEvent.publisherSchema.shape.type.value;
|
|
33
41
|
if (!this.eventRegistry.isSupportedEvent(eventTypeName)) {
|
|
@@ -50,14 +58,8 @@ class DomainEventEmitter {
|
|
|
50
58
|
const validatedEvent = this.eventRegistry
|
|
51
59
|
.getEventDefinitionByTypeName(eventTypeName)
|
|
52
60
|
.publisherSchema.parse({ type: eventTypeName, ...data });
|
|
61
|
+
// @ts-ignore
|
|
53
62
|
await this.handleEvent(validatedEvent);
|
|
54
|
-
if (this._handlerSpy) {
|
|
55
|
-
this._handlerSpy.addProcessedMessage({
|
|
56
|
-
// @ts-ignore
|
|
57
|
-
message: validatedEvent,
|
|
58
|
-
processingResult: 'consumed',
|
|
59
|
-
}, validatedEvent.id);
|
|
60
|
-
}
|
|
61
63
|
// @ts-ignore
|
|
62
64
|
return validatedEvent;
|
|
63
65
|
}
|
|
@@ -65,13 +67,13 @@ class DomainEventEmitter {
|
|
|
65
67
|
* Register handler for a specific event
|
|
66
68
|
*/
|
|
67
69
|
on(eventTypeName, handler, isBackgroundHandler = false) {
|
|
68
|
-
if (!this.eventHandlerMap
|
|
69
|
-
this.eventHandlerMap
|
|
70
|
+
if (!this.eventHandlerMap.has(eventTypeName)) {
|
|
71
|
+
this.eventHandlerMap.set(eventTypeName, { foreground: [], background: [] });
|
|
70
72
|
}
|
|
71
73
|
if (isBackgroundHandler)
|
|
72
|
-
this.eventHandlerMap
|
|
74
|
+
this.eventHandlerMap.get(eventTypeName)?.background.push(handler);
|
|
73
75
|
else
|
|
74
|
-
this.eventHandlerMap
|
|
76
|
+
this.eventHandlerMap.get(eventTypeName)?.foreground.push(handler);
|
|
75
77
|
}
|
|
76
78
|
/**
|
|
77
79
|
* Register handler for multiple events
|
|
@@ -85,47 +87,52 @@ class DomainEventEmitter {
|
|
|
85
87
|
* Register handler for all events supported by the emitter
|
|
86
88
|
*/
|
|
87
89
|
onAny(handler, isBackgroundHandler = false) {
|
|
88
|
-
|
|
89
|
-
this.on(supportedEvent.consumerSchema.shape.type.value, handler, isBackgroundHandler);
|
|
90
|
-
}
|
|
90
|
+
this.onMany(Array.from(this.eventRegistry.supportedEventTypes), handler, isBackgroundHandler);
|
|
91
91
|
}
|
|
92
92
|
async handleEvent(event) {
|
|
93
|
-
const eventHandlers = this.eventHandlerMap
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
};
|
|
93
|
+
const eventHandlers = this.eventHandlerMap.get(event.type);
|
|
94
|
+
if (!eventHandlers)
|
|
95
|
+
return;
|
|
97
96
|
for (const handler of eventHandlers.foreground) {
|
|
98
|
-
|
|
99
|
-
let isSuccessfull = false;
|
|
100
|
-
try {
|
|
101
|
-
this.transactionObservabilityManager?.startWithGroup(this.buildTransactionKey(event, handler, false), transactionId, event.type);
|
|
102
|
-
await handler.handleEvent(event);
|
|
103
|
-
isSuccessfull = true;
|
|
104
|
-
}
|
|
105
|
-
finally {
|
|
106
|
-
this.transactionObservabilityManager?.stop(transactionId, isSuccessfull);
|
|
107
|
-
}
|
|
97
|
+
await this.executeEventHandler(event, handler, false);
|
|
108
98
|
}
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
99
|
+
const bgPromise = Promise.all(eventHandlers.background.map((handler) => this.executeEventHandler(event, handler, true))).then(() => {
|
|
100
|
+
this.inProgressBackgroundHandlerByEventId.delete(event.id);
|
|
101
|
+
if (!this._handlerSpy)
|
|
102
|
+
return;
|
|
103
|
+
this._handlerSpy.addProcessedMessage({
|
|
104
|
+
// @ts-ignore
|
|
105
|
+
message: event,
|
|
106
|
+
processingResult: 'consumed',
|
|
107
|
+
}, event.id);
|
|
108
|
+
});
|
|
109
|
+
this.inProgressBackgroundHandlerByEventId.set(event.id, bgPromise);
|
|
110
|
+
}
|
|
111
|
+
async executeEventHandler(event, handler, isBackgroundHandler) {
|
|
112
|
+
const transactionId = (0, node_crypto_1.randomUUID)();
|
|
113
|
+
let isSuccessful = false;
|
|
114
|
+
try {
|
|
115
|
+
this.transactionObservabilityManager?.startWithGroup(this.buildTransactionKey(event, handler, isBackgroundHandler), transactionId, event.type);
|
|
116
|
+
await handler.handleEvent(event);
|
|
117
|
+
isSuccessful = true;
|
|
118
|
+
}
|
|
119
|
+
catch (error) {
|
|
120
|
+
if (!isBackgroundHandler)
|
|
121
|
+
throw error;
|
|
122
|
+
const context = {
|
|
123
|
+
event: JSON.stringify(event),
|
|
124
|
+
eventHandlerId: handler.eventHandlerId,
|
|
125
|
+
'x-request-id': event.metadata?.correlationId,
|
|
126
|
+
};
|
|
127
|
+
this.logger.error({
|
|
128
|
+
...(0, node_core_1.resolveGlobalErrorLogObject)(error),
|
|
129
|
+
...context,
|
|
128
130
|
});
|
|
131
|
+
// biome-ignore lint/suspicious/noExplicitAny: TODO: improve error type
|
|
132
|
+
this.errorReporter?.report({ error: error, context });
|
|
133
|
+
}
|
|
134
|
+
finally {
|
|
135
|
+
this.transactionObservabilityManager?.stop(transactionId, isSuccessful);
|
|
129
136
|
}
|
|
130
137
|
}
|
|
131
138
|
buildTransactionKey(event, handler, isBackgroundHandler) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DomainEventEmitter.js","sourceRoot":"","sources":["../../../lib/events/DomainEventEmitter.ts"],"names":[],"mappings":";;;AAAA,mDAK4B;AAI5B,qDAAwD;AAExD,6CAAwC;AA2BxC,MAAa,kBAAkB;IACZ,aAAa,CAAgC;IAC7C,cAAc,CAAgB;IAC9B,MAAM,CAAQ;IACd,aAAa,CAAgB;IAC7B,+BAA+B,CAAkC;IACjE,WAAW,CAE3B;IAEgB,eAAe,CAG/B;
|
|
1
|
+
{"version":3,"file":"DomainEventEmitter.js","sourceRoot":"","sources":["../../../lib/events/DomainEventEmitter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { CommonEventDefinition, EventTypeNames } from './eventTypes';
|
|
2
2
|
export declare class EventRegistry<SupportedEvents extends CommonEventDefinition[]> {
|
|
3
3
|
readonly supportedEvents: SupportedEvents;
|
|
4
|
-
|
|
4
|
+
readonly supportedEventTypes: Set<string>;
|
|
5
5
|
private readonly supportedEventMap;
|
|
6
6
|
constructor(supportedEvents: SupportedEvents);
|
|
7
7
|
getEventDefinitionByTypeName: <EventTypeName extends EventTypeNames<SupportedEvents[number]>>(eventTypeName: EventTypeName) => CommonEventDefinition;
|
|
@@ -3,21 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.EventRegistry = void 0;
|
|
4
4
|
class EventRegistry {
|
|
5
5
|
supportedEvents;
|
|
6
|
-
|
|
6
|
+
supportedEventTypes;
|
|
7
7
|
supportedEventMap = {};
|
|
8
8
|
constructor(supportedEvents) {
|
|
9
9
|
this.supportedEvents = supportedEvents;
|
|
10
|
-
this.
|
|
10
|
+
this.supportedEventTypes = new Set();
|
|
11
11
|
for (const supportedEvent of supportedEvents) {
|
|
12
12
|
this.supportedEventMap[supportedEvent.consumerSchema.shape.type.value] = supportedEvent;
|
|
13
|
-
this.
|
|
13
|
+
this.supportedEventTypes.add(supportedEvent.consumerSchema.shape.type.value);
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
getEventDefinitionByTypeName = (eventTypeName) => {
|
|
17
17
|
return this.supportedEventMap[eventTypeName];
|
|
18
18
|
};
|
|
19
19
|
isSupportedEvent(eventTypeName) {
|
|
20
|
-
return this.
|
|
20
|
+
return this.supportedEventTypes.has(eventTypeName);
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
23
|
exports.EventRegistry = EventRegistry;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventRegistry.js","sourceRoot":"","sources":["../../../lib/events/EventRegistry.ts"],"names":[],"mappings":";;;AAEA,MAAa,aAAa;IACR,eAAe,CAAiB;
|
|
1
|
+
{"version":3,"file":"EventRegistry.js","sourceRoot":"","sources":["../../../lib/events/EventRegistry.ts"],"names":[],"mappings":";;;AAEA,MAAa,aAAa;IACR,eAAe,CAAiB;IAChC,mBAAmB,CAAa;IAC/B,iBAAiB,GAA0C,EAAE,CAAA;IAE9E,YAAY,eAAgC;QAC1C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;QACtC,IAAI,CAAC,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAA;QAE5C,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;YAC7C,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,cAAc,CAAA;YACvF,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC9E,CAAC;IACH,CAAC;IAEM,4BAA4B,GAAG,CAGpC,aAA4B,EACL,EAAE;QACzB,OAAO,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAA;IAC9C,CAAC,CAAA;IAEM,gBAAgB,CAAC,aAAqB;QAC3C,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACpD,CAAC;CACF;AA1BD,sCA0BC"}
|
|
@@ -70,7 +70,7 @@ class AbstractPublisherManager {
|
|
|
70
70
|
async publish(eventTarget, message, precedingEventMetadata, messageOptions) {
|
|
71
71
|
const publisher = this.targetToPublisherMap[eventTarget];
|
|
72
72
|
if (!publisher) {
|
|
73
|
-
throw new Error(`No publisher for target ${eventTarget}
|
|
73
|
+
throw new Error(`No publisher for target ${eventTarget} - did you perhaps forget to update supportedEvents passed to EventRegistry?`);
|
|
74
74
|
}
|
|
75
75
|
const messageDefinition = this.resolveMessageDefinition(eventTarget, message);
|
|
76
76
|
if (!messageDefinition) {
|
|
@@ -122,7 +122,7 @@ class AbstractPublisherManager {
|
|
|
122
122
|
handlerSpy(eventTarget) {
|
|
123
123
|
const publisher = this.targetToPublisherMap[eventTarget];
|
|
124
124
|
if (!publisher) {
|
|
125
|
-
throw new Error(`No publisher for target ${eventTarget}
|
|
125
|
+
throw new Error(`No publisher for target ${eventTarget} - did you perhaps forget to update supportedEvents passed to EventRegistry?`);
|
|
126
126
|
}
|
|
127
127
|
return publisher.handlerSpy;
|
|
128
128
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractPublisherManager.js","sourceRoot":"","sources":["../../../lib/queues/AbstractPublisherManager.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AbstractPublisherManager.js","sourceRoot":"","sources":["../../../lib/queues/AbstractPublisherManager.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@message-queue-toolkit/core",
|
|
3
|
-
"version": "17.
|
|
3
|
+
"version": "17.2.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "Useful utilities, interfaces and base classes for message queue handling. Supports AMQP and SQS with a common abstraction on top currently",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"prepublishOnly": "npm run build:release"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@lokalise/node-core": "^12.
|
|
28
|
+
"@lokalise/node-core": "^12.0.0",
|
|
29
29
|
"@message-queue-toolkit/schemas": "^4.0.0",
|
|
30
30
|
"fast-equals": "^5.0.1",
|
|
31
31
|
"json-stream-stringify": "^3.1.4",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"zod": "^3.23.8"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@biomejs/biome": "1.
|
|
37
|
+
"@biomejs/biome": "1.9.1",
|
|
38
38
|
"@kibertoad/biome-config": "^1.2.1",
|
|
39
39
|
"@types/node": "^22.0.0",
|
|
40
40
|
"@types/tmp": "^0.2.6",
|