redis-smq
Version:
A high-performance, reliable, and scalable message queue for Node.js.
43 lines • 2.41 kB
TypeScript
import { ICallback, ILogger, Runnable } from 'redis-smq-common';
import { TConsumerConsumeMessageEvent } from '../../../event-bus/index.js';
import { IRedisSMQParsedConfig } from '../../../config-manager/index.js';
import { MessageEnvelope } from '../../../message/message-envelope.js';
import { IQueueParsedParams } from '../../../queue-manager/index.js';
import { EMessageUnacknowledgementCause } from './types/index.js';
import { MessageUnacknowledger } from './message-unacknowledger.js';
import { TConsumerMessageHandler } from '../types/index.js';
import { IConsumerContext } from '../../types/consumer-context.js';
import { MessageAcknowledger } from './message-acknowledger.js';
import { IConsumerParsedOptions } from '../../types/index.js';
export declare class ConsumeMessage extends Runnable<TConsumerConsumeMessageEvent> {
protected readonly consumerId: string;
protected readonly config: IRedisSMQParsedConfig;
protected readonly logger: ILogger;
protected readonly keyQueueProperties: string;
protected readonly keyQueueProcessing: string;
protected readonly keyQueueAcknowledged: string;
protected readonly queue: IQueueParsedParams;
protected readonly messageHandler: TConsumerMessageHandler;
protected readonly messageHandlerId: string;
protected readonly consumerOptions: IConsumerParsedOptions;
private redisClient;
private consumeMessageWorker;
private messageUnacknowledger;
private messageAcknowledger;
constructor(consumerContext: IConsumerContext, queue: IQueueParsedParams, messageHandlerId: string, messageHandler: TConsumerMessageHandler);
protected initializeMessageAcknowledger(): MessageAcknowledger;
protected initializeMessageUnacknowledger(): MessageUnacknowledger;
handleReceivedMessage(message: MessageEnvelope): void;
protected acknowledgeMessage(message: MessageEnvelope): void;
protected unacknowledgeMessage(message: MessageEnvelope, cause: EMessageUnacknowledgementCause): void;
private onMessageAcknowledged;
private handleUnacknowledgementResult;
private consumeMessage;
private invokeMessageHandler;
private getWorker;
private validateHandler;
protected goingUp(): ((cb: ICallback<void>) => void)[];
protected goingDown(): ((cb: ICallback<void>) => void)[];
protected handleError(err: unknown): void;
}
//# sourceMappingURL=consume-message.d.ts.map