rocketmq-client-nodejs
Version:
RocketMQ Node.js Client
57 lines • 4.15 kB
JavaScript
;
/**
* 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.
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.SendReceipt = void 0;
const definition_pb_1 = require("../../proto/apache/rocketmq/v2/definition_pb");
const exception_1 = require("../exception");
class SendReceipt {
messageId;
transactionId;
offset;
#messageQueue;
constructor(messageId, transactionId, messageQueue, offset) {
this.messageId = messageId;
this.transactionId = transactionId;
this.offset = offset;
this.#messageQueue = messageQueue;
}
get messageQueue() {
return this.#messageQueue;
}
get endpoints() {
return this.#messageQueue.broker.endpoints;
}
static processResponseInvocation(mq, response) {
const responseObj = response.toObject();
// Filter abnormal status.
const abnormalStatus = responseObj.entriesList.map(e => e.status).find(s => s?.code !== definition_pb_1.Code.OK);
const status = abnormalStatus ?? responseObj.status;
exception_1.StatusChecker.check(status);
const sendReceipts = [];
for (const entry of responseObj.entriesList) {
const messageId = entry.messageId;
const transactionId = entry.transactionId;
const offset = entry.offset;
const sendReceipt = new SendReceipt(messageId, transactionId, mq, offset);
sendReceipts.push(sendReceipt);
}
return sendReceipts;
}
}
exports.SendReceipt = SendReceipt;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VuZFJlY2VpcHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvZHVjZXIvU2VuZFJlY2VpcHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRzs7O0FBRUgsZ0ZBQW9FO0FBR3BFLDRDQUE2QztBQUU3QyxNQUFhLFdBQVc7SUFDYixTQUFTLENBQVM7SUFDbEIsYUFBYSxDQUFTO0lBQ3RCLE1BQU0sQ0FBUztJQUNmLGFBQWEsQ0FBZTtJQUVyQyxZQUFZLFNBQWlCLEVBQUUsYUFBcUIsRUFBRSxZQUEwQixFQUFFLE1BQWM7UUFDOUYsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDbkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLGFBQWEsR0FBRyxZQUFZLENBQUM7SUFDcEMsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7SUFDN0MsQ0FBQztJQUVELE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxFQUFnQixFQUFFLFFBQTZCO1FBQzlFLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN4QywwQkFBMEI7UUFDMUIsTUFBTSxjQUFjLEdBQUcsV0FBVyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksS0FBSyxvQkFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2pHLE1BQU0sTUFBTSxHQUFHLGNBQWMsSUFBSSxXQUFXLENBQUMsTUFBTSxDQUFDO1FBQ3BELHlCQUFhLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVCLE1BQU0sWUFBWSxHQUFrQixFQUFFLENBQUM7UUFDdkMsS0FBSyxNQUFNLEtBQUssSUFBSSxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDNUMsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztZQUNsQyxNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDO1lBQzFDLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDNUIsTUFBTSxXQUFXLEdBQUcsSUFBSSxXQUFXLENBQUMsU0FBUyxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDMUUsWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNqQyxDQUFDO1FBQ0QsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztDQUNGO0FBckNELGtDQXFDQyJ9