@nestjstools/messaging 2.3.1
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 +21 -0
- package/README.md +565 -0
- package/lib/bus/composite-message-bus.factory.d.ts +9 -0
- package/lib/bus/composite-message-bus.factory.js +54 -0
- package/lib/bus/composite-message-bus.factory.js.map +1 -0
- package/lib/bus/distributed-message.bus.d.ts +11 -0
- package/lib/bus/distributed-message.bus.js +44 -0
- package/lib/bus/distributed-message.bus.js.map +1 -0
- package/lib/bus/i-message-bus.d.ts +4 -0
- package/lib/bus/i-message-bus.factory.d.ts +4 -0
- package/lib/bus/i-message-bus.factory.js +3 -0
- package/lib/bus/i-message-bus.factory.js.map +1 -0
- package/lib/bus/i-message-bus.js +3 -0
- package/lib/bus/i-message-bus.js.map +1 -0
- package/lib/bus/in-memory-message-bus.factory.d.ts +13 -0
- package/lib/bus/in-memory-message-bus.factory.js +45 -0
- package/lib/bus/in-memory-message-bus.factory.js.map +1 -0
- package/lib/bus/in-memory-message.bus.d.ts +14 -0
- package/lib/bus/in-memory-message.bus.js +53 -0
- package/lib/bus/in-memory-message.bus.js.map +1 -0
- package/lib/bus/message-bus.collection.d.ts +13 -0
- package/lib/bus/message-bus.collection.js +16 -0
- package/lib/bus/message-bus.collection.js.map +1 -0
- package/lib/channel/channel.d.ts +5 -0
- package/lib/channel/channel.js +10 -0
- package/lib/channel/channel.js.map +1 -0
- package/lib/channel/channel.registry.d.ts +10 -0
- package/lib/channel/channel.registry.js +31 -0
- package/lib/channel/channel.registry.js.map +1 -0
- package/lib/channel/factory/composite-channel.factory.d.ts +8 -0
- package/lib/channel/factory/composite-channel.factory.js +43 -0
- package/lib/channel/factory/composite-channel.factory.js.map +1 -0
- package/lib/channel/factory/in-memory-channel.factory.d.ts +6 -0
- package/lib/channel/factory/in-memory-channel.factory.js +28 -0
- package/lib/channel/factory/in-memory-channel.factory.js.map +1 -0
- package/lib/channel/i-channel-factory.d.ts +5 -0
- package/lib/channel/i-channel-factory.js +3 -0
- package/lib/channel/i-channel-factory.js.map +1 -0
- package/lib/channel/in-memory.channel.d.ts +4 -0
- package/lib/channel/in-memory.channel.js +8 -0
- package/lib/channel/in-memory.channel.js.map +1 -0
- package/lib/config.d.ts +40 -0
- package/lib/config.js +40 -0
- package/lib/config.js.map +1 -0
- package/lib/consumer/consumer-dispatched-message-error.d.ts +6 -0
- package/lib/consumer/consumer-dispatched-message-error.js +11 -0
- package/lib/consumer/consumer-dispatched-message-error.js.map +1 -0
- package/lib/consumer/consumer-message-dispatcher.d.ts +3 -0
- package/lib/consumer/consumer-message-dispatcher.js +3 -0
- package/lib/consumer/consumer-message-dispatcher.js.map +1 -0
- package/lib/consumer/consumer-message-mediator.d.ts +9 -0
- package/lib/consumer/consumer-message-mediator.js +17 -0
- package/lib/consumer/consumer-message-mediator.js.map +1 -0
- package/lib/consumer/consumer-message.d.ts +6 -0
- package/lib/consumer/consumer-message.js +15 -0
- package/lib/consumer/consumer-message.js.map +1 -0
- package/lib/consumer/distributed.consumer.d.ts +12 -0
- package/lib/consumer/distributed.consumer.js +79 -0
- package/lib/consumer/distributed.consumer.js.map +1 -0
- package/lib/consumer/i-messaging-consumer.d.ts +6 -0
- package/lib/consumer/i-messaging-consumer.js +3 -0
- package/lib/consumer/i-messaging-consumer.js.map +1 -0
- package/lib/dependency-injection/decorator.d.ts +13 -0
- package/lib/dependency-injection/decorator.js +53 -0
- package/lib/dependency-injection/decorator.js.map +1 -0
- package/lib/dependency-injection/injectable.d.ts +2 -0
- package/lib/dependency-injection/injectable.js +10 -0
- package/lib/dependency-injection/injectable.js.map +1 -0
- package/lib/dependency-injection/register.d.ts +4 -0
- package/lib/dependency-injection/register.js +59 -0
- package/lib/dependency-injection/register.js.map +1 -0
- package/lib/dependency-injection/service.d.ts +10 -0
- package/lib/dependency-injection/service.js +15 -0
- package/lib/dependency-injection/service.js.map +1 -0
- package/lib/exception/handler-for-message-not-found.exception.d.ts +4 -0
- package/lib/exception/handler-for-message-not-found.exception.js +11 -0
- package/lib/exception/handler-for-message-not-found.exception.js.map +1 -0
- package/lib/exception/invalid-channel-config.exception.d.ts +4 -0
- package/lib/exception/invalid-channel-config.exception.js +11 -0
- package/lib/exception/invalid-channel-config.exception.js.map +1 -0
- package/lib/exception/invalid-channel.exception.d.ts +4 -0
- package/lib/exception/invalid-channel.exception.js +11 -0
- package/lib/exception/invalid-channel.exception.js.map +1 -0
- package/lib/exception/messaging.exception.d.ts +3 -0
- package/lib/exception/messaging.exception.js +10 -0
- package/lib/exception/messaging.exception.js.map +1 -0
- package/lib/exception/unsupported-channel-factory.exception.d.ts +4 -0
- package/lib/exception/unsupported-channel-factory.exception.js +11 -0
- package/lib/exception/unsupported-channel-factory.exception.js.map +1 -0
- package/lib/handler/handler-response.d.ts +4 -0
- package/lib/handler/handler-response.js +10 -0
- package/lib/handler/handler-response.js.map +1 -0
- package/lib/handler/i-message.handler.d.ts +3 -0
- package/lib/handler/i-message.handler.js +3 -0
- package/lib/handler/i-message.handler.js.map +1 -0
- package/lib/handler/message-handler.registry.d.ts +6 -0
- package/lib/handler/message-handler.registry.js +28 -0
- package/lib/handler/message-handler.registry.js.map +1 -0
- package/lib/index.d.ts +27 -0
- package/lib/index.js +44 -0
- package/lib/index.js.map +1 -0
- package/lib/logger/messaging-logger.d.ts +5 -0
- package/lib/logger/messaging-logger.js +3 -0
- package/lib/logger/messaging-logger.js.map +1 -0
- package/lib/logger/nest-logger.d.ts +12 -0
- package/lib/logger/nest-logger.js +43 -0
- package/lib/logger/nest-logger.js.map +1 -0
- package/lib/message/default-message-options.d.ts +8 -0
- package/lib/message/default-message-options.js +12 -0
- package/lib/message/default-message-options.js.map +1 -0
- package/lib/message/message-options.d.ts +5 -0
- package/lib/message/message-options.js +3 -0
- package/lib/message/message-options.js.map +1 -0
- package/lib/message/message-response.d.ts +6 -0
- package/lib/message/message-response.js +19 -0
- package/lib/message/message-response.js.map +1 -0
- package/lib/message/message.d.ts +6 -0
- package/lib/message/message.factory.d.ts +7 -0
- package/lib/message/message.factory.js +15 -0
- package/lib/message/message.factory.js.map +1 -0
- package/lib/message/message.js +3 -0
- package/lib/message/message.js.map +1 -0
- package/lib/message/routing-message.d.ts +9 -0
- package/lib/message/routing-message.js +15 -0
- package/lib/message/routing-message.js.map +1 -0
- package/lib/message/sealed-routing-message.d.ts +9 -0
- package/lib/message/sealed-routing-message.js +15 -0
- package/lib/message/sealed-routing-message.js.map +1 -0
- package/lib/messaging.module.d.ts +10 -0
- package/lib/messaging.module.js +150 -0
- package/lib/messaging.module.js.map +1 -0
- package/lib/middleware/handler-middleware.d.ts +9 -0
- package/lib/middleware/handler-middleware.js +40 -0
- package/lib/middleware/handler-middleware.js.map +1 -0
- package/lib/middleware/middleware.context.d.ts +8 -0
- package/lib/middleware/middleware.context.js +18 -0
- package/lib/middleware/middleware.context.js.map +1 -0
- package/lib/middleware/middleware.d.ts +5 -0
- package/lib/middleware/middleware.js +3 -0
- package/lib/middleware/middleware.js.map +1 -0
- package/lib/middleware/middleware.registry.d.ts +7 -0
- package/lib/middleware/middleware.registry.js +26 -0
- package/lib/middleware/middleware.registry.js.map +1 -0
- package/lib/normalizer/message-normalizer.d.ts +4 -0
- package/lib/normalizer/message-normalizer.js +3 -0
- package/lib/normalizer/message-normalizer.js.map +1 -0
- package/lib/normalizer/normalizer.registry.d.ts +7 -0
- package/lib/normalizer/normalizer.registry.js +26 -0
- package/lib/normalizer/normalizer.registry.js.map +1 -0
- package/lib/normalizer/object-forward-message.normalizer.d.ts +5 -0
- package/lib/normalizer/object-forward-message.normalizer.js +26 -0
- package/lib/normalizer/object-forward-message.normalizer.js.map +1 -0
- package/lib/shared/decorator-extractor.d.ts +3 -0
- package/lib/shared/decorator-extractor.js +11 -0
- package/lib/shared/decorator-extractor.js.map +1 -0
- package/lib/tsconfig.build.tsbuildinfo +1 -0
- package/package.json +100 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ConsumerMessage = void 0;
|
|
4
|
+
class ConsumerMessage {
|
|
5
|
+
constructor(message, routingKey, metadata = []) {
|
|
6
|
+
this.message = message;
|
|
7
|
+
this.routingKey = routingKey;
|
|
8
|
+
this.metadata = metadata;
|
|
9
|
+
this.message = message;
|
|
10
|
+
this.routingKey = routingKey;
|
|
11
|
+
this.metadata = metadata ?? [];
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.ConsumerMessage = ConsumerMessage;
|
|
15
|
+
//# sourceMappingURL=consumer-message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consumer-message.js","sourceRoot":"","sources":["../../src/consumer/consumer-message.ts"],"names":[],"mappings":";;;AAAA,MAAa,eAAe;IAC1B,YACkB,OAAsB,EACtB,UAAkB,EAClB,WAAkB,EAAE;QAFpB,YAAO,GAAP,OAAO,CAAe;QACtB,eAAU,GAAV,UAAU,CAAQ;QAClB,aAAQ,GAAR,QAAQ,CAAY;QAEpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,IAAI,EAAE,CAAC;IACjC,CAAC;CACF;AAVD,0CAUC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DiscoveryService } from '@nestjs/core';
|
|
2
|
+
import { IMessageBus } from '../bus/i-message-bus';
|
|
3
|
+
import { ChannelRegistry } from '../channel/channel.registry';
|
|
4
|
+
import { MessagingLogger } from '../logger/messaging-logger';
|
|
5
|
+
export declare class DistributedConsumer {
|
|
6
|
+
private readonly messageBus;
|
|
7
|
+
private readonly channelRegistry;
|
|
8
|
+
private readonly logger;
|
|
9
|
+
private readonly discoveryService;
|
|
10
|
+
constructor(messageBus: IMessageBus, channelRegistry: ChannelRegistry, logger: MessagingLogger, discoveryService: DiscoveryService);
|
|
11
|
+
run(): Promise<void>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
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
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.DistributedConsumer = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const core_1 = require("@nestjs/core");
|
|
18
|
+
const service_1 = require("../dependency-injection/service");
|
|
19
|
+
const channel_registry_1 = require("../channel/channel.registry");
|
|
20
|
+
const in_memory_channel_1 = require("../channel/in-memory.channel");
|
|
21
|
+
const decorator_1 = require("../dependency-injection/decorator");
|
|
22
|
+
const consumer_message_mediator_1 = require("./consumer-message-mediator");
|
|
23
|
+
const default_message_options_1 = require("../message/default-message-options");
|
|
24
|
+
const consumer_dispatched_message_error_1 = require("./consumer-dispatched-message-error");
|
|
25
|
+
const sealed_routing_message_1 = require("../message/sealed-routing-message");
|
|
26
|
+
let DistributedConsumer = class DistributedConsumer {
|
|
27
|
+
constructor(messageBus, channelRegistry, logger, discoveryService) {
|
|
28
|
+
this.messageBus = messageBus;
|
|
29
|
+
this.channelRegistry = channelRegistry;
|
|
30
|
+
this.logger = logger;
|
|
31
|
+
this.discoveryService = discoveryService;
|
|
32
|
+
}
|
|
33
|
+
async run() {
|
|
34
|
+
for (const channel of this.channelRegistry.getALl()) {
|
|
35
|
+
if (channel instanceof in_memory_channel_1.InMemoryChannel ||
|
|
36
|
+
false === channel.config.enableConsumer) {
|
|
37
|
+
continue;
|
|
38
|
+
}
|
|
39
|
+
const channelConsumer = this.discoveryService
|
|
40
|
+
.getProviders()
|
|
41
|
+
.filter((provider) => {
|
|
42
|
+
if (!provider.metatype) {
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
return Reflect.hasMetadata(decorator_1.MESSAGE_CONSUMER_METADATA, provider.metatype);
|
|
46
|
+
})
|
|
47
|
+
.filter((consumer) => Reflect.getMetadata(decorator_1.MESSAGE_CONSUMER_METADATA, consumer.metatype)
|
|
48
|
+
.name === channel.constructor.name);
|
|
49
|
+
if (channelConsumer.length !== 1) {
|
|
50
|
+
throw new Error(`Consumer for channel ${channel.constructor.name} does not found`);
|
|
51
|
+
}
|
|
52
|
+
const mediator = new consumer_message_mediator_1.ConsumerMessageMediator();
|
|
53
|
+
const consumer = channelConsumer[0].instance;
|
|
54
|
+
await consumer.consume(mediator, channel);
|
|
55
|
+
mediator.listen().subscribe(async (consumerMessage) => {
|
|
56
|
+
try {
|
|
57
|
+
this.logger.debug(`Message handled [${JSON.stringify(consumerMessage.message)}] with routing key: [${consumerMessage.routingKey}]`);
|
|
58
|
+
const middlewares = channel.config
|
|
59
|
+
.middlewares;
|
|
60
|
+
const routingMessage = new sealed_routing_message_1.SealedRoutingMessage(consumerMessage.message, consumerMessage.routingKey).createWithOptions(new default_message_options_1.DefaultMessageOptions(middlewares, channel.config?.avoidErrorsForNotExistedHandlers ?? true, channel.config.normalizer));
|
|
61
|
+
await this.messageBus.dispatch(routingMessage);
|
|
62
|
+
}
|
|
63
|
+
catch (e) {
|
|
64
|
+
await consumer.onError(new consumer_dispatched_message_error_1.ConsumerDispatchedMessageError(consumerMessage, e), channel);
|
|
65
|
+
this.logger.error(`Some error occurred in handler: [${e}]`);
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
this.logger.log(`Consumer for channel [${channel.config.name}] is ready to handle messages`);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
exports.DistributedConsumer = DistributedConsumer;
|
|
73
|
+
exports.DistributedConsumer = DistributedConsumer = __decorate([
|
|
74
|
+
__param(0, (0, common_1.Inject)(service_1.Service.DEFAULT_MESSAGE_BUS)),
|
|
75
|
+
__param(1, (0, common_1.Inject)(service_1.Service.CHANNEL_REGISTRY)),
|
|
76
|
+
__param(2, (0, common_1.Inject)(service_1.Service.LOGGER)),
|
|
77
|
+
__metadata("design:paramtypes", [Object, channel_registry_1.ChannelRegistry, Object, core_1.DiscoveryService])
|
|
78
|
+
], DistributedConsumer);
|
|
79
|
+
//# sourceMappingURL=distributed.consumer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"distributed.consumer.js","sourceRoot":"","sources":["../../src/consumer/distributed.consumer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ConsumerMessageDispatcher } from './consumer-message-dispatcher';
|
|
2
|
+
import { ConsumerDispatchedMessageError } from './consumer-dispatched-message-error';
|
|
3
|
+
export interface IMessagingConsumer<T> {
|
|
4
|
+
consume(dispatcher: ConsumerMessageDispatcher, channel: T): Promise<void>;
|
|
5
|
+
onError(errored: ConsumerDispatchedMessageError, channel: T): Promise<void>;
|
|
6
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i-messaging-consumer.js","sourceRoot":"","sources":["../../src/consumer/i-messaging-consumer.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ChannelConfig } from '../config';
|
|
2
|
+
export declare const MESSAGE_HANDLER_METADATA = "MESSAGE_HANDLER_METADATA";
|
|
3
|
+
export declare const CHANNEL_FACTORY_METADATA = "CHANNEL_FACTORY_METADATA";
|
|
4
|
+
export declare const MESSAGE_BUS_FACTORY_METADATA = "MESSAGE_BUS_FACTORY_METADATA";
|
|
5
|
+
export declare const MESSAGE_CONSUMER_METADATA = "MESSAGE_CONSUMER_METADATA";
|
|
6
|
+
export declare const MESSAGING_MIDDLEWARE_METADATA = "MESSAGING_MIDDLEWARE_METADATA";
|
|
7
|
+
export declare const MESSAGING_NORMALIZER_METADATA = "MESSAGING_NORMALIZER_METADATA";
|
|
8
|
+
export declare const MessageHandler: (routingKey: string) => ClassDecorator;
|
|
9
|
+
export declare const ChannelFactory: (channelConfig: ChannelConfig) => ClassDecorator;
|
|
10
|
+
export declare const MessageBusFactory: (channel: any) => ClassDecorator;
|
|
11
|
+
export declare const MessageConsumer: (channel: any) => ClassDecorator;
|
|
12
|
+
export declare const MessagingMiddleware: (name: string) => ClassDecorator;
|
|
13
|
+
export declare const MessagingNormalizer: (name?: string) => ClassDecorator;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MessagingNormalizer = exports.MessagingMiddleware = exports.MessageConsumer = exports.MessageBusFactory = exports.ChannelFactory = exports.MessageHandler = 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
|
+
exports.MESSAGE_HANDLER_METADATA = 'MESSAGE_HANDLER_METADATA';
|
|
5
|
+
exports.CHANNEL_FACTORY_METADATA = 'CHANNEL_FACTORY_METADATA';
|
|
6
|
+
exports.MESSAGE_BUS_FACTORY_METADATA = 'MESSAGE_BUS_FACTORY_METADATA';
|
|
7
|
+
exports.MESSAGE_CONSUMER_METADATA = 'MESSAGE_CONSUMER_METADATA';
|
|
8
|
+
exports.MESSAGING_MIDDLEWARE_METADATA = 'MESSAGING_MIDDLEWARE_METADATA';
|
|
9
|
+
exports.MESSAGING_NORMALIZER_METADATA = 'MESSAGING_NORMALIZER_METADATA';
|
|
10
|
+
const MessageHandler = (routingKey) => {
|
|
11
|
+
return (target) => {
|
|
12
|
+
Reflect.defineMetadata(exports.MESSAGE_HANDLER_METADATA, routingKey, target);
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
exports.MessageHandler = MessageHandler;
|
|
16
|
+
const ChannelFactory = (channelConfig) => {
|
|
17
|
+
return (target) => {
|
|
18
|
+
Reflect.defineMetadata(exports.CHANNEL_FACTORY_METADATA, channelConfig, target);
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
exports.ChannelFactory = ChannelFactory;
|
|
22
|
+
const MessageBusFactory = (channel) => {
|
|
23
|
+
classValidator(channel, 'Channel');
|
|
24
|
+
return (target) => {
|
|
25
|
+
Reflect.defineMetadata(exports.MESSAGE_BUS_FACTORY_METADATA, channel, target);
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
exports.MessageBusFactory = MessageBusFactory;
|
|
29
|
+
const MessageConsumer = (channel) => {
|
|
30
|
+
classValidator(channel, 'Channel');
|
|
31
|
+
return (target) => {
|
|
32
|
+
Reflect.defineMetadata(exports.MESSAGE_CONSUMER_METADATA, channel, target);
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
exports.MessageConsumer = MessageConsumer;
|
|
36
|
+
const MessagingMiddleware = (name) => {
|
|
37
|
+
return (target) => {
|
|
38
|
+
Reflect.defineMetadata(exports.MESSAGING_MIDDLEWARE_METADATA, name, target);
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
exports.MessagingMiddleware = MessagingMiddleware;
|
|
42
|
+
const MessagingNormalizer = (name) => {
|
|
43
|
+
return (target) => {
|
|
44
|
+
Reflect.defineMetadata(exports.MESSAGING_NORMALIZER_METADATA, name ?? target.name, target);
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
exports.MessagingNormalizer = MessagingNormalizer;
|
|
48
|
+
const classValidator = (value, type) => {
|
|
49
|
+
if (Object.getPrototypeOf(value).name !== type) {
|
|
50
|
+
throw new Error(`Given value must be instance of [${type}]`);
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=decorator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decorator.js","sourceRoot":"","sources":["../../src/dependency-injection/decorator.ts"],"names":[],"mappings":";;;AAEa,QAAA,wBAAwB,GAAG,0BAA0B,CAAC;AACtD,QAAA,wBAAwB,GAAG,0BAA0B,CAAC;AACtD,QAAA,4BAA4B,GAAG,8BAA8B,CAAC;AAC9D,QAAA,yBAAyB,GAAG,2BAA2B,CAAC;AACxD,QAAA,6BAA6B,GAAG,+BAA+B,CAAC;AAChE,QAAA,6BAA6B,GAAG,+BAA+B,CAAC;AAEtE,MAAM,cAAc,GAAG,CAAC,UAAkB,EAAkB,EAAE;IACnE,OAAO,CAAC,MAAgB,EAAE,EAAE;QAC1B,OAAO,CAAC,cAAc,CAAC,gCAAwB,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IACvE,CAAC,CAAC;AACJ,CAAC,CAAC;AAJW,QAAA,cAAc,kBAIzB;AAEK,MAAM,cAAc,GAAG,CAC5B,aAA4B,EACZ,EAAE;IAClB,OAAO,CAAC,MAAgB,EAAE,EAAE;QAC1B,OAAO,CAAC,cAAc,CAAC,gCAAwB,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC,CAAC;AACJ,CAAC,CAAC;AANW,QAAA,cAAc,kBAMzB;AAEK,MAAM,iBAAiB,GAAG,CAAC,OAAY,EAAkB,EAAE;IAChE,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAEnC,OAAO,CAAC,MAAgB,EAAE,EAAE;QAC1B,OAAO,CAAC,cAAc,CAAC,oCAA4B,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACxE,CAAC,CAAC;AACJ,CAAC,CAAC;AANW,QAAA,iBAAiB,qBAM5B;AAEK,MAAM,eAAe,GAAG,CAAC,OAAY,EAAkB,EAAE;IAC9D,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAEnC,OAAO,CAAC,MAAgB,EAAE,EAAE;QAC1B,OAAO,CAAC,cAAc,CAAC,iCAAyB,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACrE,CAAC,CAAC;AACJ,CAAC,CAAC;AANW,QAAA,eAAe,mBAM1B;AAEK,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAkB,EAAE;IAClE,OAAO,CAAC,MAAgB,EAAE,EAAE;QAC1B,OAAO,CAAC,cAAc,CAAC,qCAA6B,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACtE,CAAC,CAAC;AACJ,CAAC,CAAC;AAJW,QAAA,mBAAmB,uBAI9B;AAEK,MAAM,mBAAmB,GAAG,CAAC,IAAa,EAAkB,EAAE;IACnE,OAAO,CAAC,MAAgB,EAAE,EAAE;QAC1B,OAAO,CAAC,cAAc,CAAC,qCAA6B,EAAE,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACrF,CAAC,CAAC;AACJ,CAAC,CAAC;AAJW,QAAA,mBAAmB,uBAI9B;AAEF,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,IAAY,EAAQ,EAAE;IAC3D,IAAI,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,GAAG,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DefaultMessageBus = exports.MessageBus = void 0;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
const service_1 = require("./service");
|
|
6
|
+
const MessageBus = (busName) => (0, common_1.Inject)(busName);
|
|
7
|
+
exports.MessageBus = MessageBus;
|
|
8
|
+
const DefaultMessageBus = () => (0, common_1.Inject)(service_1.Service.DEFAULT_MESSAGE_BUS);
|
|
9
|
+
exports.DefaultMessageBus = DefaultMessageBus;
|
|
10
|
+
//# sourceMappingURL=injectable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"injectable.js","sourceRoot":"","sources":["../../src/dependency-injection/injectable.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AACxC,uCAAoC;AAE7B,MAAM,UAAU,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,eAAM,EAAC,OAAO,CAAC,CAAC;AAA1C,QAAA,UAAU,cAAgC;AAEhD,MAAM,iBAAiB,GAAG,GAAG,EAAE,CAAC,IAAA,eAAM,EAAC,iBAAO,CAAC,mBAAmB,CAAC,CAAC;AAA9D,QAAA,iBAAiB,qBAA6C"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { DiscoveryService, ModuleRef } from '@nestjs/core';
|
|
2
|
+
export declare const registerHandlers: (moduleRef: ModuleRef, discoveryService: DiscoveryService) => void;
|
|
3
|
+
export declare const registerMiddlewares: (moduleRef: ModuleRef, discoveryService: DiscoveryService) => void;
|
|
4
|
+
export declare const registerMessageNormalizers: (moduleRef: ModuleRef, discoveryService: DiscoveryService) => void;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.registerMessageNormalizers = exports.registerMiddlewares = exports.registerHandlers = void 0;
|
|
4
|
+
const service_1 = require("./service");
|
|
5
|
+
const decorator_1 = require("./decorator");
|
|
6
|
+
const registerHandlers = (moduleRef, discoveryService) => {
|
|
7
|
+
const registry = moduleRef.get(service_1.Service.MESSAGE_HANDLERS_REGISTRY);
|
|
8
|
+
const logger = moduleRef.get(service_1.Service.LOGGER);
|
|
9
|
+
const handlerInstances = discoveryService.getProviders().filter((handler) => {
|
|
10
|
+
if (!handler.metatype) {
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
return Reflect.hasMetadata(decorator_1.MESSAGE_HANDLER_METADATA, handler.metatype);
|
|
14
|
+
});
|
|
15
|
+
handlerInstances.forEach((handler) => {
|
|
16
|
+
registry.register(Reflect.getMetadata(decorator_1.MESSAGE_HANDLER_METADATA, handler.metatype), handler.instance);
|
|
17
|
+
logger.log(`Handler [${handler.name}] was registered`);
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
exports.registerHandlers = registerHandlers;
|
|
21
|
+
const registerMiddlewares = (moduleRef, discoveryService) => {
|
|
22
|
+
const registry = moduleRef.get(service_1.Service.MIDDLEWARE_REGISTRY);
|
|
23
|
+
const logger = moduleRef.get(service_1.Service.LOGGER);
|
|
24
|
+
const middlewareInstances = discoveryService
|
|
25
|
+
.getProviders()
|
|
26
|
+
.filter((middleware) => {
|
|
27
|
+
if (!middleware.metatype) {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
return Reflect.hasMetadata(decorator_1.MESSAGING_MIDDLEWARE_METADATA, middleware.metatype);
|
|
31
|
+
});
|
|
32
|
+
middlewareInstances.forEach((middleware) => {
|
|
33
|
+
registry.register(Reflect.getMetadata(decorator_1.MESSAGING_MIDDLEWARE_METADATA, middleware.metatype), middleware.instance);
|
|
34
|
+
if (middleware.name !== 'HandlerMiddleware') {
|
|
35
|
+
logger.log(`Middleware [${middleware.name}] was registered`);
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
};
|
|
39
|
+
exports.registerMiddlewares = registerMiddlewares;
|
|
40
|
+
const registerMessageNormalizers = (moduleRef, discoveryService) => {
|
|
41
|
+
const registry = moduleRef.get(service_1.Service.MESSAGE_NORMALIZERS_REGISTRY);
|
|
42
|
+
const logger = moduleRef.get(service_1.Service.LOGGER);
|
|
43
|
+
const messageNormalizerInstances = discoveryService
|
|
44
|
+
.getProviders()
|
|
45
|
+
.filter((messageNormalizer) => {
|
|
46
|
+
if (!messageNormalizer.metatype) {
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
return Reflect.hasMetadata(decorator_1.MESSAGING_NORMALIZER_METADATA, messageNormalizer.metatype);
|
|
50
|
+
});
|
|
51
|
+
messageNormalizerInstances.forEach((messageNormalizer) => {
|
|
52
|
+
registry.register(Reflect.getMetadata(decorator_1.MESSAGING_NORMALIZER_METADATA, messageNormalizer.metatype), messageNormalizer.instance);
|
|
53
|
+
if (messageNormalizer.name !== 'ObjectForwardMessageNormalizer') {
|
|
54
|
+
logger.log(`MessageNormalizer [${messageNormalizer.name}] was registered`);
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
exports.registerMessageNormalizers = registerMessageNormalizers;
|
|
59
|
+
//# sourceMappingURL=register.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/dependency-injection/register.ts"],"names":[],"mappings":";;;AAGA,uCAAoC;AACpC,2CAGqB;AAId,MAAM,gBAAgB,GAAG,CAC9B,SAAoB,EACpB,gBAAkC,EAClC,EAAE;IACF,MAAM,QAAQ,GAA2B,SAAS,CAAC,GAAG,CACpD,iBAAO,CAAC,yBAAyB,CAClC,CAAC;IACF,MAAM,MAAM,GAAoB,SAAS,CAAC,GAAG,CAAC,iBAAO,CAAC,MAAM,CAAC,CAAC;IAC9D,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;QAC1E,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,OAAO,CAAC,WAAW,CAAC,oCAAwB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,gBAAgB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QACnC,QAAQ,CAAC,QAAQ,CACf,OAAO,CAAC,WAAW,CAAC,oCAAwB,EAAE,OAAO,CAAC,QAAQ,CAAC,EAC/D,OAAO,CAAC,QAAQ,CACjB,CAAC;QACF,MAAM,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,IAAI,kBAAkB,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAvBW,QAAA,gBAAgB,oBAuB3B;AAEK,MAAM,mBAAmB,GAAG,CACjC,SAAoB,EACpB,gBAAkC,EAClC,EAAE;IACF,MAAM,QAAQ,GAAuB,SAAS,CAAC,GAAG,CAChD,iBAAO,CAAC,mBAAmB,CAC5B,CAAC;IACF,MAAM,MAAM,GAAoB,SAAS,CAAC,GAAG,CAAC,iBAAO,CAAC,MAAM,CAAC,CAAC;IAC9D,MAAM,mBAAmB,GAAG,gBAAgB;SACzC,YAAY,EAAE;SACd,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE;QACrB,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,OAAO,CAAC,WAAW,CACxB,yCAA6B,EAC7B,UAAU,CAAC,QAAQ,CACpB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEL,mBAAmB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QACzC,QAAQ,CAAC,QAAQ,CACf,OAAO,CAAC,WAAW,CAAC,yCAA6B,EAAE,UAAU,CAAC,QAAQ,CAAC,EACvE,UAAU,CAAC,QAAQ,CACpB,CAAC;QACF,IAAI,UAAU,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YAC5C,MAAM,CAAC,GAAG,CAAC,eAAe,UAAU,CAAC,IAAI,kBAAkB,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AA9BW,QAAA,mBAAmB,uBA8B9B;AAGK,MAAM,0BAA0B,GAAG,CACxC,SAAoB,EACpB,gBAAkC,EAClC,EAAE;IACF,MAAM,QAAQ,GAAuB,SAAS,CAAC,GAAG,CAChD,iBAAO,CAAC,4BAA4B,CACrC,CAAC;IACF,MAAM,MAAM,GAAoB,SAAS,CAAC,GAAG,CAAC,iBAAO,CAAC,MAAM,CAAC,CAAC;IAC9D,MAAM,0BAA0B,GAAG,gBAAgB;SAChD,YAAY,EAAE;SACd,MAAM,CAAC,CAAC,iBAAiB,EAAE,EAAE;QAC5B,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,OAAO,CAAC,WAAW,CACxB,yCAA6B,EAC7B,iBAAiB,CAAC,QAAQ,CAC3B,CAAC;IACJ,CAAC,CAAC,CAAC;IAEL,0BAA0B,CAAC,OAAO,CAAC,CAAC,iBAAiB,EAAE,EAAE;QACvD,QAAQ,CAAC,QAAQ,CACf,OAAO,CAAC,WAAW,CAAC,yCAA6B,EAAE,iBAAiB,CAAC,QAAQ,CAAC,EAC9E,iBAAiB,CAAC,QAAQ,CAC3B,CAAC;QACF,IAAI,iBAAiB,CAAC,IAAI,KAAK,gCAAgC,EAAE,CAAC;YAChE,MAAM,CAAC,GAAG,CAAC,sBAAsB,iBAAiB,CAAC,IAAI,kBAAkB,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AA9BW,QAAA,0BAA0B,8BA8BrC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare enum Service {
|
|
2
|
+
DEFAULT_MESSAGE_BUS = "messenger_DEFAULT_MESSAGE_BUS",
|
|
3
|
+
MIDDLEWARE_REGISTRY = "messenger_MIDDLEWARE_REGISTRY",
|
|
4
|
+
MESSAGE_HANDLERS = "messenger_MESSAGE_HANDLERS",
|
|
5
|
+
MESSAGE_HANDLERS_REGISTRY = "messenger_MESSAGE_HANDLERS_REGISTRY",
|
|
6
|
+
MESSAGE_NORMALIZERS_REGISTRY = "messenger_MESSAGE_NORMALIZERS_REGISTRY",
|
|
7
|
+
CHANNEL_REGISTRY = "messenger_CHANNEL_REGISTRY",
|
|
8
|
+
CHANNELS = "messenger_CHANNELS",
|
|
9
|
+
LOGGER = "messenger_LOGGER"
|
|
10
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Service = void 0;
|
|
4
|
+
var Service;
|
|
5
|
+
(function (Service) {
|
|
6
|
+
Service["DEFAULT_MESSAGE_BUS"] = "messenger_DEFAULT_MESSAGE_BUS";
|
|
7
|
+
Service["MIDDLEWARE_REGISTRY"] = "messenger_MIDDLEWARE_REGISTRY";
|
|
8
|
+
Service["MESSAGE_HANDLERS"] = "messenger_MESSAGE_HANDLERS";
|
|
9
|
+
Service["MESSAGE_HANDLERS_REGISTRY"] = "messenger_MESSAGE_HANDLERS_REGISTRY";
|
|
10
|
+
Service["MESSAGE_NORMALIZERS_REGISTRY"] = "messenger_MESSAGE_NORMALIZERS_REGISTRY";
|
|
11
|
+
Service["CHANNEL_REGISTRY"] = "messenger_CHANNEL_REGISTRY";
|
|
12
|
+
Service["CHANNELS"] = "messenger_CHANNELS";
|
|
13
|
+
Service["LOGGER"] = "messenger_LOGGER";
|
|
14
|
+
})(Service || (exports.Service = Service = {}));
|
|
15
|
+
//# sourceMappingURL=service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/dependency-injection/service.ts"],"names":[],"mappings":";;;AAAA,IAAY,OASX;AATD,WAAY,OAAO;IACjB,gEAAqD,CAAA;IACrD,gEAAqD,CAAA;IACrD,0DAA+C,CAAA;IAC/C,4EAAiE,CAAA;IACjE,kFAAuE,CAAA;IACvE,0DAA+C,CAAA;IAC/C,0CAA+B,CAAA;IAC/B,sCAA2B,CAAA;AAC7B,CAAC,EATW,OAAO,uBAAP,OAAO,QASlB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HandlerForMessageNotFoundException = void 0;
|
|
4
|
+
const messaging_exception_1 = require("./messaging.exception");
|
|
5
|
+
class HandlerForMessageNotFoundException extends messaging_exception_1.MessagingException {
|
|
6
|
+
constructor(routingKey) {
|
|
7
|
+
super(`There is no handlers for this routing key: [${routingKey}]`);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.HandlerForMessageNotFoundException = HandlerForMessageNotFoundException;
|
|
11
|
+
//# sourceMappingURL=handler-for-message-not-found.exception.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handler-for-message-not-found.exception.js","sourceRoot":"","sources":["../../src/exception/handler-for-message-not-found.exception.ts"],"names":[],"mappings":";;;AAAA,+DAA2D;AAE3D,MAAa,kCAAmC,SAAQ,wCAAkB;IACxE,YAAY,UAAkB;QAC5B,KAAK,CAAC,+CAA+C,UAAU,GAAG,CAAC,CAAC;IACtE,CAAC;CACF;AAJD,gFAIC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InvalidChannelConfigException = void 0;
|
|
4
|
+
const messaging_exception_1 = require("./messaging.exception");
|
|
5
|
+
class InvalidChannelConfigException extends messaging_exception_1.MessagingException {
|
|
6
|
+
constructor(expectedChannelName) {
|
|
7
|
+
super(`Invalid ChannelConfig. Expected ChannelConfig is [${expectedChannelName}]`);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.InvalidChannelConfigException = InvalidChannelConfigException;
|
|
11
|
+
//# sourceMappingURL=invalid-channel-config.exception.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invalid-channel-config.exception.js","sourceRoot":"","sources":["../../src/exception/invalid-channel-config.exception.ts"],"names":[],"mappings":";;;AAAA,+DAA2D;AAE3D,MAAa,6BAA8B,SAAQ,wCAAkB;IACnE,YAAY,mBAA2B;QACrC,KAAK,CAAC,qDAAqD,mBAAmB,GAAG,CAAC,CAAC;IACrF,CAAC;CACF;AAJD,sEAIC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InvalidChannelException = void 0;
|
|
4
|
+
const messaging_exception_1 = require("./messaging.exception");
|
|
5
|
+
class InvalidChannelException extends messaging_exception_1.MessagingException {
|
|
6
|
+
constructor(expectedChannelConfigName) {
|
|
7
|
+
super(`Invalid Channel. Expected Channel is [${expectedChannelConfigName}]`);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.InvalidChannelException = InvalidChannelException;
|
|
11
|
+
//# sourceMappingURL=invalid-channel.exception.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invalid-channel.exception.js","sourceRoot":"","sources":["../../src/exception/invalid-channel.exception.ts"],"names":[],"mappings":";;;AAAA,+DAA2D;AAE3D,MAAa,uBAAwB,SAAQ,wCAAkB;IAC7D,YAAY,yBAAiC;QAC3C,KAAK,CAAC,yCAAyC,yBAAyB,GAAG,CAAC,CAAC;IAC/E,CAAC;CACF;AAJD,0DAIC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MessagingException = void 0;
|
|
4
|
+
class MessagingException extends Error {
|
|
5
|
+
constructor(message) {
|
|
6
|
+
super(message);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
exports.MessagingException = MessagingException;
|
|
10
|
+
//# sourceMappingURL=messaging.exception.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messaging.exception.js","sourceRoot":"","sources":["../../src/exception/messaging.exception.ts"],"names":[],"mappings":";;;AAAA,MAAa,kBAAmB,SAAQ,KAAK;IAC3C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;CACF;AAJD,gDAIC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UnsupportedChannelFactoryException = void 0;
|
|
4
|
+
const messaging_exception_1 = require("./messaging.exception");
|
|
5
|
+
class UnsupportedChannelFactoryException extends messaging_exception_1.MessagingException {
|
|
6
|
+
constructor(channelConfig) {
|
|
7
|
+
super(`Unsupported ChannelFactory for channel [${channelConfig}]`);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.UnsupportedChannelFactoryException = UnsupportedChannelFactoryException;
|
|
11
|
+
//# sourceMappingURL=unsupported-channel-factory.exception.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unsupported-channel-factory.exception.js","sourceRoot":"","sources":["../../src/exception/unsupported-channel-factory.exception.ts"],"names":[],"mappings":";;;AAAA,+DAA2D;AAE3D,MAAa,kCAAmC,SAAQ,wCAAkB;IACxE,YAAY,aAAqB;QAC/B,KAAK,CAAC,2CAA2C,aAAa,GAAG,CAAC,CAAC;IACrE,CAAC;CACF;AAJD,gFAIC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HandlerResponse = void 0;
|
|
4
|
+
class HandlerResponse {
|
|
5
|
+
constructor(response) {
|
|
6
|
+
this.response = response;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
exports.HandlerResponse = HandlerResponse;
|
|
10
|
+
//# sourceMappingURL=handler-response.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handler-response.js","sourceRoot":"","sources":["../../src/handler/handler-response.ts"],"names":[],"mappings":";;;AAAA,MAAa,eAAe;IAC1B,YAA4B,QAAe;QAAf,aAAQ,GAAR,QAAQ,CAAO;IAC3C,CAAC;CACF;AAHD,0CAGC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i-message.handler.js","sourceRoot":"","sources":["../../src/handler/i-message.handler.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MessageHandlerRegistry = void 0;
|
|
4
|
+
const handler_for_message_not_found_exception_1 = require("../exception/handler-for-message-not-found.exception");
|
|
5
|
+
class MessageHandlerRegistry {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.registry = new Map();
|
|
8
|
+
}
|
|
9
|
+
register(name, handler) {
|
|
10
|
+
if (this.registry.has(name)) {
|
|
11
|
+
const bucket = this.registry.get(name);
|
|
12
|
+
if (bucket.includes(handler)) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
this.registry.get(name).push(handler);
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
this.registry.set(name, [handler]);
|
|
19
|
+
}
|
|
20
|
+
getByRoutingKey(routingKey) {
|
|
21
|
+
if (!this.registry.has(routingKey)) {
|
|
22
|
+
throw new handler_for_message_not_found_exception_1.HandlerForMessageNotFoundException(routingKey);
|
|
23
|
+
}
|
|
24
|
+
return this.registry.get(routingKey);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.MessageHandlerRegistry = MessageHandlerRegistry;
|
|
28
|
+
//# sourceMappingURL=message-handler.registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-handler.registry.js","sourceRoot":"","sources":["../../src/handler/message-handler.registry.ts"],"names":[],"mappings":";;;AACA,kHAA0G;AAE1G,MAAa,sBAAsB;IAAnC;QACU,aAAQ,GAAwC,IAAI,GAAG,EAAE,CAAC;IAyBpE,CAAC;IAvBC,QAAQ,CAAC,IAAY,EAAE,OAA6B;QAClD,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAgC,CAAC;YAEtE,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7B,OAAO;YACT,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEtC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,eAAe,CAAC,UAAkB;QAChC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,4EAAkC,CAAC,UAAU,CAAC,CAAC;QAC3D,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;CACF;AA1BD,wDA0BC"}
|
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export * from './messaging.module';
|
|
2
|
+
export * from './config';
|
|
3
|
+
export * from './consumer/i-messaging-consumer';
|
|
4
|
+
export * from './consumer/consumer-message';
|
|
5
|
+
export * from './consumer/consumer-message-dispatcher';
|
|
6
|
+
export * from './consumer/consumer-dispatched-message-error';
|
|
7
|
+
export * from './consumer/consumer-message-mediator';
|
|
8
|
+
export * from './dependency-injection/decorator';
|
|
9
|
+
export * from './dependency-injection/injectable';
|
|
10
|
+
export * from './handler/i-message.handler';
|
|
11
|
+
export * from './bus/i-message-bus.factory';
|
|
12
|
+
export * from './bus/i-message-bus';
|
|
13
|
+
export * from './bus/in-memory-message.bus';
|
|
14
|
+
export * from './message/default-message-options';
|
|
15
|
+
export * from './message/routing-message';
|
|
16
|
+
export * from './message/message-options';
|
|
17
|
+
export * from './message/message';
|
|
18
|
+
export * from './message/message-response';
|
|
19
|
+
export * from './channel/factory/composite-channel.factory';
|
|
20
|
+
export * from './channel/factory/in-memory-channel.factory';
|
|
21
|
+
export * from './channel/i-channel-factory';
|
|
22
|
+
export * from './channel/channel';
|
|
23
|
+
export * from './middleware/middleware';
|
|
24
|
+
export * from './exception/invalid-channel.exception';
|
|
25
|
+
export * from './exception/invalid-channel-config.exception';
|
|
26
|
+
export * from './middleware/middleware.context';
|
|
27
|
+
export * from './normalizer/message-normalizer';
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./messaging.module"), exports);
|
|
18
|
+
__exportStar(require("./config"), exports);
|
|
19
|
+
__exportStar(require("./consumer/i-messaging-consumer"), exports);
|
|
20
|
+
__exportStar(require("./consumer/consumer-message"), exports);
|
|
21
|
+
__exportStar(require("./consumer/consumer-message-dispatcher"), exports);
|
|
22
|
+
__exportStar(require("./consumer/consumer-dispatched-message-error"), exports);
|
|
23
|
+
__exportStar(require("./consumer/consumer-message-mediator"), exports);
|
|
24
|
+
__exportStar(require("./dependency-injection/decorator"), exports);
|
|
25
|
+
__exportStar(require("./dependency-injection/injectable"), exports);
|
|
26
|
+
__exportStar(require("./handler/i-message.handler"), exports);
|
|
27
|
+
__exportStar(require("./bus/i-message-bus.factory"), exports);
|
|
28
|
+
__exportStar(require("./bus/i-message-bus"), exports);
|
|
29
|
+
__exportStar(require("./bus/in-memory-message.bus"), exports);
|
|
30
|
+
__exportStar(require("./message/default-message-options"), exports);
|
|
31
|
+
__exportStar(require("./message/routing-message"), exports);
|
|
32
|
+
__exportStar(require("./message/message-options"), exports);
|
|
33
|
+
__exportStar(require("./message/message"), exports);
|
|
34
|
+
__exportStar(require("./message/message-response"), exports);
|
|
35
|
+
__exportStar(require("./channel/factory/composite-channel.factory"), exports);
|
|
36
|
+
__exportStar(require("./channel/factory/in-memory-channel.factory"), exports);
|
|
37
|
+
__exportStar(require("./channel/i-channel-factory"), exports);
|
|
38
|
+
__exportStar(require("./channel/channel"), exports);
|
|
39
|
+
__exportStar(require("./middleware/middleware"), exports);
|
|
40
|
+
__exportStar(require("./exception/invalid-channel.exception"), exports);
|
|
41
|
+
__exportStar(require("./exception/invalid-channel-config.exception"), exports);
|
|
42
|
+
__exportStar(require("./middleware/middleware.context"), exports);
|
|
43
|
+
__exportStar(require("./normalizer/message-normalizer"), exports);
|
|
44
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,2CAAyB;AACzB,kEAAgD;AAChD,8DAA4C;AAC5C,yEAAuD;AACvD,+EAA6D;AAC7D,uEAAqD;AACrD,mEAAiD;AACjD,oEAAkD;AAClD,8DAA4C;AAC5C,8DAA4C;AAC5C,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"}
|