rocketmq_remoting/code/
request_code.rs

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
18#[derive(Debug, PartialEq, Clone, Copy, Hash)]
19pub enum RequestCode {
20    SendMessage = 10,
21    PullMessage = 11,
22    QueryMessage = 12,
23    QueryBrokerOffset = 13, // Not used in Java
24    QueryConsumerOffset = 14,
25    UpdateConsumerOffset = 15,
26    UpdateAndCreateTopic = 17,
27    UpdateAndCreateTopicList = 18,
28    GetAllTopicConfig = 21,
29    GetTopicConfigList = 22, // Not used in Java
30    GetTopicNameList = 23,   // Not used in Java
31    UpdateBrokerConfig = 25,
32    GetBrokerConfig = 26,
33    TriggerDeleteFiles = 27, // Not used in Java
34    GetBrokerRuntimeInfo = 28,
35    SearchOffsetByTimestamp = 29,
36    GetMaxOffset = 30,
37    GetMinOffset = 31,
38    GetEarliestMsgStoreTime = 32,
39    ViewMessageById = 33,
40    HeartBeat = 34,
41    UnregisterClient = 35,
42    ConsumerSendMsgBack = 36,
43    EndTransaction = 37,
44    GetConsumerListByGroup = 38,
45    CheckTransactionState = 39,
46    NotifyConsumerIdsChanged = 40,
47    LockBatchMq = 41,
48    UnlockBatchMq = 42,
49    GetAllConsumerOffset = 43,
50    GetAllDelayOffset = 45,
51    CheckClientConfig = 46,
52    GetClientConfig = 47, // Not used in Java
53    UpdateAndCreateAclConfig = 50,
54    DeleteAclConfig = 51,
55    GetBrokerClusterAclInfo = 52,
56    UpdateGlobalWhiteAddrsConfig = 53,
57    GetBrokerClusterAclConfig = 54, // Deprecated
58    GetTimerCheckPoint = 60,
59    GetTimerMetrics = 61,
60
61    PopMessage = 200050,
62    AckMessage = 200051,
63    BatchAckMessage = 200151,
64    PeekMessage = 200052,
65    ChangeMessageInvisibleTime = 200053,
66    Notification = 200054,
67    PollingInfo = 200055,
68
69    PutKvConfig = 100,
70    GetKvConfig = 101,
71    DeleteKvConfig = 102,
72    RegisterBroker = 103,
73    UnregisterBroker = 104,
74    GetRouteinfoByTopic = 105,
75    GetBrokerClusterInfo = 106,
76    UpdateAndCreateSubscriptionGroup = 200,
77    GetAllSubscriptionGroupConfig = 201,
78    GetTopicStatsInfo = 202,
79    GetConsumerConnectionList = 203,
80    GetProducerConnectionList = 204,
81    WipeWritePermOfBroker = 205,
82    GetAllTopicListFromNameserver = 206,
83    DeleteSubscriptionGroup = 207,
84    GetConsumeStats = 208,
85
86    SuspendConsumer = 209,               // Not used in Java
87    ResumeConsumer = 210,                // Not used in Java
88    ResetConsumerOffsetInConsumer = 211, // Not used in Java
89    ResetConsumerOffsetInBroker = 212,   // Not used in Java
90    AdjustConsumerThreadPool = 213,      // Not used in Java
91    WhoConsumeTheMessage = 214,          // Not used in Java
92
93    DeleteTopicInBroker = 215,
94    DeleteTopicInNamesrv = 216,
95    RegisterTopicInNamesrv = 217,
96    GetKvlistByNamespace = 219,
97    ResetConsumerClientOffset = 220,
98    GetConsumerStatusFromClient = 221,
99    InvokeBrokerToResetOffset = 222,
100    InvokeBrokerToGetConsumerStatus = 223,
101
102    QueryTopicConsumeByWho = 300,
103    GetTopicsByCluster = 224,
104    QueryTopicsByConsumer = 343,
105    QuerySubscriptionByConsumer = 345,
106
107    RegisterFilterServer = 301,       // Not used in Java
108    RegisterMessageFilterClass = 302, // Not used in Java
109
110    QueryConsumeTimeSpan = 303,
111    GetSystemTopicListFromNs = 304,
112    GetSystemTopicListFromBroker = 305,
113    CleanExpiredConsumequeue = 306,
114    GetConsumerRunningInfo = 307,
115    QueryCorrectionOffset = 308,
116    ConsumeMessageDirectly = 309,
117    SendMessageV2 = 310,
118    GetUnitTopicList = 311,
119    GetHasUnitSubTopicList = 312,
120    GetHasUnitSubUnunitTopicList = 313,
121    CloneGroupOffset = 314,
122    ViewBrokerStatsData = 315,
123    CleanUnusedTopic = 316,
124    GetBrokerConsumeStats = 317,
125    UpdateNamesrvConfig = 318,
126    GetNamesrvConfig = 319,
127    SendBatchMessage = 320,
128    QueryConsumeQueue = 321,
129    QueryDataVersion = 322,
130    ResumeCheckHalfMessage = 323,
131    SendReplyMessage = 324,
132    SendReplyMessageV2 = 325,
133    PushReplyMessageToClient = 326,
134    AddWritePermOfBroker = 327,
135    GetTopicConfig = 351,
136    GetSubscriptionGroupConfig = 352,
137    UpdateAndGetGroupForbidden = 353,
138    LitePullMessage = 361,
139
140    QueryAssignment = 400,
141    SetMessageRequestMode = 401,
142    GetAllMessageRequestMode = 402,
143    UpdateAndCreateStaticTopic = 513,
144    GetBrokerMemberGroup = 901,
145    AddBroker = 902,
146    RemoveBroker = 903,
147    BrokerHeartbeat = 904,
148    NotifyMinBrokerIdChange = 905,
149    ExchangeBrokerHaInfo = 906,
150    GetBrokerHaStatus = 907,
151    ResetMasterFlushOffset = 908,
152    GetAllProducerInfo = 328,
153    DeleteExpiredCommitlog = 329,
154
155    UpdateColdDataFlowCtrConfig = 2001,
156    RemoveColdDataFlowCtrConfig = 2002,
157    GetColdDataFlowCtrInfo = 2003,
158    SetCommitlogReadMode = 2004,
159
160    // Controller codes
161    ControllerAlterSyncStateSet = 1001,
162    ControllerElectMaster = 1002,
163    ControllerRegisterBroker = 1003,
164    ControllerGetReplicaInfo = 1004,
165    ControllerGetMetadataInfo = 1005,
166    ControllerGetSyncStateData = 1006,
167    GetBrokerEpochCache = 1007,
168    NotifyBrokerRoleChanged = 1008,
169    UpdateControllerConfig = 1009,
170    GetControllerConfig = 1010,
171
172    CleanBrokerData = 1011,
173    ControllerGetNextBrokerId = 1012,
174    ControllerApplyBrokerId = 1013,
175    BrokerCloseChannelRequest = 1014,
176    CheckNotActiveBrokerRequest = 1015,
177    GetBrokerLiveInfoRequest = 1016,
178    GetSyncStateDataRequest = 1017,
179    RaftBrokerHeartBeatEventRequest = 1018,
180
181    // Auth codes
182    AuthCreateUser = 3001,
183    AuthUpdateUser = 3002,
184    AuthDeleteUser = 3003,
185    AuthGetUser = 3004,
186    AuthListUser = 3005,
187    AuthCreateAcl = 3006,
188    AuthUpdateAcl = 3007,
189    AuthDeleteAcl = 3008,
190    AuthGetAcl = 3009,
191    AuthListAcl = 3010,
192
193    Unknown = -9999999,
194}
195
196impl From<RequestCode> for i32 {
197    fn from(value: RequestCode) -> Self {
198        value as i32
199    }
200}
201
202impl From<i32> for RequestCode {
203    fn from(value: i32) -> Self {
204        match value {
205            10 => RequestCode::SendMessage,
206            11 => RequestCode::PullMessage,
207            12 => RequestCode::QueryMessage,
208            13 => RequestCode::QueryBrokerOffset,
209            14 => RequestCode::QueryConsumerOffset,
210            15 => RequestCode::UpdateConsumerOffset,
211            17 => RequestCode::UpdateAndCreateTopic,
212            18 => RequestCode::UpdateAndCreateTopicList,
213            21 => RequestCode::GetAllTopicConfig,
214            22 => RequestCode::GetTopicConfigList,
215            23 => RequestCode::GetTopicNameList,
216            25 => RequestCode::UpdateBrokerConfig,
217            26 => RequestCode::GetBrokerConfig,
218            27 => RequestCode::TriggerDeleteFiles,
219            28 => RequestCode::GetBrokerRuntimeInfo,
220            29 => RequestCode::SearchOffsetByTimestamp,
221            30 => RequestCode::GetMaxOffset,
222            31 => RequestCode::GetMinOffset,
223            32 => RequestCode::GetEarliestMsgStoreTime,
224            33 => RequestCode::ViewMessageById,
225            34 => RequestCode::HeartBeat,
226            35 => RequestCode::UnregisterClient,
227            36 => RequestCode::ConsumerSendMsgBack,
228            37 => RequestCode::EndTransaction,
229            38 => RequestCode::GetConsumerListByGroup,
230            39 => RequestCode::CheckTransactionState,
231            40 => RequestCode::NotifyConsumerIdsChanged,
232            41 => RequestCode::LockBatchMq,
233            42 => RequestCode::UnlockBatchMq,
234            43 => RequestCode::GetAllConsumerOffset,
235            45 => RequestCode::GetAllDelayOffset,
236            46 => RequestCode::CheckClientConfig,
237            47 => RequestCode::GetClientConfig,
238            50 => RequestCode::UpdateAndCreateAclConfig,
239            51 => RequestCode::DeleteAclConfig,
240            52 => RequestCode::GetBrokerClusterAclInfo,
241            53 => RequestCode::UpdateGlobalWhiteAddrsConfig,
242            54 => RequestCode::GetBrokerClusterAclConfig,
243            60 => RequestCode::GetTimerCheckPoint,
244            61 => RequestCode::GetTimerMetrics,
245            200050 => RequestCode::PopMessage,
246            200051 => RequestCode::AckMessage,
247            200151 => RequestCode::BatchAckMessage,
248            200052 => RequestCode::PeekMessage,
249            200053 => RequestCode::ChangeMessageInvisibleTime,
250            200054 => RequestCode::Notification,
251            200055 => RequestCode::PollingInfo,
252            100 => RequestCode::PutKvConfig,
253            101 => RequestCode::GetKvConfig,
254            102 => RequestCode::DeleteKvConfig,
255            103 => RequestCode::RegisterBroker,
256            104 => RequestCode::UnregisterBroker,
257            105 => RequestCode::GetRouteinfoByTopic,
258            106 => RequestCode::GetBrokerClusterInfo,
259            200 => RequestCode::UpdateAndCreateSubscriptionGroup,
260            201 => RequestCode::GetAllSubscriptionGroupConfig,
261            202 => RequestCode::GetTopicStatsInfo,
262            203 => RequestCode::GetConsumerConnectionList,
263            204 => RequestCode::GetProducerConnectionList,
264            205 => RequestCode::WipeWritePermOfBroker,
265            206 => RequestCode::GetAllTopicListFromNameserver,
266            207 => RequestCode::DeleteSubscriptionGroup,
267            208 => RequestCode::GetConsumeStats,
268            209 => RequestCode::SuspendConsumer,
269            210 => RequestCode::ResumeConsumer,
270            211 => RequestCode::ResetConsumerOffsetInConsumer,
271            212 => RequestCode::ResetConsumerOffsetInBroker,
272            213 => RequestCode::AdjustConsumerThreadPool,
273            214 => RequestCode::WhoConsumeTheMessage,
274            215 => RequestCode::DeleteTopicInBroker,
275            216 => RequestCode::DeleteTopicInNamesrv,
276            217 => RequestCode::RegisterTopicInNamesrv,
277            219 => RequestCode::GetKvlistByNamespace,
278            220 => RequestCode::ResetConsumerClientOffset,
279            221 => RequestCode::GetConsumerStatusFromClient,
280            222 => RequestCode::InvokeBrokerToResetOffset,
281            223 => RequestCode::InvokeBrokerToGetConsumerStatus,
282            300 => RequestCode::QueryTopicConsumeByWho,
283            224 => RequestCode::GetTopicsByCluster,
284            343 => RequestCode::QueryTopicsByConsumer,
285            345 => RequestCode::QuerySubscriptionByConsumer,
286            301 => RequestCode::RegisterFilterServer,
287            302 => RequestCode::RegisterMessageFilterClass,
288            303 => RequestCode::QueryConsumeTimeSpan,
289            304 => RequestCode::GetSystemTopicListFromNs,
290            305 => RequestCode::GetSystemTopicListFromBroker,
291            306 => RequestCode::CleanExpiredConsumequeue,
292            307 => RequestCode::GetConsumerRunningInfo,
293            308 => RequestCode::QueryCorrectionOffset,
294            309 => RequestCode::ConsumeMessageDirectly,
295            310 => RequestCode::SendMessageV2,
296            311 => RequestCode::GetUnitTopicList,
297            312 => RequestCode::GetHasUnitSubTopicList,
298            313 => RequestCode::GetHasUnitSubUnunitTopicList,
299            314 => RequestCode::CloneGroupOffset,
300            315 => RequestCode::ViewBrokerStatsData,
301            316 => RequestCode::CleanUnusedTopic,
302            317 => RequestCode::GetBrokerConsumeStats,
303            318 => RequestCode::UpdateNamesrvConfig,
304            319 => RequestCode::GetNamesrvConfig,
305            320 => RequestCode::SendBatchMessage,
306            321 => RequestCode::QueryConsumeQueue,
307            322 => RequestCode::QueryDataVersion,
308            323 => RequestCode::ResumeCheckHalfMessage,
309            324 => RequestCode::SendReplyMessage,
310            325 => RequestCode::SendReplyMessageV2,
311            326 => RequestCode::PushReplyMessageToClient,
312            327 => RequestCode::AddWritePermOfBroker,
313            351 => RequestCode::GetTopicConfig,
314            352 => RequestCode::GetSubscriptionGroupConfig,
315            353 => RequestCode::UpdateAndGetGroupForbidden,
316            361 => RequestCode::LitePullMessage,
317            400 => RequestCode::QueryAssignment,
318            401 => RequestCode::SetMessageRequestMode,
319            402 => RequestCode::GetAllMessageRequestMode,
320            513 => RequestCode::UpdateAndCreateStaticTopic,
321            901 => RequestCode::GetBrokerMemberGroup,
322            902 => RequestCode::AddBroker,
323            903 => RequestCode::RemoveBroker,
324            904 => RequestCode::BrokerHeartbeat,
325            905 => RequestCode::NotifyMinBrokerIdChange,
326            906 => RequestCode::ExchangeBrokerHaInfo,
327            907 => RequestCode::GetBrokerHaStatus,
328            908 => RequestCode::ResetMasterFlushOffset,
329            328 => RequestCode::GetAllProducerInfo,
330            329 => RequestCode::DeleteExpiredCommitlog,
331            2001 => RequestCode::UpdateColdDataFlowCtrConfig,
332            2002 => RequestCode::RemoveColdDataFlowCtrConfig,
333            2003 => RequestCode::GetColdDataFlowCtrInfo,
334            2004 => RequestCode::SetCommitlogReadMode,
335
336            1001 => RequestCode::ControllerAlterSyncStateSet,
337            1002 => RequestCode::ControllerElectMaster,
338            1003 => RequestCode::ControllerRegisterBroker,
339            1004 => RequestCode::ControllerGetReplicaInfo,
340            1005 => RequestCode::ControllerGetMetadataInfo,
341            1006 => RequestCode::ControllerGetSyncStateData,
342            1007 => RequestCode::GetBrokerEpochCache,
343            1008 => RequestCode::NotifyBrokerRoleChanged,
344            1009 => RequestCode::UpdateControllerConfig,
345            1010 => RequestCode::GetControllerConfig,
346            1011 => RequestCode::CleanBrokerData,
347            1012 => RequestCode::ControllerGetNextBrokerId,
348            1013 => RequestCode::ControllerApplyBrokerId,
349            1014 => RequestCode::BrokerCloseChannelRequest,
350            1015 => RequestCode::CheckNotActiveBrokerRequest,
351            1016 => RequestCode::GetBrokerLiveInfoRequest,
352            1017 => RequestCode::GetSyncStateDataRequest,
353            1018 => RequestCode::RaftBrokerHeartBeatEventRequest,
354
355            3001 => RequestCode::AuthCreateUser,
356            3002 => RequestCode::AuthUpdateUser,
357            3003 => RequestCode::AuthDeleteUser,
358            3004 => RequestCode::AuthGetUser,
359            3005 => RequestCode::AuthListUser,
360            3006 => RequestCode::AuthCreateAcl,
361            3007 => RequestCode::AuthUpdateAcl,
362            3008 => RequestCode::AuthDeleteAcl,
363            3009 => RequestCode::AuthGetAcl,
364            3010 => RequestCode::AuthListAcl,
365
366            _ => RequestCode::Unknown,
367        }
368    }
369}
370
371impl RequestCode {
372    pub fn to_i32(self) -> i32 {
373        self.into()
374    }
375
376    pub fn value_of(code: i32) -> Option<Self> {
377        Some(code.into())
378    }
379}
380
381/*#[derive(Debug, PartialEq, Clone, Copy)]
382pub enum ControllerRequestCode {
383    ControllerAlterSyncStateSet = 1001,
384    ControllerElectMaster = 1002,
385    ControllerRegisterBroker = 1003,
386    ControllerGetReplicaInfo = 1004,
387    ControllerGetMetadataInfo = 1005,
388    ControllerGetSyncStateData = 1006,
389    GetBrokerEpochCache = 1007,
390    NotifyBrokerRoleChanged = 1008,
391    UpdateControllerConfig = 1009,
392    GetControllerConfig = 1010,
393    CleanBrokerData = 1011,
394    ControllerGetNextBrokerId = 1012,
395    ControllerApplyBrokerId = 1013,
396}*/