rocketmq-client-nodejs
Version:
RocketMQ Node.js Client
132 lines (131 loc) • 4.89 kB
TypeScript
/**
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { Message as MessagePB } from '../../proto/apache/rocketmq/v2/definition_pb';
import { Endpoints, MessageQueue } from '../route';
export declare class MessageView {
readonly messageId: string;
readonly topic: string;
readonly body: Buffer;
readonly corrupted: boolean;
readonly transportDeliveryTimestamp?: Date;
readonly tag?: string;
readonly messageGroup?: string;
readonly deliveryTimestamp?: Date;
readonly keys: string[];
readonly bornHost: string;
readonly bornTimestamp?: Date;
deliveryAttempt?: number;
readonly endpoints: Endpoints;
readonly receiptHandle: string;
readonly offset?: number;
readonly decodeTimestamp: Date;
readonly properties: Map<string, string>;
readonly liteTopic?: string;
readonly priority?: number;
constructor(message: MessagePB, messageQueue?: MessageQueue, transportDeliveryTimestamp?: Date);
/**
* Get the lite topic, which makes sense only when the topic type is LITE.
*
* @return lite topic, which is optional, undefined means lite topic is not specified.
*/
getLiteTopic(): string | undefined;
/**
* Get the priority of the message, which makes sense only when topic type is priority.
*
* @return message priority, which is optional, undefined means priority is not specified.
*/
getPriority(): number | undefined;
/**
* Get the unique id of the message.
*
* @return unique id.
*/
getMessageId(): string;
/**
* Get the topic of the message, which is the first classifier for the message.
*
* @return topic of the message.
*/
getTopic(): string;
/**
* Get the deep copy of the message body, which means any modification of the return value does not
* affect the built-in message body.
*
* @return the deep copy of message body.
*/
getBody(): Buffer;
/**
* Get the deep copy of message properties, which makes the modifies of return value does
* not affect the message itself.
*
* @return the deep copy of message properties.
*/
getProperties(): Map<string, string>;
/**
* Get the tag of the message, which is the second classifier besides the topic.
*
* @return the tag of message, which is optional, undefined means tag does not exist.
*/
getTag(): string | undefined;
/**
* Get the key collection of the message, which means any modification of the return value does not affect the
* built-in message key collection.
*
* @return copy of the key collection of the message, empty array means message key is not specified.
*/
getKeys(): string[];
/**
* Get the message group, which makes sense only when the topic type is FIFO(First In, First Out).
*
* @return message group, which is optional, undefined means message group is not specified.
*/
getMessageGroup(): string | undefined;
/**
* Get the expected delivery timestamp, which makes sense only when the topic type is delay.
*
* @return message expected delivery timestamp, which is optional, undefined means delivery timestamp is not specified.
*/
getDeliveryTimestamp(): Date | undefined;
/**
* Get the born host of the message.
*
* @return born host of the message.
*/
getBornHost(): string;
/**
* Get the born timestamp of the message.
*
* <p>Born time means the timestamp that the message is prepared to send rather than the timestamp the
* Message was built.
*
* @return born timestamp of the message.
*/
getBornTimestamp(): Date | undefined;
/**
* Get the delivery attempt for the message.
*
* @return delivery attempt.
*/
getDeliveryAttempt(): number | undefined;
/**
* Increment the delivery attempt and return the new value.
* Used by FIFO retry logic to track redelivery attempts.
*
* @return the incremented delivery attempt
*/
incrementAndGetDeliveryAttempt(): number;
}