You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@james.apache.org by bt...@apache.org on 2022/03/16 01:18:31 UTC

[james-project] 01/11: [PERF] Improves performance of IdRange::toString of 50%

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

btellier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit 3c7cb4a6fbef9049ed3a80084055b3255e5121b0
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Thu Mar 10 15:59:47 2022 +0700

    [PERF] Improves performance of IdRange::toString of 50%
---
 .../main/java/org/apache/james/imap/api/message/IdRange.java | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/protocols/imap/src/main/java/org/apache/james/imap/api/message/IdRange.java b/protocols/imap/src/main/java/org/apache/james/imap/api/message/IdRange.java
index 106f4f0..410c75b 100644
--- a/protocols/imap/src/main/java/org/apache/james/imap/api/message/IdRange.java
+++ b/protocols/imap/src/main/java/org/apache/james/imap/api/message/IdRange.java
@@ -20,16 +20,16 @@
 package org.apache.james.imap.api.message;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Collections;
 import java.util.Iterator;
 import java.util.List;
 import java.util.NoSuchElementException;
 import java.util.Optional;
+import java.util.stream.Collectors;
 
 import org.apache.james.mailbox.model.MessageRange;
 
-import com.google.common.collect.ImmutableList;
-
 /**
  * Represents a range of UID or MSN values.
  */
@@ -108,9 +108,11 @@ public final class IdRange implements Iterable<Long>, Comparable<IdRange> {
     }
 
     public static String toString(IdRange[] ranges) {
-        return Optional.ofNullable(ranges)
-            .map(ImmutableList::copyOf)
-            .toString();
+        return "(" + Optional.ofNullable(ranges)
+            .map(array -> Arrays.stream(array)
+                .map(IdRange::toString)
+                .collect(Collectors.joining(",")))
+            .orElse("") + ")";
     }
 
     public static IdRange from(MessageRange messageRange) {

---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@james.apache.org
For additional commands, e-mail: notifications-help@james.apache.org