Author: btellier
Date: Fri Jul  3 15:04:45 2015
New Revision: 1689036

URL: http://svn.apache.org/r1689036
Log:
MAILBOX-240 IMAP protocol should use update flags update API

Modified:
    
james/protocols/trunk/imap/src/main/java/org/apache/james/imap/processor/StoreProcessor.java
    
james/protocols/trunk/imap/src/main/java/org/apache/james/imap/processor/fetch/FetchResponseBuilder.java
    
james/protocols/trunk/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java

Modified: 
james/protocols/trunk/imap/src/main/java/org/apache/james/imap/processor/StoreProcessor.java
URL: 
http://svn.apache.org/viewvc/james/protocols/trunk/imap/src/main/java/org/apache/james/imap/processor/StoreProcessor.java?rev=1689036&r1=1689035&r2=1689036&view=diff
==============================================================================
--- 
james/protocols/trunk/imap/src/main/java/org/apache/james/imap/processor/StoreProcessor.java
 (original)
+++ 
james/protocols/trunk/imap/src/main/java/org/apache/james/imap/processor/StoreProcessor.java
 Fri Jul  3 15:04:45 2015
@@ -230,19 +230,17 @@ public class StoreProcessor extends Abst
         final long unchangedSince = request.getUnchangedSince();
         final boolean replace;
         final boolean value;
+        final MessageManager.FlagsUpdateMode mode;
         if (isSignedMinus) {
-            value = false;
-            replace = false;
+            mode = MessageManager.FlagsUpdateMode.REMOVE;
         } else if (isSignedPlus) {
-            value = true;
-            replace = false;
+            mode = MessageManager.FlagsUpdateMode.ADD;
         } else {
-            replace = true;
-            value = true;
+            mode = MessageManager.FlagsUpdateMode.REPLACE;
         }
         
         SelectedMailbox selected = session.getSelected();
-        final Map<Long, Flags> flagsByUid = mailbox.setFlags(flags, value, 
replace, messageSet, mailboxSession);
+        final Map<Long, Flags> flagsByUid = mailbox.setFlags(flags, mode, 
messageSet, mailboxSession);
         // As the STORE command is allowed to create a new "flag/keyword", we 
need to send a FLAGS and PERMANENTFLAGS response before the FETCH response
         // if some new flag/keyword was used
         // See IMAP-303

Modified: 
james/protocols/trunk/imap/src/main/java/org/apache/james/imap/processor/fetch/FetchResponseBuilder.java
URL: 
http://svn.apache.org/viewvc/james/protocols/trunk/imap/src/main/java/org/apache/james/imap/processor/fetch/FetchResponseBuilder.java?rev=1689036&r1=1689035&r2=1689036&view=diff
==============================================================================
--- 
james/protocols/trunk/imap/src/main/java/org/apache/james/imap/processor/fetch/FetchResponseBuilder.java
 (original)
+++ 
james/protocols/trunk/imap/src/main/java/org/apache/james/imap/processor/fetch/FetchResponseBuilder.java
 Fri Jul  3 15:04:45 2015
@@ -122,7 +122,7 @@ public final class FetchResponseBuilder
         boolean ensureFlagsResponse = false;
         final Flags resultFlags = result.getFlags();
         if (fetch.isSetSeen() && !resultFlags.contains(Flags.Flag.SEEN)) {
-            mailbox.setFlags(new Flags(Flags.Flag.SEEN), true, false, 
MessageRange.one(resultUid), mailboxSession);
+            mailbox.setFlags(new Flags(Flags.Flag.SEEN), 
MessageManager.FlagsUpdateMode.ADD, MessageRange.one(resultUid), 
mailboxSession);
             resultFlags.add(Flags.Flag.SEEN);
             ensureFlagsResponse = true;
         }

Modified: 
james/protocols/trunk/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
URL: 
http://svn.apache.org/viewvc/james/protocols/trunk/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java?rev=1689036&r1=1689035&r2=1689036&view=diff
==============================================================================
--- 
james/protocols/trunk/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
 (original)
+++ 
james/protocols/trunk/imap/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
 Fri Jul  3 15:04:45 2015
@@ -171,7 +171,7 @@ public class MailboxEventAnalyserTest {
                 }
 
                 
-                public Map<Long, Flags> setFlags(Flags flags, boolean value, 
boolean replace, MessageRange set, MailboxSession mailboxSession) throws 
MailboxException {
+                public Map<Long, Flags> setFlags(Flags flags, FlagsUpdateMode 
mode, MessageRange set, MailboxSession mailboxSession) throws MailboxException {
                     throw new UnsupportedOperationException("Not implemented");
 
                 }



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to