mirror of
https://github.com/apache/rocketmq.git
synced 2026-09-24 16:04:00 +08:00
[ISSUE #9174] Add a collection of predefined Groups and common checking methods in the MixAll (#9175)
Signed-off-by: ltamber <ltamber12@gmail.com>
This commit is contained in:
@@ -44,6 +44,7 @@ import java.util.TreeMap;
|
||||
import java.util.concurrent.atomic.AtomicLong;
|
||||
import java.util.function.Predicate;
|
||||
|
||||
import com.google.common.collect.ImmutableSet;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.rocketmq.common.annotation.ImportantField;
|
||||
import org.apache.rocketmq.common.constant.LoggerName;
|
||||
@@ -120,6 +121,23 @@ public class MixAll {
|
||||
|
||||
private static final String OS = System.getProperty("os.name").toLowerCase();
|
||||
|
||||
private static final Set<String> PREDEFINE_GROUP_SET = ImmutableSet.of(
|
||||
DEFAULT_CONSUMER_GROUP,
|
||||
DEFAULT_PRODUCER_GROUP,
|
||||
TOOLS_CONSUMER_GROUP,
|
||||
SCHEDULE_CONSUMER_GROUP,
|
||||
FILTERSRV_CONSUMER_GROUP,
|
||||
MONITOR_CONSUMER_GROUP,
|
||||
CLIENT_INNER_PRODUCER_GROUP,
|
||||
SELF_TEST_PRODUCER_GROUP,
|
||||
SELF_TEST_CONSUMER_GROUP,
|
||||
ONS_HTTP_PROXY_GROUP,
|
||||
CID_ONSAPI_PERMISSION_GROUP,
|
||||
CID_ONSAPI_OWNER_GROUP,
|
||||
CID_ONSAPI_PULL_GROUP,
|
||||
CID_SYS_RMQ_TRANS
|
||||
);
|
||||
|
||||
public static boolean isWindows() {
|
||||
return OS.contains("win");
|
||||
}
|
||||
@@ -160,6 +178,10 @@ public class MixAll {
|
||||
return consumerGroup.startsWith(CID_RMQ_SYS_PREFIX);
|
||||
}
|
||||
|
||||
public static boolean isPredefinedGroup(final String consumerGroup) {
|
||||
return PREDEFINE_GROUP_SET.contains(consumerGroup);
|
||||
}
|
||||
|
||||
public static String getDLQTopic(final String consumerGroup) {
|
||||
return DLQ_GROUP_TOPIC_PREFIX + consumerGroup;
|
||||
}
|
||||
|
||||
@@ -128,24 +128,6 @@ import org.apache.rocketmq.tools.command.CommandUtil;
|
||||
public class DefaultMQAdminExtImpl implements MQAdminExt, MQAdminExtInner {
|
||||
|
||||
private static final String SOCKS_PROXY_JSON = "socksProxyJson";
|
||||
private static final Set<String> SYSTEM_GROUP_SET = new HashSet<>();
|
||||
|
||||
static {
|
||||
SYSTEM_GROUP_SET.add(MixAll.DEFAULT_CONSUMER_GROUP);
|
||||
SYSTEM_GROUP_SET.add(MixAll.DEFAULT_PRODUCER_GROUP);
|
||||
SYSTEM_GROUP_SET.add(MixAll.TOOLS_CONSUMER_GROUP);
|
||||
SYSTEM_GROUP_SET.add(MixAll.SCHEDULE_CONSUMER_GROUP);
|
||||
SYSTEM_GROUP_SET.add(MixAll.FILTERSRV_CONSUMER_GROUP);
|
||||
SYSTEM_GROUP_SET.add(MixAll.MONITOR_CONSUMER_GROUP);
|
||||
SYSTEM_GROUP_SET.add(MixAll.CLIENT_INNER_PRODUCER_GROUP);
|
||||
SYSTEM_GROUP_SET.add(MixAll.SELF_TEST_PRODUCER_GROUP);
|
||||
SYSTEM_GROUP_SET.add(MixAll.SELF_TEST_CONSUMER_GROUP);
|
||||
SYSTEM_GROUP_SET.add(MixAll.ONS_HTTP_PROXY_GROUP);
|
||||
SYSTEM_GROUP_SET.add(MixAll.CID_ONSAPI_PERMISSION_GROUP);
|
||||
SYSTEM_GROUP_SET.add(MixAll.CID_ONSAPI_OWNER_GROUP);
|
||||
SYSTEM_GROUP_SET.add(MixAll.CID_ONSAPI_PULL_GROUP);
|
||||
SYSTEM_GROUP_SET.add(MixAll.CID_SYS_RMQ_TRANS);
|
||||
}
|
||||
|
||||
private final Logger logger = LoggerFactory.getLogger(DefaultMQAdminExtImpl.class);
|
||||
private final DefaultMQAdminExt defaultMQAdminExt;
|
||||
@@ -1698,7 +1680,7 @@ public class DefaultMQAdminExtImpl implements MQAdminExt, MQAdminExtInner {
|
||||
Iterator<Entry<String, SubscriptionGroupConfig>> iterator = subscriptionGroupWrapper.getSubscriptionGroupTable().entrySet().iterator();
|
||||
while (iterator.hasNext()) {
|
||||
Map.Entry<String, SubscriptionGroupConfig> configEntry = iterator.next();
|
||||
if (MixAll.isSysConsumerGroup(configEntry.getKey()) || SYSTEM_GROUP_SET.contains(configEntry.getKey())) {
|
||||
if (MixAll.isSysConsumerGroup(configEntry.getKey()) || MixAll.isPredefinedGroup(configEntry.getKey())) {
|
||||
iterator.remove();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user