UNPKG

@message-in-the-middle/rabbitmq

Version:

RabbitMQ integration for message-in-the-middle - Production-ready AMQP messaging with zero boilerplate

32 lines 1.37 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.RabbitMQMetadataMiddleware = void 0; class RabbitMQMetadataMiddleware { name = 'RabbitMQMetadataMiddleware'; async process(context, next) { const rabbitMsg = context.raw; if (rabbitMsg && rabbitMsg.fields && rabbitMsg.properties) { const metadata = { exchange: rabbitMsg.fields.exchange, routingKey: rabbitMsg.fields.routingKey, redelivered: rabbitMsg.fields.redelivered, deliveryTag: rabbitMsg.fields.deliveryTag, messageId: rabbitMsg.properties.messageId, correlationId: rabbitMsg.properties.correlationId, timestamp: rabbitMsg.properties.timestamp, headers: rabbitMsg.properties.headers, consumerTag: rabbitMsg.fields.consumerTag, }; context.metadata.rabbitmq = metadata; if (metadata.correlationId) { context.metadata.correlationId = metadata.correlationId; } if (metadata.messageId) { context.metadata.messageId = metadata.messageId; } } await next(); } } exports.RabbitMQMetadataMiddleware = RabbitMQMetadataMiddleware; //# sourceMappingURL=rabbitmq-metadata.middleware.js.map