UNPKG

@message-queue-toolkit/amqp

Version:
32 lines 1.31 kB
import { AbstractAmqpPublisher } from "./AbstractAmqpPublisher.js"; import { ensureAmqpQueue } from "./utils/amqpQueueUtils.js"; const NO_PARAMS = { publishOptions: {}, }; export class AbstractAmqpQueuePublisher extends AbstractAmqpPublisher { queueName; constructor(dependencies, options) { super(dependencies, options); if (!options.locatorConfig?.queueName && !options.creationConfig?.queueName) { throw new Error('Either locatorConfig or creationConfig must provide queueName'); } this.queueName = options.locatorConfig ? options.locatorConfig.queueName : // biome-ignore lint/style/noNonNullAssertion: <explanation> options.creationConfig.queueName; } publishInternal(message, options) { this.channel.sendToQueue(this.queueName, message, options.publishOptions); } publish(message, options = NO_PARAMS) { super.publish(message, options); } resolveTopicOrQueue() { return this.queueName; } createMissingEntities() { // biome-ignore lint/style/noNonNullAssertion: <explanation> return ensureAmqpQueue(this.connection, this.channel, this.creationConfig, this.locatorConfig); } } //# sourceMappingURL=AbstractAmqpQueuePublisher.js.map