rocketmq-client-nodejs-bate 1.0.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +186 -0
- package/dist/client/BaseClient.d.ts +95 -0
- package/dist/client/BaseClient.js +324 -0
- package/dist/client/ClientId.d.ts +24 -0
- package/dist/client/ClientId.js +33 -0
- package/dist/client/Logger.d.ts +25 -0
- package/dist/client/Logger.js +33 -0
- package/dist/client/RpcClient.d.ts +48 -0
- package/dist/client/RpcClient.js +219 -0
- package/dist/client/RpcClientManager.d.ts +42 -0
- package/dist/client/RpcClientManager.js +144 -0
- package/dist/client/SessionCredentials.d.ts +21 -0
- package/dist/client/SessionCredentials.js +19 -0
- package/dist/client/Settings.d.ts +31 -0
- package/dist/client/Settings.js +40 -0
- package/dist/client/TelemetrySession.d.ts +27 -0
- package/dist/client/TelemetrySession.js +110 -0
- package/dist/client/UserAgent.d.ts +25 -0
- package/dist/client/UserAgent.js +47 -0
- package/dist/client/index.d.ts +26 -0
- package/dist/client/index.js +43 -0
- package/dist/consumer/Assignment.d.ts +23 -0
- package/dist/consumer/Assignment.js +40 -0
- package/dist/consumer/Assignments.d.ts +24 -0
- package/dist/consumer/Assignments.js +47 -0
- package/dist/consumer/ConsumeResult.d.ts +20 -0
- package/dist/consumer/ConsumeResult.js +25 -0
- package/dist/consumer/ConsumeService.d.ts +28 -0
- package/dist/consumer/ConsumeService.js +49 -0
- package/dist/consumer/ConsumeTask.d.ts +24 -0
- package/dist/consumer/ConsumeTask.js +40 -0
- package/dist/consumer/Consumer.d.ts +38 -0
- package/dist/consumer/Consumer.js +111 -0
- package/dist/consumer/FifoConsumeService.d.ts +25 -0
- package/dist/consumer/FifoConsumeService.js +123 -0
- package/dist/consumer/FilterExpression.d.ts +25 -0
- package/dist/consumer/FilterExpression.js +40 -0
- package/dist/consumer/MessageListener.d.ts +21 -0
- package/dist/consumer/MessageListener.js +19 -0
- package/dist/consumer/ProcessQueue.d.ts +39 -0
- package/dist/consumer/ProcessQueue.js +286 -0
- package/dist/consumer/PushConsumer.d.ts +68 -0
- package/dist/consumer/PushConsumer.js +377 -0
- package/dist/consumer/PushSubscriptionSettings.d.ts +31 -0
- package/dist/consumer/PushSubscriptionSettings.js +97 -0
- package/dist/consumer/SimpleConsumer.d.ts +50 -0
- package/dist/consumer/SimpleConsumer.js +122 -0
- package/dist/consumer/SimpleSubscriptionSettings.d.ts +28 -0
- package/dist/consumer/SimpleSubscriptionSettings.js +57 -0
- package/dist/consumer/StandardConsumeService.d.ts +24 -0
- package/dist/consumer/StandardConsumeService.js +42 -0
- package/dist/consumer/SubscriptionLoadBalancer.d.ts +23 -0
- package/dist/consumer/SubscriptionLoadBalancer.js +46 -0
- package/dist/consumer/index.d.ts +32 -0
- package/dist/consumer/index.js +49 -0
- package/dist/exception/BadRequestException.d.ts +20 -0
- package/dist/exception/BadRequestException.js +28 -0
- package/dist/exception/ClientException.d.ts +20 -0
- package/dist/exception/ClientException.js +31 -0
- package/dist/exception/ForbiddenException.d.ts +20 -0
- package/dist/exception/ForbiddenException.js +28 -0
- package/dist/exception/InternalErrorException.d.ts +20 -0
- package/dist/exception/InternalErrorException.js +28 -0
- package/dist/exception/NotFoundException.d.ts +20 -0
- package/dist/exception/NotFoundException.js +28 -0
- package/dist/exception/PayloadTooLargeException.d.ts +20 -0
- package/dist/exception/PayloadTooLargeException.js +28 -0
- package/dist/exception/PaymentRequiredException.d.ts +20 -0
- package/dist/exception/PaymentRequiredException.js +28 -0
- package/dist/exception/ProxyTimeoutException.d.ts +20 -0
- package/dist/exception/ProxyTimeoutException.js +28 -0
- package/dist/exception/RequestHeaderFieldsTooLargeException.d.ts +20 -0
- package/dist/exception/RequestHeaderFieldsTooLargeException.js +28 -0
- package/dist/exception/StatusChecker.d.ts +20 -0
- package/dist/exception/StatusChecker.js +98 -0
- package/dist/exception/TooManyRequestsException.d.ts +20 -0
- package/dist/exception/TooManyRequestsException.js +28 -0
- package/dist/exception/UnauthorizedException.d.ts +20 -0
- package/dist/exception/UnauthorizedException.js +28 -0
- package/dist/exception/UnsupportedException.d.ts +20 -0
- package/dist/exception/UnsupportedException.js +28 -0
- package/dist/exception/index.d.ts +29 -0
- package/dist/exception/index.js +46 -0
- package/dist/index.d.ts +22 -0
- package/dist/index.js +39 -0
- package/dist/message/Message.d.ts +38 -0
- package/dist/message/Message.js +57 -0
- package/dist/message/MessageId.d.ts +59 -0
- package/dist/message/MessageId.js +123 -0
- package/dist/message/MessageView.d.ts +38 -0
- package/dist/message/MessageView.js +90 -0
- package/dist/message/PublishingMessage.d.ts +30 -0
- package/dist/message/PublishingMessage.js +100 -0
- package/dist/message/index.d.ts +20 -0
- package/dist/message/index.js +37 -0
- package/dist/producer/Producer.d.ts +55 -0
- package/dist/producer/Producer.js +318 -0
- package/dist/producer/PublishingLoadBalancer.d.ts +24 -0
- package/dist/producer/PublishingLoadBalancer.js +82 -0
- package/dist/producer/PublishingSettings.d.ts +28 -0
- package/dist/producer/PublishingSettings.js +70 -0
- package/dist/producer/RecallReceipt.d.ts +25 -0
- package/dist/producer/RecallReceipt.js +34 -0
- package/dist/producer/SendReceipt.d.ts +29 -0
- package/dist/producer/SendReceipt.js +60 -0
- package/dist/producer/Transaction.d.ts +28 -0
- package/dist/producer/Transaction.js +70 -0
- package/dist/producer/TransactionChecker.d.ts +21 -0
- package/dist/producer/TransactionChecker.js +19 -0
- package/dist/producer/index.d.ts +22 -0
- package/dist/producer/index.js +40 -0
- package/dist/retry/ExponentialBackoffRetryPolicy.d.ts +27 -0
- package/dist/retry/ExponentialBackoffRetryPolicy.js +64 -0
- package/dist/retry/RetryPolicy.d.ts +46 -0
- package/dist/retry/RetryPolicy.js +19 -0
- package/dist/retry/index.d.ts +18 -0
- package/dist/retry/index.js +35 -0
- package/dist/route/Broker.d.ts +25 -0
- package/dist/route/Broker.js +40 -0
- package/dist/route/Endpoints.d.ts +30 -0
- package/dist/route/Endpoints.js +71 -0
- package/dist/route/MessageQueue.d.ts +27 -0
- package/dist/route/MessageQueue.js +47 -0
- package/dist/route/TopicRouteData.d.ts +24 -0
- package/dist/route/TopicRouteData.js +37 -0
- package/dist/route/index.d.ts +20 -0
- package/dist/route/index.js +37 -0
- package/dist/util/index.d.ts +35 -0
- package/dist/util/index.js +88 -0
- package/package.json +62 -0
- package/proto/apache/rocketmq/v2/admin.proto +43 -0
- package/proto/apache/rocketmq/v2/admin_grpc_pb.d.ts +41 -0
- package/proto/apache/rocketmq/v2/admin_grpc_pb.js +60 -0
- package/proto/apache/rocketmq/v2/admin_pb.d.ts +56 -0
- package/proto/apache/rocketmq/v2/admin_pb.js +340 -0
- package/proto/apache/rocketmq/v2/definition.proto +570 -0
- package/proto/apache/rocketmq/v2/definition_grpc_pb.js +1 -0
- package/proto/apache/rocketmq/v2/definition_pb.d.ts +885 -0
- package/proto/apache/rocketmq/v2/definition_pb.js +6141 -0
- package/proto/apache/rocketmq/v2/service.proto +443 -0
- package/proto/apache/rocketmq/v2/service_grpc_pb.d.ts +294 -0
- package/proto/apache/rocketmq/v2/service_grpc_pb.js +637 -0
- package/proto/apache/rocketmq/v2/service_pb.d.ts +1249 -0
- package/proto/apache/rocketmq/v2/service_pb.js +9723 -0
- package/src/client/BaseClient.ts +404 -0
- package/src/client/ClientId.ts +31 -0
- package/src/client/Logger.ts +36 -0
- package/src/client/RpcClient.ts +258 -0
- package/src/client/RpcClientManager.ts +180 -0
- package/src/client/SessionCredentials.ts +22 -0
- package/src/client/Settings.ts +46 -0
- package/src/client/TelemetrySession.ts +130 -0
- package/src/client/UserAgent.ts +45 -0
- package/src/client/index.ts +27 -0
- package/src/consumer/Assignment.ts +39 -0
- package/src/consumer/Assignments.ts +46 -0
- package/src/consumer/ConsumeResult.ts +21 -0
- package/src/consumer/ConsumeService.ts +54 -0
- package/src/consumer/ConsumeTask.ts +40 -0
- package/src/consumer/Consumer.ts +129 -0
- package/src/consumer/FifoConsumeService.ts +136 -0
- package/src/consumer/FilterExpression.ts +42 -0
- package/src/consumer/MessageListener.ts +23 -0
- package/src/consumer/ProcessQueue.ts +326 -0
- package/src/consumer/PushConsumer.ts +473 -0
- package/src/consumer/PushSubscriptionSettings.ts +123 -0
- package/src/consumer/SimpleConsumer.ts +153 -0
- package/src/consumer/SimpleSubscriptionSettings.ts +64 -0
- package/src/consumer/StandardConsumeService.ts +44 -0
- package/src/consumer/SubscriptionLoadBalancer.ts +47 -0
- package/src/consumer/index.ts +33 -0
- package/src/exception/BadRequestException.ts +25 -0
- package/src/exception/ClientException.ts +29 -0
- package/src/exception/ForbiddenException.ts +25 -0
- package/src/exception/InternalErrorException.ts +25 -0
- package/src/exception/NotFoundException.ts +25 -0
- package/src/exception/PayloadTooLargeException.ts +25 -0
- package/src/exception/PaymentRequiredException.ts +25 -0
- package/src/exception/ProxyTimeoutException.ts +25 -0
- package/src/exception/RequestHeaderFieldsTooLargeException.ts +25 -0
- package/src/exception/StatusChecker.ts +94 -0
- package/src/exception/TooManyRequestsException.ts +25 -0
- package/src/exception/UnauthorizedException.ts +25 -0
- package/src/exception/UnsupportedException.ts +25 -0
- package/src/exception/index.ts +30 -0
- package/src/index.ts +23 -0
- package/src/message/Message.ts +67 -0
- package/src/message/MessageId.ts +123 -0
- package/src/message/MessageView.ts +94 -0
- package/src/message/PublishingMessage.ts +104 -0
- package/src/message/index.ts +21 -0
- package/src/producer/Producer.ts +388 -0
- package/src/producer/PublishingLoadBalancer.ts +85 -0
- package/src/producer/PublishingSettings.ts +78 -0
- package/src/producer/RecallReceipt.ts +32 -0
- package/src/producer/SendReceipt.ts +63 -0
- package/src/producer/Transaction.ts +86 -0
- package/src/producer/TransactionChecker.ts +23 -0
- package/src/producer/index.ts +24 -0
- package/src/retry/ExponentialBackoffRetryPolicy.ts +76 -0
- package/src/retry/RetryPolicy.ts +51 -0
- package/src/retry/index.ts +19 -0
- package/src/route/Broker.ts +39 -0
- package/src/route/Endpoints.ts +70 -0
- package/src/route/MessageQueue.ts +49 -0
- package/src/route/TopicRouteData.ts +38 -0
- package/src/route/index.ts +21 -0
- package/src/util/index.ts +83 -0
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
4
|
+
* contributor license agreements. See the NOTICE file distributed with
|
|
5
|
+
* this work for additional information regarding copyright ownership.
|
|
6
|
+
* The ASF licenses this file to You under the Apache License, Version 2.0
|
|
7
|
+
* (the "License"); you may not use this file except in compliance with
|
|
8
|
+
* the License. You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*/
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.RpcClient = void 0;
|
|
20
|
+
const grpc_js_1 = require("@grpc/grpc-js");
|
|
21
|
+
const service_grpc_pb_1 = require("../../proto/apache/rocketmq/v2/service_grpc_pb");
|
|
22
|
+
class RpcClient {
|
|
23
|
+
#client;
|
|
24
|
+
#activityTime = Date.now();
|
|
25
|
+
constructor(endpoints, sslEnabled) {
|
|
26
|
+
const address = endpoints.getGrpcTarget();
|
|
27
|
+
const grpcCredentials = sslEnabled ? grpc_js_1.ChannelCredentials.createSsl() : grpc_js_1.ChannelCredentials.createInsecure();
|
|
28
|
+
this.#client = new service_grpc_pb_1.MessagingServiceClient(address, grpcCredentials);
|
|
29
|
+
}
|
|
30
|
+
#getAndActivityRpcClient() {
|
|
31
|
+
this.#activityTime = Date.now();
|
|
32
|
+
return this.#client;
|
|
33
|
+
}
|
|
34
|
+
#getDeadline(duration) {
|
|
35
|
+
return Date.now() + duration;
|
|
36
|
+
}
|
|
37
|
+
idleDuration() {
|
|
38
|
+
return Date.now() - this.#activityTime;
|
|
39
|
+
}
|
|
40
|
+
close() {
|
|
41
|
+
this.#client.close();
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Query topic route
|
|
45
|
+
*
|
|
46
|
+
* @param request query route request.
|
|
47
|
+
* @param metadata gRPC request header metadata.
|
|
48
|
+
* @param duration request max duration in milliseconds.
|
|
49
|
+
*/
|
|
50
|
+
async queryRoute(request, metadata, duration) {
|
|
51
|
+
const client = this.#getAndActivityRpcClient();
|
|
52
|
+
const deadline = this.#getDeadline(duration);
|
|
53
|
+
return new Promise((resolve, reject) => {
|
|
54
|
+
client.queryRoute(request, metadata, { deadline }, (e, res) => {
|
|
55
|
+
if (e)
|
|
56
|
+
return reject(e);
|
|
57
|
+
resolve(res);
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
async heartbeat(request, metadata, duration) {
|
|
62
|
+
const client = this.#getAndActivityRpcClient();
|
|
63
|
+
const deadline = this.#getDeadline(duration);
|
|
64
|
+
return new Promise((resolve, reject) => {
|
|
65
|
+
client.heartbeat(request, metadata, { deadline }, (e, res) => {
|
|
66
|
+
if (e)
|
|
67
|
+
return reject(e);
|
|
68
|
+
resolve(res);
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
async sendMessage(request, metadata, duration) {
|
|
73
|
+
const client = this.#getAndActivityRpcClient();
|
|
74
|
+
const deadline = this.#getDeadline(duration);
|
|
75
|
+
return new Promise((resolve, reject) => {
|
|
76
|
+
client.sendMessage(request, metadata, { deadline }, (e, res) => {
|
|
77
|
+
if (e)
|
|
78
|
+
return reject(e);
|
|
79
|
+
resolve(res);
|
|
80
|
+
});
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
async queryAssignment(request, metadata, duration) {
|
|
84
|
+
const client = this.#getAndActivityRpcClient();
|
|
85
|
+
const deadline = this.#getDeadline(duration);
|
|
86
|
+
return new Promise((resolve, reject) => {
|
|
87
|
+
client.queryAssignment(request, metadata, { deadline }, (e, res) => {
|
|
88
|
+
if (e)
|
|
89
|
+
return reject(e);
|
|
90
|
+
resolve(res);
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
async receiveMessage(request, metadata, duration) {
|
|
95
|
+
const client = this.#getAndActivityRpcClient();
|
|
96
|
+
const deadline = this.#getDeadline(duration);
|
|
97
|
+
const readable = client.receiveMessage(request, metadata, { deadline });
|
|
98
|
+
const responses = [];
|
|
99
|
+
for await (const res of readable) {
|
|
100
|
+
responses.push(res);
|
|
101
|
+
}
|
|
102
|
+
return responses;
|
|
103
|
+
}
|
|
104
|
+
async ackMessage(request, metadata, duration) {
|
|
105
|
+
const client = this.#getAndActivityRpcClient();
|
|
106
|
+
const deadline = this.#getDeadline(duration);
|
|
107
|
+
return new Promise((resolve, reject) => {
|
|
108
|
+
client.ackMessage(request, metadata, { deadline }, (e, res) => {
|
|
109
|
+
if (e)
|
|
110
|
+
return reject(e);
|
|
111
|
+
resolve(res);
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
async forwardMessageToDeadLetterQueue(request, metadata, duration) {
|
|
116
|
+
const client = this.#getAndActivityRpcClient();
|
|
117
|
+
const deadline = this.#getDeadline(duration);
|
|
118
|
+
return new Promise((resolve, reject) => {
|
|
119
|
+
client.forwardMessageToDeadLetterQueue(request, metadata, { deadline }, (e, res) => {
|
|
120
|
+
if (e)
|
|
121
|
+
return reject(e);
|
|
122
|
+
resolve(res);
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
async pullMessage(request, metadata, duration) {
|
|
127
|
+
const client = this.#getAndActivityRpcClient();
|
|
128
|
+
const deadline = this.#getDeadline(duration);
|
|
129
|
+
const readable = client.pullMessage(request, metadata, { deadline });
|
|
130
|
+
const responses = [];
|
|
131
|
+
for await (const res of readable) {
|
|
132
|
+
responses.push(res);
|
|
133
|
+
}
|
|
134
|
+
return responses;
|
|
135
|
+
}
|
|
136
|
+
async updateOffset(request, metadata, duration) {
|
|
137
|
+
const client = this.#getAndActivityRpcClient();
|
|
138
|
+
const deadline = this.#getDeadline(duration);
|
|
139
|
+
return new Promise((resolve, reject) => {
|
|
140
|
+
client.updateOffset(request, metadata, { deadline }, (e, res) => {
|
|
141
|
+
if (e)
|
|
142
|
+
return reject(e);
|
|
143
|
+
resolve(res);
|
|
144
|
+
});
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
async getOffset(request, metadata, duration) {
|
|
148
|
+
const client = this.#getAndActivityRpcClient();
|
|
149
|
+
const deadline = this.#getDeadline(duration);
|
|
150
|
+
return new Promise((resolve, reject) => {
|
|
151
|
+
client.getOffset(request, metadata, { deadline }, (e, res) => {
|
|
152
|
+
if (e)
|
|
153
|
+
return reject(e);
|
|
154
|
+
resolve(res);
|
|
155
|
+
});
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
async queryOffset(request, metadata, duration) {
|
|
159
|
+
const client = this.#getAndActivityRpcClient();
|
|
160
|
+
const deadline = this.#getDeadline(duration);
|
|
161
|
+
return new Promise((resolve, reject) => {
|
|
162
|
+
client.queryOffset(request, metadata, { deadline }, (e, res) => {
|
|
163
|
+
if (e)
|
|
164
|
+
return reject(e);
|
|
165
|
+
resolve(res);
|
|
166
|
+
});
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
async endTransaction(request, metadata, duration) {
|
|
170
|
+
const client = this.#getAndActivityRpcClient();
|
|
171
|
+
const deadline = this.#getDeadline(duration);
|
|
172
|
+
return new Promise((resolve, reject) => {
|
|
173
|
+
client.endTransaction(request, metadata, { deadline }, (e, res) => {
|
|
174
|
+
if (e)
|
|
175
|
+
return reject(e);
|
|
176
|
+
resolve(res);
|
|
177
|
+
});
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
telemetry(metadata) {
|
|
181
|
+
const client = this.#getAndActivityRpcClient();
|
|
182
|
+
return client.telemetry(metadata);
|
|
183
|
+
}
|
|
184
|
+
async notifyClientTermination(request, metadata, duration) {
|
|
185
|
+
const client = this.#getAndActivityRpcClient();
|
|
186
|
+
const deadline = this.#getDeadline(duration);
|
|
187
|
+
return new Promise((resolve, reject) => {
|
|
188
|
+
client.notifyClientTermination(request, metadata, { deadline }, (e, res) => {
|
|
189
|
+
if (e)
|
|
190
|
+
return reject(e);
|
|
191
|
+
resolve(res);
|
|
192
|
+
});
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
async changeInvisibleDuration(request, metadata, duration) {
|
|
196
|
+
const client = this.#getAndActivityRpcClient();
|
|
197
|
+
const deadline = this.#getDeadline(duration);
|
|
198
|
+
return new Promise((resolve, reject) => {
|
|
199
|
+
client.changeInvisibleDuration(request, metadata, { deadline }, (e, res) => {
|
|
200
|
+
if (e)
|
|
201
|
+
return reject(e);
|
|
202
|
+
resolve(res);
|
|
203
|
+
});
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
async recallMessage(request, metadata, duration) {
|
|
207
|
+
const client = this.#getAndActivityRpcClient();
|
|
208
|
+
const deadline = this.#getDeadline(duration);
|
|
209
|
+
return new Promise((resolve, reject) => {
|
|
210
|
+
client.recallMessage(request, metadata, { deadline }, (e, res) => {
|
|
211
|
+
if (e)
|
|
212
|
+
return reject(e);
|
|
213
|
+
resolve(res);
|
|
214
|
+
});
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
exports.RpcClient = RpcClient;
|
|
219
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUnBjQ2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9ScGNDbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRzs7O0FBRUgsMkNBQTZEO0FBQzdELG9GQUF3RjtBQW1DeEYsTUFBYSxTQUFTO0lBQ3BCLE9BQU8sQ0FBeUI7SUFDaEMsYUFBYSxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUUzQixZQUFZLFNBQW9CLEVBQUUsVUFBbUI7UUFDbkQsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzFDLE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsNEJBQWtCLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLDRCQUFrQixDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzFHLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSx3Q0FBc0IsQ0FBQyxPQUFPLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVELHdCQUF3QjtRQUN0QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNoQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVELFlBQVksQ0FBQyxRQUFnQjtRQUMzQixPQUFPLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxRQUFRLENBQUM7SUFDL0IsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUEwQixFQUFFLFFBQWtCLEVBQUUsUUFBZ0I7UUFDL0UsTUFB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
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
3
|
+
* contributor license agreements. See the NOTICE file distributed with
|
|
4
|
+
* this work for additional information regarding copyright ownership.
|
|
5
|
+
* The ASF licenses this file to You under the Apache License, Version 2.0
|
|
6
|
+
* (the "License"); you may not use this file except in compliance with
|
|
7
|
+
* the License. You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import { Metadata } from '@grpc/grpc-js';
|
|
18
|
+
import { AckMessageRequest, ChangeInvisibleDurationRequest, EndTransactionRequest, ForwardMessageToDeadLetterQueueRequest, GetOffsetRequest, HeartbeatRequest, NotifyClientTerminationRequest, PullMessageRequest, QueryAssignmentRequest, QueryOffsetRequest, QueryRouteRequest, ReceiveMessageRequest, SendMessageRequest, UpdateOffsetRequest, RecallMessageRequest } from '../../proto/apache/rocketmq/v2/service_pb';
|
|
19
|
+
import { Endpoints } from '../route';
|
|
20
|
+
import { ILogger } from './Logger';
|
|
21
|
+
import type { BaseClient } from './BaseClient';
|
|
22
|
+
export declare class RpcClientManager {
|
|
23
|
+
#private;
|
|
24
|
+
constructor(baseClient: BaseClient, logger: ILogger);
|
|
25
|
+
close(): void;
|
|
26
|
+
queryRoute(endpoints: Endpoints, request: QueryRouteRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").QueryRouteResponse>;
|
|
27
|
+
heartbeat(endpoints: Endpoints, request: HeartbeatRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").HeartbeatResponse>;
|
|
28
|
+
sendMessage(endpoints: Endpoints, request: SendMessageRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").SendMessageResponse>;
|
|
29
|
+
queryAssignment(endpoints: Endpoints, request: QueryAssignmentRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").QueryAssignmentResponse>;
|
|
30
|
+
receiveMessage(endpoints: Endpoints, request: ReceiveMessageRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").ReceiveMessageResponse[]>;
|
|
31
|
+
ackMessage(endpoints: Endpoints, request: AckMessageRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").AckMessageResponse>;
|
|
32
|
+
forwardMessageToDeadLetterQueue(endpoints: Endpoints, request: ForwardMessageToDeadLetterQueueRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").ForwardMessageToDeadLetterQueueResponse>;
|
|
33
|
+
pullMessage(endpoints: Endpoints, request: PullMessageRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").PullMessageResponse[]>;
|
|
34
|
+
updateOffset(endpoints: Endpoints, request: UpdateOffsetRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").UpdateOffsetResponse>;
|
|
35
|
+
getOffset(endpoints: Endpoints, request: GetOffsetRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").GetOffsetResponse>;
|
|
36
|
+
queryOffset(endpoints: Endpoints, request: QueryOffsetRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").QueryOffsetResponse>;
|
|
37
|
+
endTransaction(endpoints: Endpoints, request: EndTransactionRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").EndTransactionResponse>;
|
|
38
|
+
telemetry(endpoints: Endpoints, metadata: Metadata): import("@grpc/grpc-js").ClientDuplexStream<import("../../proto/apache/rocketmq/v2/service_pb").TelemetryCommand, import("../../proto/apache/rocketmq/v2/service_pb").TelemetryCommand>;
|
|
39
|
+
changeInvisibleDuration(endpoints: Endpoints, request: ChangeInvisibleDurationRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").ChangeInvisibleDurationResponse>;
|
|
40
|
+
notifyClientTermination(endpoints: Endpoints, request: NotifyClientTerminationRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").NotifyClientTerminationResponse>;
|
|
41
|
+
recallMessage(endpoints: Endpoints, request: RecallMessageRequest, duration: number): Promise<import("../../proto/apache/rocketmq/v2/service_pb").RecallMessageResponse>;
|
|
42
|
+
}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
4
|
+
* contributor license agreements. See the NOTICE file distributed with
|
|
5
|
+
* this work for additional information regarding copyright ownership.
|
|
6
|
+
* The ASF licenses this file to You under the Apache License, Version 2.0
|
|
7
|
+
* (the "License"); you may not use this file except in compliance with
|
|
8
|
+
* the License. You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*/
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.RpcClientManager = void 0;
|
|
20
|
+
const RpcClient_1 = require("./RpcClient");
|
|
21
|
+
const RPC_CLIENT_MAX_IDLE_DURATION = 30 * 60000; // 30 minutes
|
|
22
|
+
const RPC_CLIENT_IDLE_CHECK_PERIOD = 60000;
|
|
23
|
+
class RpcClientManager {
|
|
24
|
+
#rpcClients = new Map();
|
|
25
|
+
#baseClient;
|
|
26
|
+
#logger;
|
|
27
|
+
#clearIdleRpcClientsTimer;
|
|
28
|
+
constructor(baseClient, logger) {
|
|
29
|
+
this.#baseClient = baseClient;
|
|
30
|
+
this.#logger = logger;
|
|
31
|
+
this.#startUp();
|
|
32
|
+
}
|
|
33
|
+
#startUp() {
|
|
34
|
+
this.#clearIdleRpcClientsTimer = setInterval(() => {
|
|
35
|
+
this.#clearIdleRpcClients();
|
|
36
|
+
}, RPC_CLIENT_IDLE_CHECK_PERIOD);
|
|
37
|
+
}
|
|
38
|
+
#clearIdleRpcClients() {
|
|
39
|
+
for (const [endpoints, rpcClient] of this.#rpcClients.entries()) {
|
|
40
|
+
const idleDuration = rpcClient.idleDuration();
|
|
41
|
+
if (idleDuration > RPC_CLIENT_MAX_IDLE_DURATION) {
|
|
42
|
+
rpcClient.close();
|
|
43
|
+
this.#rpcClients.delete(endpoints);
|
|
44
|
+
this.#logger.info('[RpcClientManager] Rpc client has been idle for a long time, endpoints=%s, idleDuration=%s, clientId=%s', endpoints, idleDuration, RPC_CLIENT_MAX_IDLE_DURATION, this.#baseClient.clientId);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
#getRpcClient(endpoints) {
|
|
49
|
+
let rpcClient = this.#rpcClients.get(endpoints);
|
|
50
|
+
if (!rpcClient) {
|
|
51
|
+
rpcClient = new RpcClient_1.RpcClient(endpoints, this.#baseClient.sslEnabled);
|
|
52
|
+
this.#rpcClients.set(endpoints, rpcClient);
|
|
53
|
+
}
|
|
54
|
+
return rpcClient;
|
|
55
|
+
}
|
|
56
|
+
close() {
|
|
57
|
+
for (const [endpoints, rpcClient] of this.#rpcClients.entries()) {
|
|
58
|
+
rpcClient.close();
|
|
59
|
+
this.#rpcClients.delete(endpoints);
|
|
60
|
+
}
|
|
61
|
+
clearInterval(this.#clearIdleRpcClientsTimer);
|
|
62
|
+
}
|
|
63
|
+
async queryRoute(endpoints, request, duration) {
|
|
64
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
65
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
66
|
+
return await rpcClient.queryRoute(request, metadata, duration);
|
|
67
|
+
}
|
|
68
|
+
async heartbeat(endpoints, request, duration) {
|
|
69
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
70
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
71
|
+
return await rpcClient.heartbeat(request, metadata, duration);
|
|
72
|
+
}
|
|
73
|
+
async sendMessage(endpoints, request, duration) {
|
|
74
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
75
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
76
|
+
return await rpcClient.sendMessage(request, metadata, duration);
|
|
77
|
+
}
|
|
78
|
+
async queryAssignment(endpoints, request, duration) {
|
|
79
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
80
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
81
|
+
return await rpcClient.queryAssignment(request, metadata, duration);
|
|
82
|
+
}
|
|
83
|
+
async receiveMessage(endpoints, request, duration) {
|
|
84
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
85
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
86
|
+
return await rpcClient.receiveMessage(request, metadata, duration);
|
|
87
|
+
}
|
|
88
|
+
async ackMessage(endpoints, request, duration) {
|
|
89
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
90
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
91
|
+
return await rpcClient.ackMessage(request, metadata, duration);
|
|
92
|
+
}
|
|
93
|
+
async forwardMessageToDeadLetterQueue(endpoints, request, duration) {
|
|
94
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
95
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
96
|
+
return await rpcClient.forwardMessageToDeadLetterQueue(request, metadata, duration);
|
|
97
|
+
}
|
|
98
|
+
async pullMessage(endpoints, request, duration) {
|
|
99
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
100
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
101
|
+
return await rpcClient.pullMessage(request, metadata, duration);
|
|
102
|
+
}
|
|
103
|
+
async updateOffset(endpoints, request, duration) {
|
|
104
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
105
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
106
|
+
return await rpcClient.updateOffset(request, metadata, duration);
|
|
107
|
+
}
|
|
108
|
+
async getOffset(endpoints, request, duration) {
|
|
109
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
110
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
111
|
+
return await rpcClient.getOffset(request, metadata, duration);
|
|
112
|
+
}
|
|
113
|
+
async queryOffset(endpoints, request, duration) {
|
|
114
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
115
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
116
|
+
return await rpcClient.queryOffset(request, metadata, duration);
|
|
117
|
+
}
|
|
118
|
+
async endTransaction(endpoints, request, duration) {
|
|
119
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
120
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
121
|
+
return await rpcClient.endTransaction(request, metadata, duration);
|
|
122
|
+
}
|
|
123
|
+
telemetry(endpoints, metadata) {
|
|
124
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
125
|
+
return rpcClient.telemetry(metadata);
|
|
126
|
+
}
|
|
127
|
+
async changeInvisibleDuration(endpoints, request, duration) {
|
|
128
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
129
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
130
|
+
return await rpcClient.changeInvisibleDuration(request, metadata, duration);
|
|
131
|
+
}
|
|
132
|
+
async notifyClientTermination(endpoints, request, duration) {
|
|
133
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
134
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
135
|
+
return await rpcClient.notifyClientTermination(request, metadata, duration);
|
|
136
|
+
}
|
|
137
|
+
async recallMessage(endpoints, request, duration) {
|
|
138
|
+
const rpcClient = this.#getRpcClient(endpoints);
|
|
139
|
+
const metadata = this.#baseClient.getRequestMetadata();
|
|
140
|
+
return await rpcClient.recallMessage(request, metadata, duration);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
exports.RpcClientManager = RpcClientManager;
|
|
144
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUnBjQ2xpZW50TWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGllbnQvUnBjQ2xpZW50TWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHOzs7QUFnQkgsMkNBQXdDO0FBR3hDLE1BQU0sNEJBQTRCLEdBQUcsRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFDLGFBQWE7QUFDOUQsTUFBTSw0QkFBNEIsR0FBRyxLQUFLLENBQUM7QUFFM0MsTUFBYSxnQkFBZ0I7SUFDM0IsV0FBVyxHQUFHLElBQUksR0FBRyxFQUF3QixDQUFDO0lBQzlDLFdBQVcsQ0FBYTtJQUN4QixPQUFPLENBQVU7SUFDakIseUJBQXlCLENBQWlCO0lBRTFDLFlBQVksVUFBc0IsRUFBRSxNQUFlO1FBQ2pELElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxXQUFXLENBQUMsR0FBRyxFQUFFO1lBQ2hELElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzlCLENBQUMsRUFBRSw0QkFBNEIsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsS0FBSyxNQUFNLENBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBRSxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztZQUNsRSxNQUFNLFlBQVksR0FBRyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDOUMsSUFBSSxZQUFZLEdBQUcsNEJBQTRCLEVBQUUsQ0FBQztnQkFDaEQsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNsQixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMs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
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
3
|
+
* contributor license agreements. See the NOTICE file distributed with
|
|
4
|
+
* this work for additional information regarding copyright ownership.
|
|
5
|
+
* The ASF licenses this file to You under the Apache License, Version 2.0
|
|
6
|
+
* (the "License"); you may not use this file except in compliance with
|
|
7
|
+
* the License. You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
export interface SessionCredentials {
|
|
18
|
+
accessKey: string;
|
|
19
|
+
accessSecret: string;
|
|
20
|
+
securityToken?: string;
|
|
21
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
4
|
+
* contributor license agreements. See the NOTICE file distributed with
|
|
5
|
+
* this work for additional information regarding copyright ownership.
|
|
6
|
+
* The ASF licenses this file to You under the Apache License, Version 2.0
|
|
7
|
+
* (the "License"); you may not use this file except in compliance with
|
|
8
|
+
* the License. You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*/
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2Vzc2lvbkNyZWRlbnRpYWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9TZXNzaW9uQ3JlZGVudGlhbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRyJ9
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
3
|
+
* contributor license agreements. See the NOTICE file distributed with
|
|
4
|
+
* this work for additional information regarding copyright ownership.
|
|
5
|
+
* The ASF licenses this file to You under the Apache License, Version 2.0
|
|
6
|
+
* (the "License"); you may not use this file except in compliance with
|
|
7
|
+
* the License. You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import { ClientType, Settings as SettingsPB } from '../../proto/apache/rocketmq/v2/definition_pb';
|
|
18
|
+
import { Endpoints } from '../route/Endpoints';
|
|
19
|
+
import { RetryPolicy } from '../retry';
|
|
20
|
+
export declare abstract class Settings {
|
|
21
|
+
protected readonly namespace: string;
|
|
22
|
+
protected readonly clientId: string;
|
|
23
|
+
protected readonly clientType: ClientType;
|
|
24
|
+
protected readonly accessPoint: Endpoints;
|
|
25
|
+
protected retryPolicy?: RetryPolicy;
|
|
26
|
+
protected readonly requestTimeout: number;
|
|
27
|
+
constructor(namespace: string, clientId: string, clientType: ClientType, accessPoint: Endpoints, requestTimeout: number, retryPolicy?: RetryPolicy);
|
|
28
|
+
abstract toProtobuf(): SettingsPB;
|
|
29
|
+
abstract sync(settings: SettingsPB): void;
|
|
30
|
+
getRetryPolicy(): RetryPolicy | undefined;
|
|
31
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
4
|
+
* contributor license agreements. See the NOTICE file distributed with
|
|
5
|
+
* this work for additional information regarding copyright ownership.
|
|
6
|
+
* The ASF licenses this file to You under the Apache License, Version 2.0
|
|
7
|
+
* (the "License"); you may not use this file except in compliance with
|
|
8
|
+
* the License. You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*/
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.Settings = void 0;
|
|
20
|
+
class Settings {
|
|
21
|
+
namespace;
|
|
22
|
+
clientId;
|
|
23
|
+
clientType;
|
|
24
|
+
accessPoint;
|
|
25
|
+
retryPolicy;
|
|
26
|
+
requestTimeout;
|
|
27
|
+
constructor(namespace, clientId, clientType, accessPoint, requestTimeout, retryPolicy) {
|
|
28
|
+
this.clientId = clientId;
|
|
29
|
+
this.namespace = namespace;
|
|
30
|
+
this.clientType = clientType;
|
|
31
|
+
this.accessPoint = accessPoint;
|
|
32
|
+
this.retryPolicy = retryPolicy;
|
|
33
|
+
this.requestTimeout = requestTimeout;
|
|
34
|
+
}
|
|
35
|
+
getRetryPolicy() {
|
|
36
|
+
return this.retryPolicy;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.Settings = Settings;
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2V0dGluZ3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpZW50L1NldHRpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7OztBQU1ILE1BQXNCLFFBQVE7SUFDVCxTQUFTLENBQVM7SUFDbEIsUUFBUSxDQUFTO0lBQ2pCLFVBQVUsQ0FBYTtJQUN2QixXQUFXLENBQVk7SUFDaEMsV0FBVyxDQUFlO0lBQ2pCLGNBQWMsQ0FBUztJQUUxQyxZQUFZLFNBQWlCLEVBQUUsUUFBZ0IsRUFBRSxVQUFzQixFQUFFLFdBQXNCLEVBQUUsY0FBc0IsRUFBRSxXQUF5QjtRQUNoSixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUMvQixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUMvQixJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQztJQUN2QyxDQUFDO0lBTUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0NBQ0Y7QUF4QkQsNEJBd0JDIn0=
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
3
|
+
* contributor license agreements. See the NOTICE file distributed with
|
|
4
|
+
* this work for additional information regarding copyright ownership.
|
|
5
|
+
* The ASF licenses this file to You under the Apache License, Version 2.0
|
|
6
|
+
* (the "License"); you may not use this file except in compliance with
|
|
7
|
+
* the License. You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import { TelemetryCommand } from '../../proto/apache/rocketmq/v2/service_pb';
|
|
18
|
+
import { Endpoints } from '../route';
|
|
19
|
+
import type { BaseClient } from './BaseClient';
|
|
20
|
+
import { ILogger } from './Logger';
|
|
21
|
+
export declare class TelemetrySession {
|
|
22
|
+
#private;
|
|
23
|
+
constructor(baseClient: BaseClient, endpoints: Endpoints, logger: ILogger);
|
|
24
|
+
release(): void;
|
|
25
|
+
write(command: TelemetryCommand): void;
|
|
26
|
+
syncSettings(): void;
|
|
27
|
+
}
|