You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by ji...@apache.org on 2023/02/28 05:56:13 UTC

[rocketmq] branch develop updated: [ISSUE #6145] Modify Collections.sort usage (#6146)

This is an automated email from the ASF dual-hosted git repository.

jinrongtong pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/rocketmq.git


The following commit(s) were added to refs/heads/develop by this push:
     new 33371e5d8 [ISSUE #6145] Modify Collections.sort usage (#6146)
33371e5d8 is described below

commit 33371e5d8e0c5c5f7a172d9c06f6bd46a93249a0
Author: hardyfish <85...@users.noreply.github.com>
AuthorDate: Tue Feb 28 13:56:03 2023 +0800

    [ISSUE #6145] Modify Collections.sort usage (#6146)
    
    * modify Collections.sort usage
    
    * modify Collections.sort usage
---
 .../rocketmq/broker/longpolling/PopRequest.java    | 21 ++++++++---------
 .../statictopic/TopicQueueMappingUtils.java        | 27 ++++++++--------------
 .../rocketmq/remoting/rpc/ClientMetadata.java      |  9 +-------
 .../apache/rocketmq/test/schema/SchemaTools.java   | 14 ++---------
 .../org/apache/rocketmq/test/util/TestUtil.java    |  8 +------
 .../rocketmq/test/statictopic/StaticTopicIT.java   |  9 +-------
 6 files changed, 23 insertions(+), 65 deletions(-)

diff --git a/broker/src/main/java/org/apache/rocketmq/broker/longpolling/PopRequest.java b/broker/src/main/java/org/apache/rocketmq/broker/longpolling/PopRequest.java
index 2eccf77e0..a6546e912 100644
--- a/broker/src/main/java/org/apache/rocketmq/broker/longpolling/PopRequest.java
+++ b/broker/src/main/java/org/apache/rocketmq/broker/longpolling/PopRequest.java
@@ -71,19 +71,16 @@ public class PopRequest {
         return sb.toString();
     }
 
-    public static final Comparator<PopRequest> COMPARATOR = new Comparator<PopRequest>() {
-        @Override
-        public int compare(PopRequest o1, PopRequest o2) {
-            int ret = (int) (o1.getExpired() - o2.getExpired());
+    public static final Comparator<PopRequest> COMPARATOR = (o1, o2) -> {
+        int ret = (int) (o1.getExpired() - o2.getExpired());
 
-            if (ret != 0) {
-                return ret;
-            }
-            ret = (int) (o1.op - o2.op);
-            if (ret != 0) {
-                return ret;
-            }
-            return -1;
+        if (ret != 0) {
+            return ret;
         }
+        ret = (int) (o1.op - o2.op);
+        if (ret != 0) {
+            return ret;
+        }
+        return -1;
     };
 }
diff --git a/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/statictopic/TopicQueueMappingUtils.java b/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/statictopic/TopicQueueMappingUtils.java
index b22906a5c..45cbed757 100644
--- a/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/statictopic/TopicQueueMappingUtils.java
+++ b/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/statictopic/TopicQueueMappingUtils.java
@@ -22,7 +22,6 @@ import java.util.ArrayDeque;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
-import java.util.Comparator;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
@@ -63,18 +62,15 @@ public class TopicQueueMappingUtils {
             //reduce the remapping
             if (brokerNumMapBeforeRemapping != null
                     && !brokerNumMapBeforeRemapping.isEmpty()) {
-                Collections.sort(leastBrokers, new Comparator<String>() {
-                    @Override
-                    public int compare(String o1, String o2) {
-                        int i1 = 0, i2 = 0;
-                        if (brokerNumMapBeforeRemapping.containsKey(o1)) {
-                            i1 = brokerNumMapBeforeRemapping.get(o1);
-                        }
-                        if (brokerNumMapBeforeRemapping.containsKey(o2)) {
-                            i2 = brokerNumMapBeforeRemapping.get(o2);
-                        }
-                        return i1 - i2;
+                leastBrokers.sort((o1, o2) -> {
+                    int i1 = 0, i2 = 0;
+                    if (brokerNumMapBeforeRemapping.containsKey(o1)) {
+                        i1 = brokerNumMapBeforeRemapping.get(o1);
                     }
+                    if (brokerNumMapBeforeRemapping.containsKey(o2)) {
+                        i2 = brokerNumMapBeforeRemapping.get(o2);
+                    }
+                    return i1 - i2;
                 });
             } else {
                 //reduce the imbalance
@@ -342,12 +338,7 @@ public class TopicQueueMappingUtils {
 
 
     public static Map<Integer, TopicQueueMappingOne> checkAndBuildMappingItems(List<TopicQueueMappingDetail> mappingDetailList, boolean replace, boolean checkConsistence) {
-        Collections.sort(mappingDetailList, new Comparator<TopicQueueMappingDetail>() {
-            @Override
-            public int compare(TopicQueueMappingDetail o1, TopicQueueMappingDetail o2) {
-                return (int)(o2.getEpoch() - o1.getEpoch());
-            }
-        });
+        mappingDetailList.sort((o1, o2) -> (int) (o2.getEpoch() - o1.getEpoch()));
 
         int maxNum = 0;
         Map<Integer, TopicQueueMappingOne> globalIdMap = new HashMap<>();
diff --git a/remoting/src/main/java/org/apache/rocketmq/remoting/rpc/ClientMetadata.java b/remoting/src/main/java/org/apache/rocketmq/remoting/rpc/ClientMetadata.java
index 40b61588c..d4962e00a 100644
--- a/remoting/src/main/java/org/apache/rocketmq/remoting/rpc/ClientMetadata.java
+++ b/remoting/src/main/java/org/apache/rocketmq/remoting/rpc/ClientMetadata.java
@@ -17,8 +17,6 @@
 package org.apache.rocketmq.remoting.rpc;
 
 import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -121,12 +119,7 @@ public class ClientMetadata {
             Map<String, TopicQueueMappingInfo> topicQueueMappingInfoMap =  mapEntry.getValue();
             ConcurrentMap<MessageQueue, TopicQueueMappingInfo> mqEndPoints = new ConcurrentHashMap<>();
             List<Map.Entry<String, TopicQueueMappingInfo>> mappingInfos = new ArrayList<>(topicQueueMappingInfoMap.entrySet());
-            Collections.sort(mappingInfos, new Comparator<Map.Entry<String, TopicQueueMappingInfo>>() {
-                @Override
-                public int compare(Map.Entry<String, TopicQueueMappingInfo> o1, Map.Entry<String, TopicQueueMappingInfo> o2) {
-                    return  (int) (o2.getValue().getEpoch() - o1.getValue().getEpoch());
-                }
-            });
+            mappingInfos.sort((o1, o2) -> (int) (o2.getValue().getEpoch() - o1.getValue().getEpoch()));
             int maxTotalNums = 0;
             long maxTotalNumOfEpoch = -1;
             for (Map.Entry<String, TopicQueueMappingInfo> entry : mappingInfos) {
diff --git a/test/src/main/java/org/apache/rocketmq/test/schema/SchemaTools.java b/test/src/main/java/org/apache/rocketmq/test/schema/SchemaTools.java
index 04a71d6ac..edd7de07f 100644
--- a/test/src/main/java/org/apache/rocketmq/test/schema/SchemaTools.java
+++ b/test/src/main/java/org/apache/rocketmq/test/schema/SchemaTools.java
@@ -166,19 +166,9 @@ public class SchemaTools {
                 continue;
             }
             Class<?>[] parameterTypes = method.getParameterTypes();
-            Arrays.sort(parameterTypes, new Comparator<Class<?>>() {
-                @Override
-                public int compare(Class<?> o1, Class<?> o2) {
-                    return o1.getName().compareTo(o2.getName());
-                }
-            });
+            Arrays.sort(parameterTypes, Comparator.comparing(Class::getName));
             Class<?>[] exceptionTypes = method.getExceptionTypes();
-            Arrays.sort(exceptionTypes, new Comparator<Class<?>>() {
-                @Override
-                public int compare(Class<?> o1, Class<?> o2) {
-                    return o1.getName().compareTo(o2.getName());
-                }
-            });
+            Arrays.sort(exceptionTypes, Comparator.comparing(Class::getName));
             String key = String.format("Method %s(%s)", method.getName(), Arrays.stream(parameterTypes).map(Class::getName).collect(Collectors.joining(",")));
             String value = String.format("%s throws (%s): %s",
                 isPublicOrPrivate(method.getModifiers()),
diff --git a/test/src/main/java/org/apache/rocketmq/test/util/TestUtil.java b/test/src/main/java/org/apache/rocketmq/test/util/TestUtil.java
index 604ee5c87..1013759cd 100644
--- a/test/src/main/java/org/apache/rocketmq/test/util/TestUtil.java
+++ b/test/src/main/java/org/apache/rocketmq/test/util/TestUtil.java
@@ -19,8 +19,6 @@ package org.apache.rocketmq.test.util;
 
 import java.io.IOException;
 import java.nio.charset.StandardCharsets;
-import java.util.Collections;
-import java.util.Comparator;
 import java.util.LinkedHashMap;
 import java.util.LinkedList;
 import java.util.List;
@@ -107,11 +105,7 @@ public final class TestUtil {
 
     public static <K, V extends Comparable<? super V>> Map<K, V> sortByValue(Map<K, V> map) {
         List<Map.Entry<K, V>> list = new LinkedList<Map.Entry<K, V>>(map.entrySet());
-        Collections.sort(list, new Comparator<Map.Entry<K, V>>() {
-            public int compare(Map.Entry<K, V> o1, Map.Entry<K, V> o2) {
-                return (o1.getValue()).compareTo(o2.getValue());
-            }
-        });
+        list.sort(Map.Entry.comparingByValue());
 
         Map<K, V> result = new LinkedHashMap<K, V>();
         for (Map.Entry<K, V> entry : list) {
diff --git a/test/src/test/java/org/apache/rocketmq/test/statictopic/StaticTopicIT.java b/test/src/test/java/org/apache/rocketmq/test/statictopic/StaticTopicIT.java
index fea6d9663..8cbcddae2 100644
--- a/test/src/test/java/org/apache/rocketmq/test/statictopic/StaticTopicIT.java
+++ b/test/src/test/java/org/apache/rocketmq/test/statictopic/StaticTopicIT.java
@@ -21,8 +21,6 @@ import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableSet;
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
-import java.util.Comparator;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
@@ -196,12 +194,7 @@ public class StaticTopicIT extends BaseConf {
             messagesByQueue.get(messageExt.getQueueId()).add(messageExt);
         }
         for (List<MessageExt> msgEachQueue : messagesByQueue.values()) {
-            Collections.sort(msgEachQueue, new Comparator<MessageExt>() {
-                @Override
-                public int compare(MessageExt o1, MessageExt o2) {
-                    return (int) (o1.getQueueOffset() - o2.getQueueOffset());
-                }
-            });
+            msgEachQueue.sort((o1, o2) -> (int) (o1.getQueueOffset() - o2.getQueueOffset()));
         }
         return messagesByQueue;
     }