UNPKG

@nestjstools/microservices-rabbitmq

Version:

Transport layer for NestJS Microservices with more configurations for RabbitMQ

30 lines 1.14 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.AmqpMessageBus = void 0; const microservices_1 = require("@nestjs/microservices"); const const_1 = require("../../const"); class AmqpMessageBus { exchange; connection; routingKey; messagePublisher; constructor(exchange, connection, routingKey) { this.exchange = exchange; this.connection = connection; this.routingKey = routingKey; this.messagePublisher = this.connection.createPublisher(); } dispatch(message) { const rabbitMqMessage = new microservices_1.RmqRecordBuilder(message.message) .setOptions({ headers: { [const_1.RoutingKeyHeader]: message.routingKey, ...message.headers, }, }) .build(); this.messagePublisher.send({ exchange: message.exchange ?? this.exchange, routingKey: this.routingKey ?? message.routingKey, headers: rabbitMqMessage.options?.headers }, rabbitMqMessage.data); } } exports.AmqpMessageBus = AmqpMessageBus; //# sourceMappingURL=amqp-message-bus.js.map