@nestjstools/messaging 4.1.1 → 4.2.0-beta.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/lib/bus/in-memory-message-bus.factory.d.ts +3 -1
- package/lib/bus/in-memory-message-bus.factory.js +6 -3
- package/lib/bus/in-memory-message-bus.factory.js.map +1 -1
- package/lib/bus/in-memory-message.bus.d.ts +3 -1
- package/lib/bus/in-memory-message.bus.js +19 -10
- package/lib/bus/in-memory-message.bus.js.map +1 -1
- package/lib/consumer/distributed.consumer.js.map +1 -1
- package/lib/dependency-injection/decorator.d.ts +3 -0
- package/lib/dependency-injection/decorator.js +8 -1
- package/lib/dependency-injection/decorator.js.map +1 -1
- package/lib/dependency-injection/register.d.ts +1 -0
- package/lib/dependency-injection/register.js +13 -8
- package/lib/dependency-injection/register.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/lifecycle-hook/messaging-lifecycle-hook-handler.d.ts +9 -0
- package/lib/lifecycle-hook/messaging-lifecycle-hook-handler.js +41 -0
- package/lib/lifecycle-hook/messaging-lifecycle-hook-handler.js.map +1 -0
- package/lib/lifecycle-hook/messaging-lifecycle-hook-listener.d.ts +10 -0
- package/lib/lifecycle-hook/messaging-lifecycle-hook-listener.js +10 -0
- package/lib/lifecycle-hook/messaging-lifecycle-hook-listener.js.map +1 -0
- package/lib/lifecycle-hook/messaging-lifecycle-hook.registry.d.ts +5 -0
- package/lib/lifecycle-hook/messaging-lifecycle-hook.registry.js +19 -0
- package/lib/lifecycle-hook/messaging-lifecycle-hook.registry.js.map +1 -0
- package/lib/messaging.module.js +8 -2
- package/lib/messaging.module.js.map +1 -1
- package/lib/shared/base-registry.d.ts +1 -1
- package/lib/shared/base-registry.js.map +1 -1
- package/lib/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -4,10 +4,12 @@ import { MiddlewareRegistry } from '../middleware/middleware.registry';
|
|
|
4
4
|
import { InMemoryChannel } from '../channel/in-memory.channel';
|
|
5
5
|
import { IMessageBusFactory } from './i-message-bus.factory';
|
|
6
6
|
import { NormalizerRegistry } from '../normalizer/normalizer.registry';
|
|
7
|
+
import { MessagingLifecycleHookHandler } from '../lifecycle-hook/messaging-lifecycle-hook-handler';
|
|
7
8
|
export declare class InMemoryMessageBusFactory implements IMessageBusFactory<InMemoryChannel> {
|
|
8
9
|
private registry;
|
|
9
10
|
private middlewareRegistry;
|
|
10
11
|
private messageNormalizerRegistry;
|
|
11
|
-
|
|
12
|
+
private messagingHookHandler;
|
|
13
|
+
constructor(registry: MessageHandlerRegistry, middlewareRegistry: MiddlewareRegistry, messageNormalizerRegistry: NormalizerRegistry, messagingHookHandler: MessagingLifecycleHookHandler);
|
|
12
14
|
create(channel: InMemoryChannel): IMessageBus;
|
|
13
15
|
}
|
|
@@ -21,14 +21,16 @@ const in_memory_channel_1 = require("../channel/in-memory.channel");
|
|
|
21
21
|
const decorator_1 = require("../dependency-injection/decorator");
|
|
22
22
|
const in_memory_message_bus_1 = require("./in-memory-message.bus");
|
|
23
23
|
const normalizer_registry_1 = require("../normalizer/normalizer.registry");
|
|
24
|
+
const messaging_lifecycle_hook_handler_1 = require("../lifecycle-hook/messaging-lifecycle-hook-handler");
|
|
24
25
|
let InMemoryMessageBusFactory = class InMemoryMessageBusFactory {
|
|
25
|
-
constructor(registry, middlewareRegistry, messageNormalizerRegistry) {
|
|
26
|
+
constructor(registry, middlewareRegistry, messageNormalizerRegistry, messagingHookHandler) {
|
|
26
27
|
this.registry = registry;
|
|
27
28
|
this.middlewareRegistry = middlewareRegistry;
|
|
28
29
|
this.messageNormalizerRegistry = messageNormalizerRegistry;
|
|
30
|
+
this.messagingHookHandler = messagingHookHandler;
|
|
29
31
|
}
|
|
30
32
|
create(channel) {
|
|
31
|
-
return new in_memory_message_bus_1.InMemoryMessageBus(this.registry, this.middlewareRegistry, channel, this.messageNormalizerRegistry);
|
|
33
|
+
return new in_memory_message_bus_1.InMemoryMessageBus(this.registry, this.middlewareRegistry, channel, this.messageNormalizerRegistry, this.messagingHookHandler);
|
|
32
34
|
}
|
|
33
35
|
};
|
|
34
36
|
exports.InMemoryMessageBusFactory = InMemoryMessageBusFactory;
|
|
@@ -40,6 +42,7 @@ exports.InMemoryMessageBusFactory = InMemoryMessageBusFactory = __decorate([
|
|
|
40
42
|
__param(2, (0, common_1.Inject)(service_1.Service.MESSAGE_NORMALIZERS_REGISTRY)),
|
|
41
43
|
__metadata("design:paramtypes", [message_handler_registry_1.MessageHandlerRegistry,
|
|
42
44
|
middleware_registry_1.MiddlewareRegistry,
|
|
43
|
-
normalizer_registry_1.NormalizerRegistry
|
|
45
|
+
normalizer_registry_1.NormalizerRegistry,
|
|
46
|
+
messaging_lifecycle_hook_handler_1.MessagingLifecycleHookHandler])
|
|
44
47
|
], InMemoryMessageBusFactory);
|
|
45
48
|
//# sourceMappingURL=in-memory-message-bus.factory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"in-memory-message-bus.factory.js","sourceRoot":"","sources":["../../src/bus/in-memory-message-bus.factory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAoD;AAEpD,kFAA6E;AAC7E,6DAA0D;AAC1D,2EAAuE;AACvE,oEAA+D;AAC/D,iEAAsE;AACtE,mEAA6D;AAE7D,2EAAuE;
|
|
1
|
+
{"version":3,"file":"in-memory-message-bus.factory.js","sourceRoot":"","sources":["../../src/bus/in-memory-message-bus.factory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAoD;AAEpD,kFAA6E;AAC7E,6DAA0D;AAC1D,2EAAuE;AACvE,oEAA+D;AAC/D,iEAAsE;AACtE,mEAA6D;AAE7D,2EAAuE;AACvE,yGAAmG;AAI5F,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IACpC,YAEU,QAAgC,EAEhC,kBAAsC,EAEtC,yBAA6C,EAC7C,oBAAmD;QALnD,aAAQ,GAAR,QAAQ,CAAwB;QAEhC,uBAAkB,GAAlB,kBAAkB,CAAoB;QAEtC,8BAAyB,GAAzB,yBAAyB,CAAoB;QAC7C,yBAAoB,GAApB,oBAAoB,CAA+B;IAE7D,CAAC;IAED,MAAM,CAAC,OAAwB;QAC7B,OAAO,IAAI,0CAAkB,CAC3B,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,kBAAkB,EACvB,OAAO,EACP,IAAI,CAAC,yBAAyB,EAC9B,IAAI,CAAC,oBAAoB,CAC1B,CAAC;IACJ,CAAC;CACF,CAAA;AArBY,8DAAyB;oCAAzB,yBAAyB;IAFrC,IAAA,mBAAU,GAAE;IACZ,IAAA,6BAAiB,EAAC,mCAAe,CAAC;IAG9B,WAAA,IAAA,eAAM,EAAC,iBAAO,CAAC,yBAAyB,CAAC,CAAA;IAEzC,WAAA,IAAA,eAAM,EAAC,iBAAO,CAAC,mBAAmB,CAAC,CAAA;IAEnC,WAAA,IAAA,eAAM,EAAC,iBAAO,CAAC,4BAA4B,CAAC,CAAA;qCAH3B,iDAAsB;QAEZ,wCAAkB;QAEX,wCAAkB;QACvB,gEAA6B;GARlD,yBAAyB,CAqBrC"}
|
|
@@ -4,11 +4,13 @@ import { MiddlewareRegistry } from '../middleware/middleware.registry';
|
|
|
4
4
|
import { InMemoryChannel } from '../channel/in-memory.channel';
|
|
5
5
|
import { Message } from '../message/message';
|
|
6
6
|
import { NormalizerRegistry } from '../normalizer/normalizer.registry';
|
|
7
|
+
import { MessagingLifecycleHookHandler } from '../lifecycle-hook/messaging-lifecycle-hook-handler';
|
|
7
8
|
export declare class InMemoryMessageBus implements IMessageBus {
|
|
8
9
|
private registry;
|
|
9
10
|
private middlewareRegistry;
|
|
10
11
|
private channel;
|
|
11
12
|
private normalizerRegistry;
|
|
12
|
-
|
|
13
|
+
private messagingHookHandler;
|
|
14
|
+
constructor(registry: MessageHandlerRegistry, middlewareRegistry: MiddlewareRegistry, channel: InMemoryChannel, normalizerRegistry: NormalizerRegistry, messagingHookHandler: MessagingLifecycleHookHandler);
|
|
13
15
|
dispatch(message: Message): Promise<object | void>;
|
|
14
16
|
}
|
|
@@ -11,15 +11,29 @@ const message_factory_1 = require("../message/message.factory");
|
|
|
11
11
|
const routing_message_1 = require("../message/routing-message");
|
|
12
12
|
const default_message_options_1 = require("../message/default-message-options");
|
|
13
13
|
class InMemoryMessageBus {
|
|
14
|
-
constructor(registry, middlewareRegistry, channel, normalizerRegistry) {
|
|
14
|
+
constructor(registry, middlewareRegistry, channel, normalizerRegistry, messagingHookHandler) {
|
|
15
15
|
this.registry = registry;
|
|
16
16
|
this.middlewareRegistry = middlewareRegistry;
|
|
17
17
|
this.channel = channel;
|
|
18
18
|
this.normalizerRegistry = normalizerRegistry;
|
|
19
|
+
this.messagingHookHandler = messagingHookHandler;
|
|
19
20
|
}
|
|
20
21
|
async dispatch(message) {
|
|
21
22
|
const middlewares = [];
|
|
23
|
+
// Execution order: channel middlewares -> message middlewares -> handler middleware.
|
|
22
24
|
middlewares.push(...(this.channel.config?.middlewares ?? []), ...(message.messageOptions?.middlewares ?? []), handler_middleware_1.HandlerMiddleware);
|
|
25
|
+
let messageToDispatch = message instanceof routing_message_1.RoutingMessage ? message.message : {};
|
|
26
|
+
if (message instanceof sealed_routing_message_1.SealedRoutingMessage) {
|
|
27
|
+
// Sealed messages carry raw payload and must be denormalized before dispatch.
|
|
28
|
+
const normalizerDefinition = message.messageOptions instanceof default_message_options_1.DefaultMessageOptions
|
|
29
|
+
? message.messageOptions.normalizer
|
|
30
|
+
: object_forward_message_normalizer_1.ObjectForwardMessageNormalizer;
|
|
31
|
+
messageToDispatch = await this.normalizerRegistry
|
|
32
|
+
.getByName(normalizerDefinition['name'])
|
|
33
|
+
.denormalize(message.message, message.messageRoutingKey);
|
|
34
|
+
}
|
|
35
|
+
// Hook fired once the payload shape is ready for handler pipeline.
|
|
36
|
+
await this.messagingHookHandler.handleAfterMessageDenormalized(message_factory_1.MessageFactory.creteRoutingFromMessage(messageToDispatch, message));
|
|
23
37
|
try {
|
|
24
38
|
this.registry.getByRoutingKey(message.messageRoutingKey);
|
|
25
39
|
}
|
|
@@ -36,6 +50,7 @@ class InMemoryMessageBus {
|
|
|
36
50
|
message.messageOptions?.avoidErrorsWhenNotExistedHandler ??
|
|
37
51
|
avoidErrorsForNonExistedHandlers;
|
|
38
52
|
}
|
|
53
|
+
// Missing handler can be configured as no-op for fire-and-forget scenarios.
|
|
39
54
|
if (avoidErrorsForNonExistedHandlers) {
|
|
40
55
|
return Promise.resolve();
|
|
41
56
|
}
|
|
@@ -43,16 +58,10 @@ class InMemoryMessageBus {
|
|
|
43
58
|
}
|
|
44
59
|
const middlewareInstances = middlewares.map((middleware) => this.middlewareRegistry.getByName(decorator_extractor_1.DecoratorExtractor.extractMessageMiddleware(middleware)));
|
|
45
60
|
const context = middleware_context_1.MiddlewareContext.createFresh(middlewareInstances);
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
const normalizerDefinition = message.messageOptions instanceof default_message_options_1.DefaultMessageOptions
|
|
49
|
-
? message.messageOptions.normalizer
|
|
50
|
-
: object_forward_message_normalizer_1.ObjectForwardMessageNormalizer;
|
|
51
|
-
messageToDispatch = await this.normalizerRegistry
|
|
52
|
-
.getByName(normalizerDefinition['name'])
|
|
53
|
-
.denormalize(message.message, message.messageRoutingKey);
|
|
54
|
-
}
|
|
61
|
+
// Hook around handler execution.
|
|
62
|
+
await this.messagingHookHandler.handleBeforeMessageHandler(message_factory_1.MessageFactory.creteRoutingFromMessage(messageToDispatch, message));
|
|
55
63
|
const response = await middlewareInstances[0].process(message_factory_1.MessageFactory.creteRoutingFromMessage(messageToDispatch, message), context);
|
|
64
|
+
await this.messagingHookHandler.handleAfterMessageHandlerExecuted(message_factory_1.MessageFactory.creteRoutingFromMessage(messageToDispatch, message));
|
|
56
65
|
return Promise.resolve(response);
|
|
57
66
|
}
|
|
58
67
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"in-memory-message.bus.js","sourceRoot":"","sources":["../../src/bus/in-memory-message.bus.ts"],"names":[],"mappings":";;;AAGA,oEAA+D;AAC/D,yEAAqE;AACrE,yEAAqE;AACrE,uEAAmE;AAEnE,8EAAyE;AACzE,uGAAiG;AACjG,gEAA4D;AAE5D,gEAA4D;AAE5D,gFAA2E;
|
|
1
|
+
{"version":3,"file":"in-memory-message.bus.js","sourceRoot":"","sources":["../../src/bus/in-memory-message.bus.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distributed.consumer.js","sourceRoot":"","sources":["../../src/consumer/distributed.consumer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAwC;AACxC,uCAAgD;AAChD,6DAA0D;AAE1D,kEAA8D;AAE9D,oEAA+D;AAC/D,iEAA8E;AAE9E,iGAA4F;AAC5F,sEAAiE;AAEjE,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAC9B,YAEmB,UAAuB,EAEvB,eAAgC,EAEhC,wBAAkD,EAC1B,MAAuB,EAC/C,gBAAkC;QANlC,eAAU,GAAV,UAAU,CAAa;QAEvB,oBAAe,GAAf,eAAe,CAAiB;QAEhC,6BAAwB,GAAxB,wBAAwB,CAA0B;QAC1B,WAAM,GAAN,MAAM,CAAiB;QAC/C,qBAAgB,GAAhB,gBAAgB,CAAkB;
|
|
1
|
+
{"version":3,"file":"distributed.consumer.js","sourceRoot":"","sources":["../../src/consumer/distributed.consumer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAwC;AACxC,uCAAgD;AAChD,6DAA0D;AAE1D,kEAA8D;AAE9D,oEAA+D;AAC/D,iEAA8E;AAE9E,iGAA4F;AAC5F,sEAAiE;AAEjE,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAC9B,YAEmB,UAAuB,EAEvB,eAAgC,EAEhC,wBAAkD,EAC1B,MAAuB,EAC/C,gBAAkC;QANlC,eAAU,GAAV,UAAU,CAAa;QAEvB,oBAAe,GAAf,eAAe,CAAiB;QAEhC,6BAAwB,GAAxB,wBAAwB,CAA0B;QAC1B,WAAM,GAAN,MAAM,CAAiB;QAC/C,qBAAgB,GAAhB,gBAAgB,CAAkB;IAErD,CAAC;IAED,KAAK,CAAC,GAAG;QACP,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,EAAE,CAAC;YACpD,IACE,OAAO,YAAY,mCAAe;gBAClC,KAAK,KAAK,OAAO,CAAC,MAAM,CAAC,cAAc,EACvC,CAAC;gBACD,SAAS;YACX,CAAC;YAED,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB;iBAC1C,YAAY,EAAE;iBACd,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACnB,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;oBACvB,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,OAAO,OAAO,CAAC,WAAW,CACxB,qCAAyB,EACzB,QAAQ,CAAC,QAAQ,CAClB,CAAC;YACJ,CAAC,CAAC;iBACD,MAAM,CACL,CAAC,QAAQ,EAAE,EAAE,CACX,OAAO,CAAC,WAAW,CAAC,qCAAyB,EAAE,QAAQ,CAAC,QAAQ,CAAC;iBAC9D,IAAI,KAAK,OAAO,CAAC,WAAW,CAAC,IAAI,CACvC,CAAC;YAEJ,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CACb,wBAAwB,OAAO,CAAC,WAAW,CAAC,IAAI,iBAAiB,CAClE,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAA4B,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAEtE,MAAM,UAAU,GAAG,IAAI,yCAAkB,CACvC,IAAI,CAAC,UAAU,EACf,OAAO,EACP,IAAI,CAAC,MAAM,EACX,QAAQ,EACR,IAAI,CAAC,wBAAwB,CAC9B,CAAC;YAEF,MAAM,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAE5C,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,yBAAyB,OAAO,CAAC,MAAM,CAAC,IAAI,+BAA+B,CAC5E,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AA/DY,kDAAmB;8BAAnB,mBAAmB;IAE3B,WAAA,IAAA,eAAM,EAAC,iBAAO,CAAC,mBAAmB,CAAC,CAAA;IAEnC,WAAA,IAAA,eAAM,EAAC,iBAAO,CAAC,gBAAgB,CAAC,CAAA;IAEhC,WAAA,IAAA,eAAM,EAAC,iBAAO,CAAC,0BAA0B,CAAC,CAAA;IAE1C,WAAA,IAAA,eAAM,EAAC,iBAAO,CAAC,MAAM,CAAC,CAAA;6CAHW,kCAAe;QAEN,qDAAwB,UAEhC,uBAAgB;GAT1C,mBAAmB,CA+D/B"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ChannelConfig } from '../config';
|
|
2
|
+
import { LifecycleHook } from '../lifecycle-hook/messaging-lifecycle-hook-listener';
|
|
2
3
|
export declare const MESSAGE_HANDLER_METADATA = "MESSAGE_HANDLER_METADATA";
|
|
3
4
|
export declare const CHANNEL_FACTORY_METADATA = "CHANNEL_FACTORY_METADATA";
|
|
4
5
|
export declare const MESSAGE_BUS_FACTORY_METADATA = "MESSAGE_BUS_FACTORY_METADATA";
|
|
@@ -7,6 +8,7 @@ export declare const MESSAGING_MIDDLEWARE_METADATA = "MESSAGING_MIDDLEWARE_METAD
|
|
|
7
8
|
export declare const MESSAGING_NORMALIZER_METADATA = "MESSAGING_NORMALIZER_METADATA";
|
|
8
9
|
export declare const MESSAGING_EXCEPTION_LISTENER_METADATA = "MESSAGING_EXCEPTION_LISTENER_METADATA";
|
|
9
10
|
export declare const MESSAGING_MESSAGE_METADATA = "MESSAGING_MESSAGE_METADATA";
|
|
11
|
+
export declare const MESSAGING_LIFECYCLE_HOOK_METADATA = "MESSAGING_LIFECYCLE_HOOK_METADATA";
|
|
10
12
|
export declare const MessageHandler: (...routingKey: string[]) => ClassDecorator;
|
|
11
13
|
export declare const ChannelFactory: (channelConfig: ChannelConfig) => ClassDecorator;
|
|
12
14
|
export declare const MessageBusFactory: (channel: any) => ClassDecorator;
|
|
@@ -14,4 +16,5 @@ export declare const MessageConsumer: (channel: any) => ClassDecorator;
|
|
|
14
16
|
export declare const MessagingMiddleware: (name?: string) => ClassDecorator;
|
|
15
17
|
export declare const MessagingNormalizer: (name?: string) => ClassDecorator;
|
|
16
18
|
export declare const MessagingExceptionListener: () => ClassDecorator;
|
|
19
|
+
export declare const MessagingLifecycleHook: (lifecycleHook: LifecycleHook) => ClassDecorator;
|
|
17
20
|
export declare function DenormalizeMessage(): ParameterDecorator;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MessagingExceptionListener = exports.MessagingNormalizer = exports.MessagingMiddleware = exports.MessageConsumer = exports.MessageBusFactory = exports.ChannelFactory = exports.MessageHandler = exports.MESSAGING_MESSAGE_METADATA = exports.MESSAGING_EXCEPTION_LISTENER_METADATA = exports.MESSAGING_NORMALIZER_METADATA = exports.MESSAGING_MIDDLEWARE_METADATA = exports.MESSAGE_CONSUMER_METADATA = exports.MESSAGE_BUS_FACTORY_METADATA = exports.CHANNEL_FACTORY_METADATA = exports.MESSAGE_HANDLER_METADATA = void 0;
|
|
3
|
+
exports.MessagingLifecycleHook = exports.MessagingExceptionListener = exports.MessagingNormalizer = exports.MessagingMiddleware = exports.MessageConsumer = exports.MessageBusFactory = exports.ChannelFactory = exports.MessageHandler = exports.MESSAGING_LIFECYCLE_HOOK_METADATA = exports.MESSAGING_MESSAGE_METADATA = exports.MESSAGING_EXCEPTION_LISTENER_METADATA = exports.MESSAGING_NORMALIZER_METADATA = exports.MESSAGING_MIDDLEWARE_METADATA = exports.MESSAGE_CONSUMER_METADATA = exports.MESSAGE_BUS_FACTORY_METADATA = exports.CHANNEL_FACTORY_METADATA = exports.MESSAGE_HANDLER_METADATA = void 0;
|
|
4
4
|
exports.DenormalizeMessage = DenormalizeMessage;
|
|
5
5
|
exports.MESSAGE_HANDLER_METADATA = 'MESSAGE_HANDLER_METADATA';
|
|
6
6
|
exports.CHANNEL_FACTORY_METADATA = 'CHANNEL_FACTORY_METADATA';
|
|
@@ -10,6 +10,7 @@ exports.MESSAGING_MIDDLEWARE_METADATA = 'MESSAGING_MIDDLEWARE_METADATA';
|
|
|
10
10
|
exports.MESSAGING_NORMALIZER_METADATA = 'MESSAGING_NORMALIZER_METADATA';
|
|
11
11
|
exports.MESSAGING_EXCEPTION_LISTENER_METADATA = 'MESSAGING_EXCEPTION_LISTENER_METADATA';
|
|
12
12
|
exports.MESSAGING_MESSAGE_METADATA = 'MESSAGING_MESSAGE_METADATA';
|
|
13
|
+
exports.MESSAGING_LIFECYCLE_HOOK_METADATA = 'MESSAGING_LIFECYCLE_HOOK_METADATA';
|
|
13
14
|
const MessageHandler = (...routingKey) => {
|
|
14
15
|
return (target) => {
|
|
15
16
|
Reflect.defineMetadata(exports.MESSAGE_HANDLER_METADATA, routingKey, target);
|
|
@@ -54,6 +55,12 @@ const MessagingExceptionListener = () => {
|
|
|
54
55
|
};
|
|
55
56
|
};
|
|
56
57
|
exports.MessagingExceptionListener = MessagingExceptionListener;
|
|
58
|
+
const MessagingLifecycleHook = (lifecycleHook) => {
|
|
59
|
+
return (target) => {
|
|
60
|
+
Reflect.defineMetadata(exports.MESSAGING_LIFECYCLE_HOOK_METADATA, `${lifecycleHook}:${target.name}`, target);
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
exports.MessagingLifecycleHook = MessagingLifecycleHook;
|
|
57
64
|
function DenormalizeMessage() {
|
|
58
65
|
return (target, propertyKey, parameterIndex) => {
|
|
59
66
|
const paramTypes = Reflect.getMetadata('design:paramtypes', target, propertyKey);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decorator.js","sourceRoot":"","sources":["../../src/dependency-injection/decorator.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"decorator.js","sourceRoot":"","sources":["../../src/dependency-injection/decorator.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,3 +3,4 @@ export declare const registerHandlers: (moduleRef: ModuleRef, discoveryService:
|
|
|
3
3
|
export declare const registerMiddlewares: (moduleRef: ModuleRef, discoveryService: DiscoveryService) => void;
|
|
4
4
|
export declare const registerMessageNormalizers: (moduleRef: ModuleRef, discoveryService: DiscoveryService) => void;
|
|
5
5
|
export declare const registerExceptionListener: (moduleRef: ModuleRef, discoveryService: DiscoveryService) => void;
|
|
6
|
+
export declare const registerMessagingHooks: (moduleRef: ModuleRef, discoveryService: DiscoveryService) => void;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.registerExceptionListener = exports.registerMessageNormalizers = exports.registerMiddlewares = exports.registerHandlers = void 0;
|
|
3
|
+
exports.registerMessagingHooks = exports.registerExceptionListener = exports.registerMessageNormalizers = exports.registerMiddlewares = exports.registerHandlers = void 0;
|
|
4
4
|
const service_1 = require("./service");
|
|
5
5
|
const decorator_1 = require("./decorator");
|
|
6
6
|
const const_1 = require("../const");
|
|
7
|
+
const messaging_lifecycle_hook_registry_1 = require("../lifecycle-hook/messaging-lifecycle-hook.registry");
|
|
7
8
|
const registerHandlers = (moduleRef, discoveryService) => {
|
|
8
9
|
const registry = moduleRef.get(service_1.Service.MESSAGE_HANDLERS_REGISTRY);
|
|
9
10
|
const logger = moduleRef.get(service_1.Service.LOGGER);
|
|
@@ -31,22 +32,26 @@ const registerExceptionListener = (moduleRef, discoveryService) => {
|
|
|
31
32
|
register(moduleRef, discoveryService, service_1.Service.EXCEPTION_LISTENER_REGISTRY, decorator_1.MESSAGING_EXCEPTION_LISTENER_METADATA, 'ExceptionListener');
|
|
32
33
|
};
|
|
33
34
|
exports.registerExceptionListener = registerExceptionListener;
|
|
35
|
+
const registerMessagingHooks = (moduleRef, discoveryService) => {
|
|
36
|
+
register(moduleRef, discoveryService, messaging_lifecycle_hook_registry_1.MessagingLifecycleHookRegistry, decorator_1.MESSAGING_LIFECYCLE_HOOK_METADATA, 'MessagingLifecycleHook');
|
|
37
|
+
};
|
|
38
|
+
exports.registerMessagingHooks = registerMessagingHooks;
|
|
34
39
|
const register = (moduleRef, discoveryService, registryProvider, decoratorMetadata, name) => {
|
|
35
40
|
const exceptions = [const_1.DEFAULT_NORMALIZER, const_1.DEFAULT_MIDDLEWARE];
|
|
36
41
|
const registry = moduleRef.get(registryProvider);
|
|
37
42
|
const logger = moduleRef.get(service_1.Service.LOGGER);
|
|
38
43
|
const instances = discoveryService
|
|
39
44
|
.getProviders()
|
|
40
|
-
.filter((
|
|
41
|
-
if (!
|
|
45
|
+
.filter((provider) => {
|
|
46
|
+
if (!provider.metatype) {
|
|
42
47
|
return false;
|
|
43
48
|
}
|
|
44
|
-
return Reflect.hasMetadata(decoratorMetadata,
|
|
49
|
+
return Reflect.hasMetadata(decoratorMetadata, provider.metatype);
|
|
45
50
|
});
|
|
46
|
-
instances.forEach((
|
|
47
|
-
registry.register(Reflect.getMetadata(decoratorMetadata,
|
|
48
|
-
if (!exceptions.includes(
|
|
49
|
-
logger.log(`${name} [${
|
|
51
|
+
instances.forEach((provider) => {
|
|
52
|
+
registry.register(Reflect.getMetadata(decoratorMetadata, provider.metatype), provider.instance);
|
|
53
|
+
if (!exceptions.includes(provider.name)) {
|
|
54
|
+
logger.log(`${name} [${provider.name}] was registered`);
|
|
50
55
|
}
|
|
51
56
|
});
|
|
52
57
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/dependency-injection/register.ts"],"names":[],"mappings":";;;AAGA,uCAAoC;AACpC,2CAKqB;AACrB,oCAAkE;
|
|
1
|
+
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/dependency-injection/register.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -47,4 +47,5 @@ __exportStar(require("./exception/handlers.exception"), exports);
|
|
|
47
47
|
__exportStar(require("./logger/log"), exports);
|
|
48
48
|
__exportStar(require("./logger/messaging-logger"), exports);
|
|
49
49
|
__exportStar(require("./logger/nest-logger"), exports);
|
|
50
|
+
__exportStar(require("./lifecycle-hook/messaging-lifecycle-hook-listener"), exports);
|
|
50
51
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,2CAAyB;AACzB,kEAAgD;AAChD,8DAA4C;AAC5C,+EAA6D;AAC7D,mEAAiD;AACjD,oEAAkD;AAClD,8DAA4C;AAC5C,8DAA4C;AAC5C,6DAA2C;AAC3C,sDAAoC;AACpC,8DAA4C;AAC5C,oEAAkD;AAClD,4DAA0C;AAC1C,4DAA0C;AAC1C,oDAAkC;AAClC,6DAA2C;AAC3C,8EAA4D;AAC5D,8EAA4D;AAC5D,8DAA4C;AAC5C,oDAAkC;AAClC,0DAAwC;AACxC,wEAAsD;AACtD,+EAA6D;AAC7D,kEAAgD;AAChD,kEAAgD;AAChD,kEAAgD;AAChD,0EAAwD;AACxD,yEAAuD;AACvD,iEAA+C;AAC/C,+CAA6B;AAC7B,4DAA0C;AAC1C,uDAAqC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,2CAAyB;AACzB,kEAAgD;AAChD,8DAA4C;AAC5C,+EAA6D;AAC7D,mEAAiD;AACjD,oEAAkD;AAClD,8DAA4C;AAC5C,8DAA4C;AAC5C,6DAA2C;AAC3C,sDAAoC;AACpC,8DAA4C;AAC5C,oEAAkD;AAClD,4DAA0C;AAC1C,4DAA0C;AAC1C,oDAAkC;AAClC,6DAA2C;AAC3C,8EAA4D;AAC5D,8EAA4D;AAC5D,8DAA4C;AAC5C,oDAAkC;AAClC,0DAAwC;AACxC,wEAAsD;AACtD,+EAA6D;AAC7D,kEAAgD;AAChD,kEAAgD;AAChD,kEAAgD;AAChD,0EAAwD;AACxD,yEAAuD;AACvD,iEAA+C;AAC/C,+CAA6B;AAC7B,4DAA0C;AAC1C,uDAAqC;AACrC,qFAAkE"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { MessagingLifecycleHookRegistry } from './messaging-lifecycle-hook.registry';
|
|
2
|
+
import { RoutingMessage } from '../message/routing-message';
|
|
3
|
+
export declare class MessagingLifecycleHookHandler {
|
|
4
|
+
private readonly messagingHookRegistry;
|
|
5
|
+
constructor(messagingHookRegistry: MessagingLifecycleHookRegistry);
|
|
6
|
+
handleAfterMessageDenormalized(message: RoutingMessage): Promise<void>;
|
|
7
|
+
handleBeforeMessageHandler(message: RoutingMessage): Promise<void>;
|
|
8
|
+
handleAfterMessageHandlerExecuted(message: RoutingMessage): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.MessagingLifecycleHookHandler = void 0;
|
|
13
|
+
const common_1 = require("@nestjs/common");
|
|
14
|
+
const messaging_lifecycle_hook_registry_1 = require("./messaging-lifecycle-hook.registry");
|
|
15
|
+
const messaging_lifecycle_hook_listener_1 = require("./messaging-lifecycle-hook-listener");
|
|
16
|
+
let MessagingLifecycleHookHandler = class MessagingLifecycleHookHandler {
|
|
17
|
+
constructor(messagingHookRegistry) {
|
|
18
|
+
this.messagingHookRegistry = messagingHookRegistry;
|
|
19
|
+
}
|
|
20
|
+
async handleAfterMessageDenormalized(message) {
|
|
21
|
+
await this.messagingHookRegistry
|
|
22
|
+
.getAllByHook(messaging_lifecycle_hook_listener_1.LifecycleHook.AFTER_MESSAGE_DENORMALIZED)
|
|
23
|
+
.forEach((listener) => listener.on(message));
|
|
24
|
+
}
|
|
25
|
+
async handleBeforeMessageHandler(message) {
|
|
26
|
+
await this.messagingHookRegistry
|
|
27
|
+
.getAllByHook(messaging_lifecycle_hook_listener_1.LifecycleHook.BEFORE_MESSAGE_HANDLER)
|
|
28
|
+
.forEach((listener) => listener.on(message));
|
|
29
|
+
}
|
|
30
|
+
async handleAfterMessageHandlerExecuted(message) {
|
|
31
|
+
await this.messagingHookRegistry
|
|
32
|
+
.getAllByHook(messaging_lifecycle_hook_listener_1.LifecycleHook.AFTER_MESSAGE_HANDLER_EXECUTED)
|
|
33
|
+
.forEach((listener) => listener.on(message));
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
exports.MessagingLifecycleHookHandler = MessagingLifecycleHookHandler;
|
|
37
|
+
exports.MessagingLifecycleHookHandler = MessagingLifecycleHookHandler = __decorate([
|
|
38
|
+
(0, common_1.Injectable)(),
|
|
39
|
+
__metadata("design:paramtypes", [messaging_lifecycle_hook_registry_1.MessagingLifecycleHookRegistry])
|
|
40
|
+
], MessagingLifecycleHookHandler);
|
|
41
|
+
//# sourceMappingURL=messaging-lifecycle-hook-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messaging-lifecycle-hook-handler.js","sourceRoot":"","sources":["../../src/lifecycle-hook/messaging-lifecycle-hook-handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,2FAAqF;AACrF,2FAAoE;AAI7D,IAAM,6BAA6B,GAAnC,MAAM,6BAA6B;IACxC,YACmB,qBAAqD;QAArD,0BAAqB,GAArB,qBAAqB,CAAgC;IAExE,CAAC;IAED,KAAK,CAAC,8BAA8B,CAAC,OAAuB;QAC1D,MAAM,IAAI,CAAC,qBAAqB;aAC7B,YAAY,CAAC,iDAAa,CAAC,0BAA0B,CAAC;aACtD,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,OAAuB;QACtD,MAAM,IAAI,CAAC,qBAAqB;aAC7B,YAAY,CAAC,iDAAa,CAAC,sBAAsB,CAAC;aAClD,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,iCAAiC,CAAC,OAAuB;QAC7D,MAAM,IAAI,CAAC,qBAAqB;aAC7B,YAAY,CAAC,iDAAa,CAAC,8BAA8B,CAAC;aAC1D,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACjD,CAAC;CACF,CAAA;AAvBY,sEAA6B;wCAA7B,6BAA6B;IADzC,IAAA,mBAAU,GAAE;qCAG+B,kEAA8B;GAF7D,6BAA6B,CAuBzC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { RoutingMessage } from '../message/routing-message';
|
|
2
|
+
export type MessagingData = RoutingMessage;
|
|
3
|
+
export declare enum LifecycleHook {
|
|
4
|
+
AFTER_MESSAGE_DENORMALIZED = "AFTER_MESSAGE_DENORMALIZED",
|
|
5
|
+
BEFORE_MESSAGE_HANDLER = "BEFORE_MESSAGE_HANDLER",
|
|
6
|
+
AFTER_MESSAGE_HANDLER_EXECUTED = "AFTER_MESSAGE_HANDLER_EXECUTED"
|
|
7
|
+
}
|
|
8
|
+
export interface MessagingLifecycleHookListener {
|
|
9
|
+
on(data: MessagingData): Promise<void>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LifecycleHook = void 0;
|
|
4
|
+
var LifecycleHook;
|
|
5
|
+
(function (LifecycleHook) {
|
|
6
|
+
LifecycleHook["AFTER_MESSAGE_DENORMALIZED"] = "AFTER_MESSAGE_DENORMALIZED";
|
|
7
|
+
LifecycleHook["BEFORE_MESSAGE_HANDLER"] = "BEFORE_MESSAGE_HANDLER";
|
|
8
|
+
LifecycleHook["AFTER_MESSAGE_HANDLER_EXECUTED"] = "AFTER_MESSAGE_HANDLER_EXECUTED";
|
|
9
|
+
})(LifecycleHook || (exports.LifecycleHook = LifecycleHook = {}));
|
|
10
|
+
//# sourceMappingURL=messaging-lifecycle-hook-listener.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messaging-lifecycle-hook-listener.js","sourceRoot":"","sources":["../../src/lifecycle-hook/messaging-lifecycle-hook-listener.ts"],"names":[],"mappings":";;;AAIA,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,0EAAyD,CAAA;IACzD,kEAAiD,CAAA;IACjD,kFAAiE,CAAA;AACnE,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { BaseRegistry } from '../shared/base-registry';
|
|
2
|
+
import { MessagingLifecycleHookListener, LifecycleHook } from './messaging-lifecycle-hook-listener';
|
|
3
|
+
export declare class MessagingLifecycleHookRegistry extends BaseRegistry<MessagingLifecycleHookListener> {
|
|
4
|
+
getAllByHook(hook: LifecycleHook): MessagingLifecycleHookListener[];
|
|
5
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MessagingLifecycleHookRegistry = void 0;
|
|
4
|
+
const base_registry_1 = require("../shared/base-registry");
|
|
5
|
+
class MessagingLifecycleHookRegistry extends base_registry_1.BaseRegistry {
|
|
6
|
+
getAllByHook(hook) {
|
|
7
|
+
const result = [];
|
|
8
|
+
for (const [key, listener] of this.registry.entries()) {
|
|
9
|
+
//Because pattern is `${hook}:${target.name}`,
|
|
10
|
+
const name = key.split(':')[0];
|
|
11
|
+
if (name.includes(hook)) {
|
|
12
|
+
result.push(listener);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
return result;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.MessagingLifecycleHookRegistry = MessagingLifecycleHookRegistry;
|
|
19
|
+
//# sourceMappingURL=messaging-lifecycle-hook.registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messaging-lifecycle-hook.registry.js","sourceRoot":"","sources":["../../src/lifecycle-hook/messaging-lifecycle-hook.registry.ts"],"names":[],"mappings":";;;AAAA,2DAAuD;AAGvD,MAAa,8BAA+B,SAAQ,4BAA4C;IAC9F,YAAY,CAAC,IAAmB;QAC9B,MAAM,MAAM,GAAqC,EAAE,CAAC;QAEpD,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;YACtD,8CAA8C;YAC9C,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/B,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAdD,wEAcC"}
|
package/lib/messaging.module.js
CHANGED
|
@@ -37,6 +37,8 @@ const normalizer_registry_1 = require("./normalizer/normalizer.registry");
|
|
|
37
37
|
const object_forward_message_normalizer_1 = require("./normalizer/object-forward-message.normalizer");
|
|
38
38
|
const exception_listener_registry_1 = require("./exception-listener/exception-listener.registry");
|
|
39
39
|
const exception_listener_handler_1 = require("./exception-listener/exception-listener-handler");
|
|
40
|
+
const messaging_lifecycle_hook_handler_1 = require("./lifecycle-hook/messaging-lifecycle-hook-handler");
|
|
41
|
+
const messaging_lifecycle_hook_registry_1 = require("./lifecycle-hook/messaging-lifecycle-hook.registry");
|
|
40
42
|
let MessagingModule = MessagingModule_1 = class MessagingModule {
|
|
41
43
|
static forRoot(options) {
|
|
42
44
|
const channels = options.channels ?? [];
|
|
@@ -96,17 +98,18 @@ let MessagingModule = MessagingModule_1 = class MessagingModule {
|
|
|
96
98
|
const defaultMessageBus = () => {
|
|
97
99
|
return {
|
|
98
100
|
provide: service_1.Service.DEFAULT_MESSAGE_BUS,
|
|
99
|
-
useFactory: (messageHandlerRegistry, middlewareRegistry, normalizerRegistry) => {
|
|
101
|
+
useFactory: (messageHandlerRegistry, middlewareRegistry, normalizerRegistry, messagingHookHandler) => {
|
|
100
102
|
return new in_memory_message_bus_1.InMemoryMessageBus(messageHandlerRegistry, middlewareRegistry, new in_memory_channel_1.InMemoryChannel(new config_1.InMemoryChannelConfig({
|
|
101
103
|
name: 'default.bus',
|
|
102
104
|
middlewares: [],
|
|
103
105
|
avoidErrorsForNotExistedHandlers: true,
|
|
104
|
-
})), normalizerRegistry);
|
|
106
|
+
})), normalizerRegistry, messagingHookHandler);
|
|
105
107
|
},
|
|
106
108
|
inject: [
|
|
107
109
|
service_1.Service.MESSAGE_HANDLERS_REGISTRY,
|
|
108
110
|
service_1.Service.MIDDLEWARE_REGISTRY,
|
|
109
111
|
service_1.Service.MESSAGE_NORMALIZERS_REGISTRY,
|
|
112
|
+
messaging_lifecycle_hook_handler_1.MessagingLifecycleHookHandler,
|
|
110
113
|
],
|
|
111
114
|
};
|
|
112
115
|
};
|
|
@@ -164,6 +167,8 @@ let MessagingModule = MessagingModule_1 = class MessagingModule {
|
|
|
164
167
|
in_memory_channel_factory_1.InMemoryChannelFactory,
|
|
165
168
|
distributed_consumer_1.DistributedConsumer,
|
|
166
169
|
object_forward_message_normalizer_1.ObjectForwardMessageNormalizer,
|
|
170
|
+
messaging_lifecycle_hook_registry_1.MessagingLifecycleHookRegistry,
|
|
171
|
+
messaging_lifecycle_hook_handler_1.MessagingLifecycleHookHandler,
|
|
167
172
|
],
|
|
168
173
|
exports: [
|
|
169
174
|
service_1.Service.DEFAULT_MESSAGE_BUS,
|
|
@@ -184,6 +189,7 @@ let MessagingModule = MessagingModule_1 = class MessagingModule {
|
|
|
184
189
|
(0, register_1.registerMiddlewares)(this.moduleRef, this.discoveryService);
|
|
185
190
|
(0, register_1.registerMessageNormalizers)(this.moduleRef, this.discoveryService);
|
|
186
191
|
(0, register_1.registerExceptionListener)(this.moduleRef, this.discoveryService);
|
|
192
|
+
(0, register_1.registerMessagingHooks)(this.moduleRef, this.discoveryService);
|
|
187
193
|
if (this.configuration.forceDisableAllConsumers ?? false) {
|
|
188
194
|
this.logger.log(`All consumers are disabled by configuration. Only [InMemoryChannel] is available for message dispatching`);
|
|
189
195
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messaging.module.js","sourceRoot":"","sources":["../src/messaging.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CASwB;AACxB,qCAOkB;AAClB,4DAAyD;AACzD,2FAAsF;AACtF,iEAA6D;AAC7D,uFAAiF;AACjF,2EAAsE;AACtE,uCAA4E;AAC5E,uEAAiE;AACjE,iFAA4E;AAE5E,sDAAkD;AAClD,2FAAqF;AACrF,0EAAsE;AACtE,8DAKyC;AACzC,0EAAsE;AACtE,uFAAgF;AAChF,mEAA8D;AAC9D,wEAAoE;AACpE,yEAAoE;AACpE,0EAAsE;AACtE,sGAAgG;AAChG,kGAA6F;AAC7F,gGAA2F;
|
|
1
|
+
{"version":3,"file":"messaging.module.js","sourceRoot":"","sources":["../src/messaging.module.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Registry } from './registry';
|
|
2
2
|
export declare abstract class BaseRegistry<T extends object> implements Registry<T> {
|
|
3
|
-
|
|
3
|
+
protected registry: Map<string, T>;
|
|
4
4
|
register(name: string, middleware: T): void;
|
|
5
5
|
getByName(name: string): T;
|
|
6
6
|
getAll(): T[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-registry.js","sourceRoot":"","sources":["../../src/shared/base-registry.ts"],"names":[],"mappings":";;;AACA,0EAAsE;AAEtE,MAAsB,YAAY;IAAlC;
|
|
1
|
+
{"version":3,"file":"base-registry.js","sourceRoot":"","sources":["../../src/shared/base-registry.ts"],"names":[],"mappings":";;;AACA,0EAAsE;AAEtE,MAAsB,YAAY;IAAlC;QACY,aAAQ,GAAmB,IAAI,GAAG,EAAE,CAAC;IAuBjD,CAAC;IArBC,QAAQ,CAAC,IAAY,EAAE,UAAa;QAClC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACtC,CAAC;IAED,SAAS,CAAC,IAAY;QACpB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,wCAAkB,CAC1B,8CAA8C,IAAI,EAAE,CACrD,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,MAAM;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;CACF;AAxBD,oCAwBC"}
|