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/12/06 08:04:04 UTC

[james-project] 13/15: [PERF] Quota: avoid streaming where possible

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 033d7bdecc942e3fd75146a50bd0f169d7c37d35
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Mon Dec 5 14:52:58 2022 +0700

    [PERF] Quota: avoid streaming where possible
---
 .../api/src/main/java/org/apache/james/mailbox/model/Quota.java    | 7 +++----
 .../main/java/org/apache/james/mailbox/quota/MaxQuotaManager.java  | 1 -
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/mailbox/api/src/main/java/org/apache/james/mailbox/model/Quota.java b/mailbox/api/src/main/java/org/apache/james/mailbox/model/Quota.java
index 5d1ed44d78..8f64fbb83f 100644
--- a/mailbox/api/src/main/java/org/apache/james/mailbox/model/Quota.java
+++ b/mailbox/api/src/main/java/org/apache/james/mailbox/model/Quota.java
@@ -18,9 +18,8 @@
  ****************************************************************/
 package org.apache.james.mailbox.model;
 
-import java.util.Arrays;
-import java.util.List;
 import java.util.Map;
+import java.util.stream.Stream;
 
 import org.apache.james.core.quota.QuotaLimitValue;
 import org.apache.james.core.quota.QuotaUsageValue;
@@ -37,8 +36,8 @@ public class Quota<T extends QuotaLimitValue<T>, U extends QuotaUsageValue<U, T>
         User
     }
 
-    public static List<Scope> allScopes() {
-        return Arrays.asList(Quota.Scope.User, Quota.Scope.Domain, Quota.Scope.Global);
+    public static Stream<Scope> allScopes() {
+        return Stream.of(Quota.Scope.User, Quota.Scope.Domain, Quota.Scope.Global);
     }
 
     public static <T extends QuotaLimitValue<T>,  U extends QuotaUsageValue<U, T>> Builder<T, U> builder() {
diff --git a/mailbox/api/src/main/java/org/apache/james/mailbox/quota/MaxQuotaManager.java b/mailbox/api/src/main/java/org/apache/james/mailbox/quota/MaxQuotaManager.java
index 0e30eecb2d..367f79fec2 100644
--- a/mailbox/api/src/main/java/org/apache/james/mailbox/quota/MaxQuotaManager.java
+++ b/mailbox/api/src/main/java/org/apache/james/mailbox/quota/MaxQuotaManager.java
@@ -128,7 +128,6 @@ public interface MaxQuotaManager {
 
     default Optional<QuotaSizeLimit> getMaxStorage(Map<Quota.Scope, QuotaSizeLimit> maxStorageDetails) {
         return Quota.allScopes()
-            .stream()
             .map(maxStorageDetails::get)
             .filter(Objects::nonNull)
             .findFirst();


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