UNPKG

@nestjstools/messaging

Version:

Simplifies asynchronous and synchronous message handling with support for buses, handlers, channels, and consumers. Build scalable, decoupled applications with ease and reliability.

44 lines 2.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ExchangeType = exports.InMemoryChannelConfig = exports.AmqpChannelConfig = exports.ChannelConfig = void 0; const object_forward_message_normalizer_1 = require("./normalizer/object-forward-message.normalizer"); class ChannelConfig { constructor(name, avoidErrorsForNotExistedHandlers, middlewares, enableConsumer, normalizer) { this.name = name; this.avoidErrorsForNotExistedHandlers = avoidErrorsForNotExistedHandlers ?? false; this.middlewares = middlewares ?? []; this.enableConsumer = enableConsumer ?? true; this.normalizer = normalizer ?? object_forward_message_normalizer_1.ObjectForwardMessageNormalizer; } } exports.ChannelConfig = ChannelConfig; /** * @deprecated Will be removed in version 3.x - use RmqChannelConfig from @nestjstools/messaging-rabbitmq-extension version 2.11+ */ class AmqpChannelConfig extends ChannelConfig { constructor({ name, connectionUri, exchangeName, exchangeType, queue, enableConsumer, bindingKeys, autoCreate, deadLetterQueueFeature, avoidErrorsForNotExistedHandlers, middlewares, normalizer, }) { super(name, avoidErrorsForNotExistedHandlers, middlewares, enableConsumer, normalizer); this.connectionUri = connectionUri; this.exchangeName = exchangeName; this.exchangeType = exchangeType; this.queue = queue; this.bindingKeys = bindingKeys; this.autoCreate = autoCreate ?? true; this.deadLetterQueueFeature = deadLetterQueueFeature ?? false; } } exports.AmqpChannelConfig = AmqpChannelConfig; class InMemoryChannelConfig extends ChannelConfig { constructor({ name, avoidErrorsForNotExistedHandlers, middlewares, enableConsumer, normalizer, }) { super(name, avoidErrorsForNotExistedHandlers, middlewares, enableConsumer, normalizer); } } exports.InMemoryChannelConfig = InMemoryChannelConfig; var ExchangeType; (function (ExchangeType) { ExchangeType["TOPIC"] = "topic"; ExchangeType["FANOUT"] = "fanout"; ExchangeType["DIRECT"] = "direct"; })(ExchangeType || (exports.ExchangeType = ExchangeType = {})); //# sourceMappingURL=config.js.map