@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
JavaScript
;
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