You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by bt...@apache.org on 2020/07/23 07:53:14 UTC

[james-project] 03/18: JAMES-3177 turn updateApplicableFlags into a static method for tests

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 ab05880c4da73240110862fad75237d566c19887
Author: Matthieu Baechler <ma...@apache.org>
AuthorDate: Tue Jun 16 15:39:39 2020 +0200

    JAMES-3177 turn updateApplicableFlags into a static method for tests
---
 .../james/imap/processor/base/SelectedMailboxImpl.java      | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/protocols/imap/src/main/java/org/apache/james/imap/processor/base/SelectedMailboxImpl.java b/protocols/imap/src/main/java/org/apache/james/imap/processor/base/SelectedMailboxImpl.java
index 3f73abc..88f1ece 100644
--- a/protocols/imap/src/main/java/org/apache/james/imap/processor/base/SelectedMailboxImpl.java
+++ b/protocols/imap/src/main/java/org/apache/james/imap/processor/base/SelectedMailboxImpl.java
@@ -51,6 +51,7 @@ import org.apache.james.mailbox.model.SearchQuery;
 import org.apache.james.mailbox.model.UpdatedFlags;
 
 import com.github.steveash.guavate.Guavate;
+import com.google.common.annotations.VisibleForTesting;
 
 import reactor.core.publisher.Mono;
 import reactor.core.scheduler.Schedulers;
@@ -61,7 +62,8 @@ import reactor.core.scheduler.Schedulers;
 public class SelectedMailboxImpl implements SelectedMailbox, MailboxListener {
 
 
-    private static class ApplicableFlags {
+    @VisibleForTesting
+    static class ApplicableFlags {
         static ApplicableFlags from(Flags flags) {
             boolean updated = false;
             return new ApplicableFlags(flags, updated);
@@ -88,7 +90,7 @@ public class SelectedMailboxImpl implements SelectedMailbox, MailboxListener {
         }
 
         public ApplicableFlags update(boolean applicableFlagsChanged) {
-            return new ApplicableFlags(flags, true);
+            return new ApplicableFlags(flags, applicableFlagsChanged);
         }
     }
 
@@ -398,7 +400,7 @@ public class SelectedMailboxImpl implements SelectedMailbox, MailboxListener {
                         }
                     }
 
-                    updateApplicableFlags((FlagsUpdated) messageEvent);
+                    applicableFlags = updateApplicableFlags(applicableFlags, (FlagsUpdated) messageEvent);
 
                 } else if (messageEvent instanceof Expunged) {
                     expungedUids.addAll(messageEvent.getUids());
@@ -412,7 +414,8 @@ public class SelectedMailboxImpl implements SelectedMailbox, MailboxListener {
         }
     }
 
-    private void updateApplicableFlags(FlagsUpdated messageEvent) {
+    @VisibleForTesting
+    static ApplicableFlags updateApplicableFlags(ApplicableFlags applicableFlags, FlagsUpdated messageEvent) {
         Flags updatedFlags = applicableFlags.flags();
         int size = updatedFlags.getUserFlags().length;
         FlagsUpdated updatedF = messageEvent;
@@ -433,7 +436,7 @@ public class SelectedMailboxImpl implements SelectedMailbox, MailboxListener {
         } else {
             applicableFlagsChanged = false;
         }
-        applicableFlags = ApplicableFlags.from(updatedFlags).update(applicableFlagsChanged);
+        return ApplicableFlags.from(updatedFlags).update(applicableFlagsChanged);
     }
 
     @Override


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