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 rd...@apache.org on 2008/03/30 21:22:58 UTC
svn commit: r642803 - in /james/server/trunk:
core-library/src/main/java/org/apache/james/mailboxmanager/util/
experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/imap/
experimental-seda-imap-function/src/test/resources/org/a...
Author: rdonkin
Date: Sun Mar 30 12:22:55 2008
New Revision: 642803
URL: http://svn.apache.org/viewvc?rev=642803&view=rev
Log:
Fix RENAME. Fix RECENT after EXPUNGE.
Added:
james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/imap/AbstractTestRename.java
james/server/trunk/phoenix-deployment/src/test/org/apache/james/experimental/imapserver/ExperimentalRenameTest.java
Modified:
james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/util/MailboxEventAnalyser.java
james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/AppendExpunge.test
james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Rename.test
james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/UidSearchAtoms.test
james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/UidSearchCombinations.test
james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/process/SelectedImapMailbox.java
james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/SelectedMailboxSessionImpl.java
james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java
Modified: james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/util/MailboxEventAnalyser.java
URL: http://svn.apache.org/viewvc/james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/util/MailboxEventAnalyser.java?rev=642803&r1=642802&r2=642803&view=diff
==============================================================================
--- james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/util/MailboxEventAnalyser.java (original)
+++ james/server/trunk/core-library/src/main/java/org/apache/james/mailboxmanager/util/MailboxEventAnalyser.java Sun Mar 30 12:22:55 2008
@@ -122,6 +122,10 @@
return expungedUids.iterator();
}
+ public boolean hasExpungedUids() {
+ return !expungedUids.isEmpty();
+ }
+
public void mailboxDeleted() {
// TODO implementation
Added: james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/imap/AbstractTestRename.java
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/imap/AbstractTestRename.java?rev=642803&view=auto
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/imap/AbstractTestRename.java (added)
+++ james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/imap/AbstractTestRename.java Sun Mar 30 12:22:55 2008
@@ -0,0 +1,41 @@
+/****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one *
+ * or more contributor license agreements. See the NOTICE file *
+ * distributed with this work for additional information *
+ * regarding copyright ownership. The ASF licenses this file *
+ * to you under the Apache License, Version 2.0 (the *
+ * "License"); you may not use this file except in compliance *
+ * with the License. You may obtain a copy of the License at *
+ * *
+ * http://www.apache.org/licenses/LICENSE-2.0 *
+ * *
+ * Unless required by applicable law or agreed to in writing, *
+ * software distributed under the License is distributed on an *
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY *
+ * KIND, either express or implied. See the License for the *
+ * specific language governing permissions and limitations *
+ * under the License. *
+ ****************************************************************/
+
+package org.apache.james.test.functional.imap;
+
+import java.util.Locale;
+
+public abstract class AbstractTestRename extends BaseTestSelectedState {
+
+ public AbstractTestRename(HostSystem system) {
+ super(system);
+ }
+
+ public void testRenameUS() throws Exception {
+ scriptTest("Rename", Locale.US);
+ }
+//
+// public void testAppendToSelectedKOREA() throws Exception {
+// scriptTest("AppendToSelected", Locale.KOREA);
+// }
+//
+// public void testAppendToSelectedITALY() throws Exception {
+// scriptTest("AppendToSelected", Locale.ITALY);
+// }
+}
Modified: james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/AppendExpunge.test
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/AppendExpunge.test?rev=642803&r1=642802&r2=642803&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/AppendExpunge.test (original)
+++ james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/AppendExpunge.test Sun Mar 30 12:22:55 2008
@@ -81,6 +81,7 @@
C: A007 EXPUNGE
S: \* 1 EXPUNGE
S: \* 2 EXPUNGE
+S: \* \d+ RECENT
S: A007 OK EXPUNGE completed.
C: A008 STATUS appendexpunge (MESSAGES)
@@ -92,6 +93,7 @@
C: A010 EXPUNGE
S: \* 1 EXPUNGE
+S: \* \d+ RECENT
S: A010 OK EXPUNGE completed.
C: A011 STATUS appendexpunge (MESSAGES)
Modified: james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Rename.test
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Rename.test?rev=642803&r1=642802&r2=642803&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Rename.test (original)
+++ james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Rename.test Sun Mar 30 12:22:55 2008
@@ -38,11 +38,11 @@
S: A4 OK APPEND completed\.
C: A5 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A5 OK Store completed\.
+S: A5 OK STORE completed\.
C: A6 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A6 OK Expunge completed\.
+S: A6 OK EXPUNGE completed\.
C: A7 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -56,11 +56,11 @@
S: A7 OK APPEND completed\.
C: A8 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A8 OK Store completed\.
+S: A8 OK STORE completed\.
C: A9 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A9 OK Expunge completed\.
+S: A9 OK EXPUNGE completed\.
C: A10 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -74,11 +74,11 @@
S: A10 OK APPEND completed\.
C: A11 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A11 OK Store completed\.
+S: A11 OK STORE completed\.
C: A12 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A12 OK Expunge completed\.
+S: A12 OK EXPUNGE completed\.
C: A13 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -92,11 +92,11 @@
S: A13 OK APPEND completed\.
C: A14 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A14 OK Store completed\.
+S: A14 OK STORE completed\.
C: A15 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A15 OK Expunge completed\.
+S: A15 OK EXPUNGE completed\.
C: A16 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -110,11 +110,11 @@
S: A16 OK APPEND completed\.
C: A17 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A17 OK Store completed\.
+S: A17 OK STORE completed\.
C: A18 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A18 OK Expunge completed\.
+S: A18 OK EXPUNGE completed\.
C: A19 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -128,11 +128,11 @@
S: A19 OK APPEND completed\.
C: A20 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A20 OK Store completed\.
+S: A20 OK STORE completed\.
C: A21 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A21 OK Expunge completed\.
+S: A21 OK EXPUNGE completed\.
C: A22 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -146,11 +146,11 @@
S: A22 OK APPEND completed\.
C: A23 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A23 OK Store completed\.
+S: A23 OK STORE completed\.
C: A24 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A24 OK Expunge completed\.
+S: A24 OK EXPUNGE completed\.
C: A25 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -164,11 +164,11 @@
S: A25 OK APPEND completed\.
C: A26 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A26 OK Store completed\.
+S: A26 OK STORE completed\.
C: A27 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A27 OK Expunge completed\.
+S: A27 OK EXPUNGE completed\.
C: A28 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -182,11 +182,11 @@
S: A28 OK APPEND completed\.
C: A29 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A29 OK Store completed\.
+S: A29 OK STORE completed\.
C: A30 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A30 OK Expunge completed\.
+S: A30 OK EXPUNGE completed\.
C: A31 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -200,11 +200,11 @@
S: A31 OK APPEND completed\.
C: A32 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A32 OK Store completed\.
+S: A32 OK STORE completed\.
C: A33 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A33 OK Expunge completed\.
+S: A33 OK EXPUNGE completed\.
C: A34 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -218,11 +218,11 @@
S: A34 OK APPEND completed\.
C: A35 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A35 OK Store completed\.
+S: A35 OK STORE completed\.
C: A36 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A36 OK Expunge completed\.
+S: A36 OK EXPUNGE completed\.
C: A37 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -236,11 +236,11 @@
S: A37 OK APPEND completed\.
C: A38 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A38 OK Store completed\.
+S: A38 OK STORE completed\.
C: A39 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A39 OK Expunge completed\.
+S: A39 OK EXPUNGE completed\.
C: A40 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -254,11 +254,11 @@
S: A40 OK APPEND completed\.
C: A41 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A41 OK Store completed\.
+S: A41 OK STORE completed\.
C: A42 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A42 OK Expunge completed\.
+S: A42 OK EXPUNGE completed\.
C: A43 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -272,11 +272,11 @@
S: A43 OK APPEND completed\.
C: A44 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A44 OK Store completed\.
+S: A44 OK STORE completed\.
C: A45 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A45 OK Expunge completed\.
+S: A45 OK EXPUNGE completed\.
C: A46 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -290,11 +290,11 @@
S: A46 OK APPEND completed\.
C: A47 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A47 OK Store completed\.
+S: A47 OK STORE completed\.
C: A48 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A48 OK Expunge completed\.
+S: A48 OK EXPUNGE completed\.
C: A49 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -308,11 +308,11 @@
S: A49 OK APPEND completed\.
C: A50 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A50 OK Store completed\.
+S: A50 OK STORE completed\.
C: A51 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A51 OK Expunge completed\.
+S: A51 OK EXPUNGE completed\.
C: A52 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -326,11 +326,11 @@
S: A52 OK APPEND completed\.
C: A53 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A53 OK Store completed\.
+S: A53 OK STORE completed\.
C: A54 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A54 OK Expunge completed\.
+S: A54 OK EXPUNGE completed\.
C: A55 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -344,11 +344,11 @@
S: A55 OK APPEND completed\.
C: A56 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A56 OK Store completed\.
+S: A56 OK STORE completed\.
C: A57 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A57 OK Expunge completed\.
+S: A57 OK EXPUNGE completed\.
C: A58 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -362,11 +362,11 @@
S: A58 OK APPEND completed\.
C: A59 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A59 OK Store completed\.
+S: A59 OK STORE completed\.
C: A60 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A60 OK Expunge completed\.
+S: A60 OK EXPUNGE completed\.
C: A61 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -380,11 +380,11 @@
S: A61 OK APPEND completed\.
C: A62 STORE 1 FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Deleted \\Recent\)\)
-S: A62 OK Store completed\.
+S: A62 OK STORE completed\.
C: A63 EXPUNGE
S: \* 1 EXPUNGE
S: \* 0 RECENT
-S: A63 OK Expunge completed\.
+S: A63 OK EXPUNGE completed\.
C: A64 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
C: To: Samual Smith <sa...@example.org>
@@ -1881,189 +1881,189 @@
S: \* 7 FETCH \(FLAGS \(\\Flagged \\Recent\)\)
S: \* 8 FETCH \(FLAGS \(\\Flagged \\Recent\)\)
S: \* 9 FETCH \(FLAGS \(\\Flagged \\Recent\)\)
-S: A83 OK Store completed\.
+S: A83 OK STORE completed\.
C: A84 STORE 1:4 +FLAGS (\ANSWERED)
S: \* 1 FETCH \(FLAGS \(\\Answered \\Flagged \\Recent\)\)
S: \* 2 FETCH \(FLAGS \(\\Answered \\Flagged \\Recent\)\)
S: \* 3 FETCH \(FLAGS \(\\Answered \\Flagged \\Recent\)\)
S: \* 4 FETCH \(FLAGS \(\\Answered \\Flagged \\Recent\)\)
-S: A84 OK Store completed\.
+S: A84 OK STORE completed\.
C: A85 STORE 10:14 +FLAGS (\ANSWERED)
S: \* 10 FETCH \(FLAGS \(\\Answered \\Recent\)\)
S: \* 11 FETCH \(FLAGS \(\\Answered \\Recent\)\)
S: \* 12 FETCH \(FLAGS \(\\Answered \\Recent\)\)
S: \* 13 FETCH \(FLAGS \(\\Answered \\Recent\)\)
S: \* 14 FETCH \(FLAGS \(\\Answered \\Recent\)\)
-S: A85 OK Store completed\.
+S: A85 OK STORE completed\.
C: A86 STORE 1:2 +FLAGS (\SEEN)
S: \* 1 FETCH \(FLAGS \(\\Answered \\Flagged \\Recent \\Seen\)\)
S: \* 2 FETCH \(FLAGS \(\\Answered \\Flagged \\Recent \\Seen\)\)
-S: A86 OK Store completed\.
+S: A86 OK STORE completed\.
C: A87 STORE 5:7 +FLAGS (\SEEN)
S: \* 5 FETCH \(FLAGS \(\\Flagged \\Recent \\Seen\)\)
S: \* 6 FETCH \(FLAGS \(\\Flagged \\Recent \\Seen\)\)
S: \* 7 FETCH \(FLAGS \(\\Flagged \\Recent \\Seen\)\)
-S: A87 OK Store completed\.
+S: A87 OK STORE completed\.
C: A88 STORE 10:12 +FLAGS (\SEEN)
S: \* 10 FETCH \(FLAGS \(\\Answered \\Recent \\Seen\)\)
S: \* 11 FETCH \(FLAGS \(\\Answered \\Recent \\Seen\)\)
S: \* 12 FETCH \(FLAGS \(\\Answered \\Recent \\Seen\)\)
-S: A88 OK Store completed\.
+S: A88 OK STORE completed\.
C: A89 STORE 15:17 +FLAGS (\SEEN)
S: \* 15 FETCH \(FLAGS \(\\Recent \\Seen\)\)
S: \* 16 FETCH \(FLAGS \(\\Recent \\Seen\)\)
S: \* 17 FETCH \(FLAGS \(\\Recent \\Seen\)\)
-S: A89 OK Store completed\.
+S: A89 OK STORE completed\.
C: A90 STORE 1 +FLAGS (\DRAFT)
S: \* 1 FETCH \(FLAGS \(\\Answered \\Draft \\Flagged \\Recent \\Seen\)\)
-S: A90 OK Store completed\.
+S: A90 OK STORE completed\.
C: A91 STORE 3 +FLAGS (\DRAFT)
S: \* 3 FETCH \(FLAGS \(\\Answered \\Draft \\Flagged \\Recent\)\)
-S: A91 OK Store completed\.
+S: A91 OK STORE completed\.
C: A92 STORE 5 +FLAGS (\DRAFT)
S: \* 5 FETCH \(FLAGS \(\\Draft \\Flagged \\Recent \\Seen\)\)
-S: A92 OK Store completed\.
+S: A92 OK STORE completed\.
C: A93 STORE 7 +FLAGS (\DRAFT)
S: \* 7 FETCH \(FLAGS \(\\Draft \\Flagged \\Recent \\Seen\)\)
-S: A93 OK Store completed\.
+S: A93 OK STORE completed\.
C: A94 STORE 9 +FLAGS (\DRAFT)
S: \* 9 FETCH \(FLAGS \(\\Draft \\Flagged \\Recent\)\)
-S: A94 OK Store completed\.
+S: A94 OK STORE completed\.
C: A95 STORE 11 +FLAGS (\DRAFT)
S: \* 11 FETCH \(FLAGS \(\\Answered \\Draft \\Recent \\Seen\)\)
-S: A95 OK Store completed\.
+S: A95 OK STORE completed\.
C: A96 STORE 13 +FLAGS (\DRAFT)
S: \* 13 FETCH \(FLAGS \(\\Answered \\Draft \\Recent\)\)
-S: A96 OK Store completed\.
+S: A96 OK STORE completed\.
C: A97 STORE 15 +FLAGS (\DRAFT)
S: \* 15 FETCH \(FLAGS \(\\Draft \\Recent \\Seen\)\)
-S: A97 OK Store completed\.
+S: A97 OK STORE completed\.
C: A98 STORE 17 +FLAGS (\DRAFT)
S: \* 17 FETCH \(FLAGS \(\\Draft \\Recent \\Seen\)\)
-S: A98 OK Store completed\.
+S: A98 OK STORE completed\.
C: A99 STORE 1:3 +FLAGS (\DELETED)
S: \* 1 FETCH \(FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Recent \\Seen\)\)
S: \* 2 FETCH \(FLAGS \(\\Answered \\Deleted \\Flagged \\Recent \\Seen\)\)
S: \* 3 FETCH \(FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Recent\)\)
-S: A99 OK Store completed\.
+S: A99 OK STORE completed\.
C: A100 SELECT testmailbox
S: \* FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)
S: \* 19 EXISTS
-S: \* 0 RECENT
-S: \* OK \[UNSEEN 3\](.)*
+S: \* 19 RECENT
S: \* OK \[UIDVALIDITY \d+\]
+S: \* OK \[UNSEEN 3\](.)*
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A100 OK \[READ-WRITE\] SELECT completed\.
C: A101 FETCH 1:* (FLAGS UID BODY.PEEK[HEADER.FIELDS (DATE FROM TO ORIGINATOR X-LIST)])
-S: \* 1 FETCH \(FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\) UID 21 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{130\}
+S: \* 1 FETCH \(FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Recent \\Seen\) UID 21 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{130\}
S: From: Timothy Tayler <timothy@example\.org>
S: To: Samual Smith <samual@example\.org>
S: Date: Thu, 14 Feb 2008 12:00:00 \+0000 \(GMT\)
S:
S: \)
-S: \* 2 FETCH \(FLAGS \(\\Answered \\Deleted \\Flagged \\Seen\) UID 22 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{162\}
+S: \* 2 FETCH \(FLAGS \(\\Answered \\Deleted \\Flagged \\Recent \\Seen\) UID 22 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{162\}
S: Date: Sat, 2 Feb 2008 13:14:19 \+0000
S: From: "Robert Burrell Donkin" <robertburrelldonkin@gmail\.com>
S: To: "James Developers List" <server-dev@james\.apache\.org>
S:
S: \)
-S: \* 3 FETCH \(FLAGS \(\\Answered \\Deleted \\Draft \\Flagged\) UID 23 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{130\}
+S: \* 3 FETCH \(FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Recent\) UID 23 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{130\}
S: From: Timothy Tayler <timothy@example\.org>
S: To: Samual Smith <samual@example\.org>
S: Date: Thu, 14 Feb 2008 12:00:00 \+0000 \(GMT\)
S:
S: \)
-S: \* 4 FETCH \(FLAGS \(\\Answered \\Flagged\) UID 24 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{130\}
+S: \* 4 FETCH \(FLAGS \(\\Answered \\Flagged \\Recent\) UID 24 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{130\}
S: From: Timothy Tayler <timothy@example\.org>
S: To: Samual Smith <samual@example\.org>
S: Date: Thu, 14 Feb 2008 12:00:00 \+0000 \(GMT\)
S:
S: \)
-S: \* 5 FETCH \(FLAGS \(\\Draft \\Flagged \\Seen\) UID 25 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{130\}
+S: \* 5 FETCH \(FLAGS \(\\Draft \\Flagged \\Recent \\Seen\) UID 25 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{130\}
S: From: Timothy Tayler <timothy@example\.org>
S: To: Samual Smith <samual@example\.org>
S: Date: Thu, 14 Feb 2008 12:00:00 \+0000 \(GMT\)
S:
S: \)
-S: \* 6 FETCH \(FLAGS \(\\Flagged \\Seen\) UID 26 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{116\}
+S: \* 6 FETCH \(FLAGS \(\\Flagged \\Recent \\Seen\) UID 26 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{116\}
S: From: John Smith <john@example\.org>
S: To: Timothy Taylor <tim@example\.org>
S: Date: Sat, 23 Feb 2008 07:48:03 -0600
S:
S: \)
-S: \* 7 FETCH \(FLAGS \(\\Draft \\Flagged \\Seen\) UID 27 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{116\}
+S: \* 7 FETCH \(FLAGS \(\\Draft \\Flagged \\Recent \\Seen\) UID 27 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{116\}
S: From: John Smith <john@example\.org>
S: To: Timothy Taylor <tim@example\.org>
S: Date: Sat, 23 Feb 2008 07:48:03 -0600
S:
S: \)
-S: \* 8 FETCH \(FLAGS \(\\Flagged\) UID 28 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{130\}
+S: \* 8 FETCH \(FLAGS \(\\Flagged \\Recent\) UID 28 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{130\}
S: From: Timothy Tayler <timothy@example\.org>
S: To: Samual Smith <samual@example\.org>
S: Date: Thu, 14 Feb 2008 12:00:00 \+0000 \(GMT\)
S:
S: \)
-S: \* 9 FETCH \(FLAGS \(\\Draft \\Flagged\) UID 29 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{167\}
+S: \* 9 FETCH \(FLAGS \(\\Draft \\Flagged \\Recent\) UID 29 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{167\}
S: From: "Brian G\. Hutton" <brian@example\.org>
S: To: Timothy Taylor <tim@example\.org>, faith@example\.org, Huh\? <sam@example\.org>
S: Date: Sat, 23 Feb 2008 07:48:03 -0600
S:
S: \)
-S: \* 10 FETCH \(FLAGS \(\\Answered \\Seen\) UID 30 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{172\}
+S: \* 10 FETCH \(FLAGS \(\\Answered \\Recent \\Seen\) UID 30 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{172\}
S: Date: Tue, 11 Mar 2008 18:53:38 \+0000
S: From: "Robert Burrell Donkin" <robertburrelldonkin@gmail\.com>
S: To: "Robert Burrell Donkin" <robertburrelldonkin@blueyonder\.co\.uk>
S:
S: \)
-S: \* 11 FETCH \(FLAGS \(\\Answered \\Draft \\Seen\) UID 31 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{144\}
+S: \* 11 FETCH \(FLAGS \(\\Answered \\Draft \\Recent \\Seen\) UID 31 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{144\}
S: From: Robert Burrell Donkin <robertburrelldonkin@blueyonder\.co\.uk>
S: To: robertburrelldonkin@gmail\.com
S: Date: Tue, 11 Mar 2008 18:41:40 \+0000
S:
S: \)
-S: \* 12 FETCH \(FLAGS \(\\Answered \\Seen\) UID 32 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{144\}
+S: \* 12 FETCH \(FLAGS \(\\Answered \\Recent \\Seen\) UID 32 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{144\}
S: From: Robert Burrell Donkin <robertburrelldonkin@blueyonder\.co\.uk>
S: To: robertburrelldonkin@gmail\.com
S: Date: Tue, 11 Mar 2008 18:45:07 \+0000
S:
S: \)
-S: \* 13 FETCH \(FLAGS \(\\Answered \\Draft\) UID 33 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{114\}
+S: \* 13 FETCH \(FLAGS \(\\Answered \\Draft \\Recent\) UID 33 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{114\}
S: From: Samual Smith <sam@example\.org>
S: To: John Smith <john@example\.org>
S: Date: Sat, 23 Feb 2008 18:15:18 \+0000
S:
S: \)
-S: \* 14 FETCH \(FLAGS \(\\Answered\) UID 34 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{123\}
+S: \* 14 FETCH \(FLAGS \(\\Answered \\Recent\) UID 34 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{123\}
S: From: Samual Webster <webster@example\.org>
S: To: Timothy Taylor <tim@example\.org>
S: Date: Sat, 23 Feb 2008 14:10:00 \+0000
S:
S: \)
-S: \* 15 FETCH \(FLAGS \(\\Draft \\Seen\) UID 35 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{123\}
+S: \* 15 FETCH \(FLAGS \(\\Draft \\Recent \\Seen\) UID 35 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{123\}
S: From: Samual Webster <webster@example\.org>
S: To: Timothy Taylor <tim@example\.org>
S: Date: Sat, 23 Feb 2008 18:26:56 \+0000
S:
S: \)
-S: \* 16 FETCH \(FLAGS \(\\Seen\) UID 36 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{146\}
+S: \* 16 FETCH \(FLAGS \(\\Recent \\Seen\) UID 36 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{146\}
S: From: Timothy Taylor <tim@example\.org>
S: To: Alpha Group:John Smith <john@example\.org>, sid@example\.org;
S: Date: Sat, 23 Feb 2008 18:12:13 \+0000
S:
S: \)
-S: \* 17 FETCH \(FLAGS \(\\Draft \\Seen\) UID 37 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{126\}
+S: \* 17 FETCH \(FLAGS \(\\Draft \\Recent \\Seen\) UID 37 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{126\}
S: Date: Tue, 11 Mar 2008 11:53:38 -0700
S: From: Robert Burrell Donkin <robertburrelldonkin@gmail\.com>
S: To: rdonkin@apache\.org
S:
S: \)
-S: \* 18 FETCH \(FLAGS \(\) UID 38 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{172\}
+S: \* 18 FETCH \(FLAGS \(\\Recent\) UID 38 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{172\}
S: Date: Tue, 11 Mar 2008 18:53:38 \+0000
S: From: "Robert Burrell Donkin" <robertburrelldonkin@gmail\.com>
S: To: "Robert Burrell Donkin" <robertburrelldonkin@blueyonder\.co\.uk>
S:
S: \)
-S: \* 19 FETCH \(FLAGS \(\) UID 39 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{172\}
+S: \* 19 FETCH \(FLAGS \(\\Recent\) UID 39 BODY\[HEADER\.FIELDS \(DATE FROM TO ORIGINATOR X-LIST\)\] \{172\}
S: Date: Tue, 11 Mar 2008 18:53:38 \+0000
S: From: "Robert Burrell Donkin" <robertburrelldonkin@gmail\.com>
S: To: "Robert Burrell Donkin" <robertburrelldonkin@blueyonder\.co\.uk>
@@ -2343,13 +2343,13 @@
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A106 OK \[READ-WRITE\] SELECT completed\.
C: A107 RENAME testmailbox moved
-S: A107 OK Rename completed\.
+S: A107 OK RENAME completed\.
C: A108 SELECT moved
S: \* FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)
S: \* 19 EXISTS
S: \* 0 RECENT
-S: \* OK \[UNSEEN 3\](.)*
S: \* OK \[UIDVALIDITY \d+\]
+S: \* OK \[UNSEEN 3\](.)*
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A108 OK \[READ-WRITE\] SELECT completed\.
C: A109 FETCH 1:* (FLAGS UID BODY.PEEK[HEADER.FIELDS (DATE FROM TO ORIGINATOR X-LIST)])
@@ -2469,25 +2469,25 @@
S: \)
S: A109 OK FETCH completed\.
C: A110 SELECT testmailbox
-S: A110 NO Mailbox doesn't exist: testmailbox
+S: A110 NO (.)*
C: A111 RENAME other base
-S: A111 NO Mailbox exists\.
+S: A111 NO (.)*
C: A112 SELECT testmailbox
-S: A112 NO Mailbox doesn't exist: testmailbox
+S: A112 NO (.)*
C: A113 SELECT moved
S: \* FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)
S: \* 19 EXISTS
S: \* 0 RECENT
-S: \* OK \[UNSEEN 3\](.)*
S: \* OK \[UIDVALIDITY \d+\]
+S: \* OK \[UNSEEN 3\](.)*
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A113 OK \[READ-WRITE\] SELECT completed\.
C: A114 SELECT other
S: \* FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)
S: \* 1 EXISTS
-S: \* 1 RECENT
-S: \* OK \[UNSEEN 1\](.)*
+S: \* 0 RECENT
S: \* OK \[UIDVALIDITY \d+\]
+S: \* OK \[UNSEEN 1\](.)*
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A114 OK \[READ-WRITE\] SELECT completed\.
C: A115 SELECT base
@@ -2498,29 +2498,29 @@
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A115 OK \[READ-WRITE\] SELECT completed\.
C: A116 SELECT BOGUS
-S: A116 NO Mailbox doesn't exist: BOGUS
+S: A116 NO (.)*
C: A117 SELECT WHATEVER
-S: A117 NO Mailbox doesn't exist: WHATEVER
+S: A117 NO (.)*
C: A118 RENAME other testmailbox
-S: A118 OK Rename completed\.
+S: A118 OK RENAME completed\.
C: A119 SELECT testmailbox
S: \* FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)
S: \* 1 EXISTS
S: \* 0 RECENT
-S: \* OK \[UNSEEN 1\](.)*
S: \* OK \[UIDVALIDITY \d+\]
+S: \* OK \[UNSEEN 1\](.)*
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A119 OK \[READ-WRITE\] SELECT completed\.
C: A120 SELECT moved
S: \* FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)
S: \* 19 EXISTS
S: \* 0 RECENT
-S: \* OK \[UNSEEN 3\](.)*
S: \* OK \[UIDVALIDITY \d+\]
+S: \* OK \[UNSEEN 3\](.)*
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A120 OK \[READ-WRITE\] SELECT completed\.
C: A121 SELECT other
-S: A121 NO Mailbox doesn't exist: other
+S: A121 NO (.)*
C: A122 SELECT base
S: \* FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)
S: \* 0 EXISTS
@@ -2529,35 +2529,35 @@
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A122 OK \[READ-WRITE\] SELECT completed\.
C: A123 SELECT BOGUS
-S: A123 NO Mailbox doesn't exist: BOGUS
+S: A123 NO (.)*
C: A124 SELECT WHATEVER
-S: A124 NO Mailbox doesn't exist: WHATEVER
+S: A124 NO (.)*
C: A125 RENAME BOGUS WHATEVER
-S: A125 NO Mailbox doesn't exist: BOGUS
+S: A125 NO (.)*
C: A126 RENAME testmailbox INBOX
-S: A126 NO Mailbox exists\.
+S: A126 NO (.)*
C: A127 RENAME testmailbox inbox
-S: A127 NO Mailbox exists\.
+S: A127 NO (.)*
C: A128 RENAME testmailbox Inbox
-S: A128 NO Mailbox exists\.
+S: A128 NO (.)*
C: A129 SELECT testmailbox
S: \* FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)
S: \* 1 EXISTS
S: \* 0 RECENT
-S: \* OK \[UNSEEN 1\](.)*
S: \* OK \[UIDVALIDITY \d+\]
+S: \* OK \[UNSEEN 1\](.)*
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A129 OK \[READ-WRITE\] SELECT completed\.
C: A130 SELECT moved
S: \* FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)
S: \* 19 EXISTS
S: \* 0 RECENT
-S: \* OK \[UNSEEN 3\](.)*
S: \* OK \[UIDVALIDITY \d+\]
+S: \* OK \[UNSEEN 3\](.)*
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A130 OK \[READ-WRITE\] SELECT completed\.
C: A131 SELECT other
-S: A131 NO Mailbox doesn't exist: other
+S: A131 (.)*
C: A132 SELECT base
S: \* FLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)
S: \* 0 EXISTS
@@ -2566,20 +2566,20 @@
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A132 OK \[READ-WRITE\] SELECT completed\.
C: A133 SELECT BOGUS
-S: A133 NO Mailbox doesn't exist: BOGUS
+S: A133 NO (.)*
C: A134 SELECT WHATEVER
-S: A134 NO Mailbox doesn't exist: WHATEVER
+S: A134 NO (.)*
C: A135 DELETE BOGUS
-S: A135 NO Mailbox doesn't exist: BOGUS
+S: A135 NO (.)*
C: A136 DELETE WHATEVER
-S: A136 NO Mailbox doesn't exist: WHATEVER
+S: A136 NO (.)*
C: A137 DELETE testmailbox
S: A137 OK DELETE completed\.
C: A138 DELETE base
S: A138 OK DELETE completed\.
C: A139 DELETE other
-S: A139 NO Mailbox doesn't exist: other
+S: A139 NO (.)*
C: A140 DELETE moved
S: A140 OK DELETE completed\.
C: A141 DELETE moved
-S: A141 NO Mailbox doesn't exist: moved
+S: A141 NO (.)*
Modified: james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/UidSearchAtoms.test
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/UidSearchAtoms.test?rev=642803&r1=642802&r2=642803&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/UidSearchAtoms.test (original)
+++ james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/UidSearchAtoms.test Sun Mar 30 12:22:55 2008
@@ -41,7 +41,7 @@
S: A5 OK STORE completed\.
C: A6 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A6 OK EXPUNGE completed\.
C: A7 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -59,7 +59,7 @@
S: A8 OK STORE completed\.
C: A9 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A9 OK EXPUNGE completed\.
C: A10 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -77,7 +77,7 @@
S: A11 OK STORE completed\.
C: A12 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A12 OK EXPUNGE completed\.
C: A13 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -95,7 +95,7 @@
S: A14 OK STORE completed\.
C: A15 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A15 OK EXPUNGE completed\.
C: A16 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -113,7 +113,7 @@
S: A17 OK STORE completed\.
C: A18 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A18 OK EXPUNGE completed\.
C: A19 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -131,7 +131,7 @@
S: A20 OK STORE completed\.
C: A21 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A21 OK EXPUNGE completed\.
C: A22 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -149,7 +149,7 @@
S: A23 OK STORE completed\.
C: A24 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A24 OK EXPUNGE completed\.
C: A25 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -167,7 +167,7 @@
S: A26 OK STORE completed\.
C: A27 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A27 OK EXPUNGE completed\.
C: A28 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -185,7 +185,7 @@
S: A29 OK STORE completed\.
C: A30 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A30 OK EXPUNGE completed\.
C: A31 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -203,7 +203,7 @@
S: A32 OK STORE completed\.
C: A33 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A33 OK EXPUNGE completed\.
C: A34 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -221,7 +221,7 @@
S: A35 OK STORE completed\.
C: A36 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A36 OK EXPUNGE completed\.
C: A37 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -239,7 +239,7 @@
S: A38 OK STORE completed\.
C: A39 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A39 OK EXPUNGE completed\.
C: A40 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -257,7 +257,7 @@
S: A41 OK STORE completed\.
C: A42 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A42 OK EXPUNGE completed\.
C: A43 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -275,7 +275,7 @@
S: A44 OK STORE completed\.
C: A45 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A45 OK EXPUNGE completed\.
C: A46 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -293,7 +293,7 @@
S: A47 OK STORE completed\.
C: A48 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A48 OK EXPUNGE completed\.
C: A49 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -311,7 +311,7 @@
S: A50 OK STORE completed\.
C: A51 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A51 OK EXPUNGE completed\.
C: A52 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -329,7 +329,7 @@
S: A53 OK STORE completed\.
C: A54 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A54 OK EXPUNGE completed\.
C: A55 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -347,7 +347,7 @@
S: A56 OK STORE completed\.
C: A57 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A57 OK EXPUNGE completed\.
C: A58 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -365,7 +365,7 @@
S: A59 OK STORE completed\.
C: A60 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A60 OK EXPUNGE completed\.
C: A61 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -383,7 +383,7 @@
S: A62 OK STORE completed\.
C: A63 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A63 OK EXPUNGE completed\.
C: A64 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
Modified: james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/UidSearchCombinations.test
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/UidSearchCombinations.test?rev=642803&r1=642802&r2=642803&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/UidSearchCombinations.test (original)
+++ james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/UidSearchCombinations.test Sun Mar 30 12:22:55 2008
@@ -41,7 +41,7 @@
S: A5 OK STORE completed\.
C: A6 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A6 OK EXPUNGE completed\.
C: A7 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -59,7 +59,7 @@
S: A8 OK STORE completed\.
C: A9 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A9 OK EXPUNGE completed\.
C: A10 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -77,7 +77,7 @@
S: A11 OK STORE completed\.
C: A12 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A12 OK EXPUNGE completed\.
C: A13 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -95,7 +95,7 @@
S: A14 OK STORE completed\.
C: A15 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A15 OK EXPUNGE completed\.
C: A16 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -113,7 +113,7 @@
S: A17 OK STORE completed\.
C: A18 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A18 OK EXPUNGE completed\.
C: A19 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -131,7 +131,7 @@
S: A20 OK STORE completed\.
C: A21 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A21 OK EXPUNGE completed\.
C: A22 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -149,7 +149,7 @@
S: A23 OK STORE completed\.
C: A24 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A24 OK EXPUNGE completed\.
C: A25 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -167,7 +167,7 @@
S: A26 OK STORE completed\.
C: A27 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A27 OK EXPUNGE completed\.
C: A28 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -185,7 +185,7 @@
S: A29 OK STORE completed\.
C: A30 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A30 OK EXPUNGE completed\.
C: A31 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -203,7 +203,7 @@
S: A32 OK STORE completed\.
C: A33 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A33 OK EXPUNGE completed\.
C: A34 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -221,7 +221,7 @@
S: A35 OK STORE completed\.
C: A36 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A36 OK EXPUNGE completed\.
C: A37 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -239,7 +239,7 @@
S: A38 OK STORE completed\.
C: A39 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A39 OK EXPUNGE completed\.
C: A40 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -257,7 +257,7 @@
S: A41 OK STORE completed\.
C: A42 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A42 OK EXPUNGE completed\.
C: A43 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -275,7 +275,7 @@
S: A44 OK STORE completed\.
C: A45 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A45 OK EXPUNGE completed\.
C: A46 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -293,7 +293,7 @@
S: A47 OK STORE completed\.
C: A48 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A48 OK EXPUNGE completed\.
C: A49 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -311,7 +311,7 @@
S: A50 OK STORE completed\.
C: A51 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A51 OK EXPUNGE completed\.
C: A52 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -329,7 +329,7 @@
S: A53 OK STORE completed\.
C: A54 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A54 OK EXPUNGE completed\.
C: A55 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -347,7 +347,7 @@
S: A56 OK STORE completed\.
C: A57 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A57 OK EXPUNGE completed\.
C: A58 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -365,7 +365,7 @@
S: A59 OK STORE completed\.
C: A60 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A60 OK EXPUNGE completed\.
C: A61 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
@@ -383,7 +383,7 @@
S: A62 OK STORE completed\.
C: A63 EXPUNGE
S: \* 1 EXPUNGE
-#S: \* 0 RECENT
+S: \* 0 RECENT
S: A63 OK EXPUNGE completed\.
C: A64 APPEND testmailbox {185+}
C: From: Timothy Tayler <ti...@example.org>
Modified: james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/process/SelectedImapMailbox.java
URL: http://svn.apache.org/viewvc/james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/process/SelectedImapMailbox.java?rev=642803&r1=642802&r2=642803&view=diff
==============================================================================
--- james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/process/SelectedImapMailbox.java (original)
+++ james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/process/SelectedImapMailbox.java Sun Mar 30 12:22:55 2008
@@ -32,9 +32,9 @@
public abstract long uid(int i);
- public void addRecent(long uid);
+ public boolean addRecent(long uid);
- public void removeRecent(long uid);
+ public boolean removeRecent(long uid);
public long[] getRecent();
Modified: james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/SelectedMailboxSessionImpl.java
URL: http://svn.apache.org/viewvc/james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/SelectedMailboxSessionImpl.java?rev=642803&r1=642802&r2=642803&view=diff
==============================================================================
--- james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/SelectedMailboxSessionImpl.java (original)
+++ james/server/trunk/imap-mailbox-processor-function/src/main/java/org/apache/james/imapserver/processor/base/SelectedMailboxSessionImpl.java Sun Mar 30 12:22:55 2008
@@ -54,12 +54,14 @@
private final UidToMsnConverter converter;
private final MailboxSession mailboxSession;
private final Set recentUids;
+ private boolean recentUidRemoved;
public SelectedMailboxSessionImpl(ImapMailbox mailbox, List uids,
MailboxSession mailboxSession) throws MailboxManagerException {
this.mailbox = mailbox;
this.mailboxSession = mailboxSession;
recentUids = new TreeSet();
+ recentUidRemoved = false;
final long sessionId = mailboxSession.getSessionId();
events = new MailboxEventAnalyser(sessionId);
// Ignore events from our session
@@ -90,23 +92,22 @@
public List unsolicitedResponses(boolean omitExpunged, boolean useUid) {
final List results = new ArrayList();
final ImapMailbox mailbox = getMailbox();
+ final boolean sizeChanged = isSizeChanged();
// New message response
- if (isSizeChanged()) {
+ if (sizeChanged) {
addExistsResponses(results, mailbox);
- addRecentResponses(results, mailbox);
}
-
- // Message updates
- // TODO: slow to check flags every time
- // TODO: add conditional to selected mailbox
- addFlagsResponses(results, useUid, mailbox);
-
// Expunged messages
if (!omitExpunged) {
- // TODO: slow to check flags every time
- // TODO: add conditional to selected mailbox
addExpungedResponses(results, mailbox);
}
+ if(sizeChanged || (recentUidRemoved && !omitExpunged)) {
+ addRecentResponses(results, mailbox);
+ recentUidRemoved = false;
+ }
+
+ // Message updates
+ addFlagsResponses(results, useUid, mailbox);
events.reset();
return results;
@@ -195,12 +196,17 @@
return converter.getUid(msn);
}
- public void removeRecent(long uid) {
- recentUids.remove(new Long(uid));
+ public boolean removeRecent(long uid) {
+ final boolean result = recentUids.remove(new Long(uid));
+ if (result) {
+ recentUidRemoved = true;
+ }
+ return result;
}
- public void addRecent(long uid) {
- recentUids.add(new Long(uid));
+ public boolean addRecent(long uid) {
+ final boolean result = recentUids.add(new Long(uid));
+ return result;
}
public long[] getRecent() {
@@ -226,7 +232,7 @@
private void checkExpungedRecents() {
for(final Iterator it = events.expungedUids();it.hasNext();) {
final Long uid = (Long) it.next();
- recentUids.remove(uid);
+ removeRecent(uid.longValue());
}
}
Added: james/server/trunk/phoenix-deployment/src/test/org/apache/james/experimental/imapserver/ExperimentalRenameTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/phoenix-deployment/src/test/org/apache/james/experimental/imapserver/ExperimentalRenameTest.java?rev=642803&view=auto
==============================================================================
--- james/server/trunk/phoenix-deployment/src/test/org/apache/james/experimental/imapserver/ExperimentalRenameTest.java (added)
+++ james/server/trunk/phoenix-deployment/src/test/org/apache/james/experimental/imapserver/ExperimentalRenameTest.java Sun Mar 30 12:22:55 2008
@@ -0,0 +1,30 @@
+/****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one *
+ * or more contributor license agreements. See the NOTICE file *
+ * distributed with this work for additional information *
+ * regarding copyright ownership. The ASF licenses this file *
+ * to you under the Apache License, Version 2.0 (the *
+ * "License"); you may not use this file except in compliance *
+ * with the License. You may obtain a copy of the License at *
+ * *
+ * http://www.apache.org/licenses/LICENSE-2.0 *
+ * *
+ * Unless required by applicable law or agreed to in writing, *
+ * software distributed under the License is distributed on an *
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY *
+ * KIND, either express or implied. See the License for the *
+ * specific language governing permissions and limitations *
+ * under the License. *
+ ****************************************************************/
+
+package org.apache.james.experimental.imapserver;
+
+import org.apache.james.test.functional.imap.AbstractTestRename;
+
+public class ExperimentalRenameTest extends AbstractTestRename {
+
+ public ExperimentalRenameTest() throws Exception {
+ super(HostSystemFactory.createStandardImap());
+ }
+
+}
Modified: james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java
URL: http://svn.apache.org/viewvc/james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java?rev=642803&r1=642802&r2=642803&view=diff
==============================================================================
--- james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java (original)
+++ james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java Sun Mar 30 12:22:55 2008
@@ -182,9 +182,9 @@
}
mr.setName(to);
mr.save();
+ managers.remove(from);
// rename submailbox
-
Criteria c = new Criteria();
c.add(MailboxRowPeer.NAME,
(Object) (from + HIERARCHY_DELIMITER + "%"),
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org