Author: rdonkin
Date: Sat Jan 24 08:35:45 2009
New Revision: 737317
URL: http://svn.apache.org/viewvc?rev=737317&view=rev
Log:
Fetch FLAGS every time
Modified:
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MessageResult.java
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/FetchGroupImpl.java
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MessageResultImpl.java
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MessageResultUtils.java
james/protocols/imap/trunk/mailbox/src/test/java/org/apache/james/imap/mailbox/MessageResultImplIncludedResultsTest.java
james/protocols/imap/trunk/mailbox/src/test/java/org/apache/james/imap/mailbox/MessageResultUtilsIsIncludedTest.java
james/protocols/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/imap4rev1/AbstractMailboxProcessor.java
james/protocols/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/imap4rev1/fetch/FetchProcessor.java
james/protocols/imap/trunk/store/src/main/java/org/apache/james/imap/store/ResultUtils.java
james/protocols/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/MessageRowUtils.java
james/protocols/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailbox.java
Modified:
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MessageResult.java
URL:
http://svn.apache.org/viewvc/james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MessageResult.java?rev=737317&r1=737316&r2=737317&view=diff
==============================================================================
---
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MessageResult.java
(original)
+++
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MessageResult.java
Sat Jan 24 08:35:45 2009
@@ -79,8 +79,6 @@
*/
public static final int MIME_DESCRIPTOR = 0x01;
- public static final int FLAGS = 0x80;
-
public static final int HEADERS = 0x100;
public static final int FULL_CONTENT = 0x200;
@@ -98,7 +96,6 @@
* @see #MINIMAL
* @see #MIME_MESSAGE
* @see #KEY
- * @see #FLAGS
* @see #HEADERS
* @see #FULL_CONTENT
* @see #BODY_CONTENT
@@ -128,7 +125,6 @@
* @see #MINIMAL
* @see #MIME_MESSAGE
* @see #KEY
- * @see #FLAGS
* @see #HEADERS
* @see #FULL_CONTENT
* @see #BODY_CONTENT
Modified:
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/FetchGroupImpl.java
URL:
http://svn.apache.org/viewvc/james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/FetchGroupImpl.java?rev=737317&r1=737316&r2=737317&view=diff
==============================================================================
---
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/FetchGroupImpl.java
(original)
+++
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/FetchGroupImpl.java
Sat Jan 24 08:35:45 2009
@@ -35,9 +35,6 @@
public static final MessageResult.FetchGroup MINIMAL = new FetchGroupImpl(
MessageResult.FetchGroup.MINIMAL);
- public static final MessageResult.FetchGroup FLAGS = new FetchGroupImpl(
- MessageResult.FetchGroup.FLAGS);
-
public static final MessageResult.FetchGroup HEADERS = new FetchGroupImpl(
MessageResult.FetchGroup.HEADERS);
Modified:
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MessageResultImpl.java
URL:
http://svn.apache.org/viewvc/james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MessageResultImpl.java?rev=737317&r1=737316&r2=737317&view=diff
==============================================================================
---
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MessageResultImpl.java
(original)
+++
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MessageResultImpl.java
Sat Jan 24 08:35:45 2009
@@ -31,7 +31,6 @@
import org.apache.james.imap.mailbox.MailboxException;
import org.apache.james.imap.mailbox.MessageResult;
-import org.apache.james.imap.mailbox.MessageResult.Header;
/**
* Bean based implementation. {...@link #getIncludedResults()} is updated when
@@ -76,9 +75,7 @@
public MessageResultImpl(MessageResult result)
throws MailboxException {
setUid(result.getUid());
- if (MessageResultUtils.isFlagsIncluded(result)) {
- setFlags(result.getFlags());
- }
+ setFlags(result.getFlags());
setSize(result.getSize());
setInternalDate(result.getInternalDate());
if (MessageResultUtils.isHeadersIncluded(result)) {
@@ -138,9 +135,6 @@
public void setFlags(Flags flags) {
this.flags = flags;
- if (flags != null) {
- includedResults |= FetchGroup.FLAGS;
- }
}
public int compareTo(Object o) {
Modified:
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MessageResultUtils.java
URL:
http://svn.apache.org/viewvc/james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MessageResultUtils.java?rev=737317&r1=737316&r2=737317&view=diff
==============================================================================
---
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MessageResultUtils.java
(original)
+++
james/protocols/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MessageResultUtils.java
Sat Jan 24 08:35:45 2009
@@ -263,19 +263,6 @@
}
/**
- * Is {...@link FetchGroup#FLAGS} included in these results?
- *
- * @param message
- * <code>MessageResult</code>, possibly null
- * @return true if <code>MessageResult</code> includes FLAGS, false if
- * <code>MessageResult</code> is null or does not contain FLAGS
- * @see #isIncluded(MessageResult, int)
- */
- public static boolean isFlagsIncluded(final MessageResult message) {
- return isIncluded(message, FetchGroup.FLAGS);
- }
-
- /**
* Is {...@link FetchGroup#FULL_CONTENT} included in these results?
*
* @param message
Modified:
james/protocols/imap/trunk/mailbox/src/test/java/org/apache/james/imap/mailbox/MessageResultImplIncludedResultsTest.java
URL:
http://svn.apache.org/viewvc/james/protocols/imap/trunk/mailbox/src/test/java/org/apache/james/imap/mailbox/MessageResultImplIncludedResultsTest.java?rev=737317&r1=737316&r2=737317&view=diff
==============================================================================
---
james/protocols/imap/trunk/mailbox/src/test/java/org/apache/james/imap/mailbox/MessageResultImplIncludedResultsTest.java
(original)
+++
james/protocols/imap/trunk/mailbox/src/test/java/org/apache/james/imap/mailbox/MessageResultImplIncludedResultsTest.java
Sat Jan 24 08:35:45 2009
@@ -22,9 +22,6 @@
import java.util.ArrayList;
import java.util.Date;
-import javax.mail.Flags;
-
-import org.apache.james.imap.mailbox.MessageResult;
import org.apache.james.imap.mailbox.MessageResult.FetchGroup;
import org.apache.james.imap.mailbox.util.MessageResultImpl;
import org.apache.james.imap.mailbox.util.MessageResultUtils;
@@ -46,18 +43,6 @@
super.tearDown();
}
- public void testShouldIncludedResultsWhenFlagsSet() throws Exception {
- result.setFlags(null);
- assertEquals(FetchGroup.MINIMAL,
result.getIncludedResults().content());
- Flags flags = new Flags();
- result.setFlags(flags);
- assertEquals(FetchGroup.FLAGS, result.getIncludedResults().content());
- MessageResultImpl result = new MessageResultImpl(77, flags);
- assertEquals(FetchGroup.FLAGS, result.getIncludedResults().content());
- result = new MessageResultImpl(this.result);
- assertEquals(FetchGroup.FLAGS, result.getIncludedResults().content());
- }
-
public void testShouldIncludedResultsWhenHeadersSet() throws Exception {
result.setHeaders(null);
assertEquals(FetchGroup.MINIMAL,
result.getIncludedResults().content());
@@ -90,46 +75,34 @@
}
public void testShouldIncludedResultsWhenAllSet() {
- Flags flags = new Flags();
- result.setFlags(flags);
- assertEquals(FetchGroup.FLAGS, result.getIncludedResults().content());
- assertTrue(MessageResultUtils.isFlagsIncluded(result));
- result.setUid(99);
- assertEquals(FetchGroup.FLAGS, result.getIncludedResults().content());
- assertTrue(MessageResultUtils.isFlagsIncluded(result));
result.setBody(content);
- assertEquals(FetchGroup.FLAGS | FetchGroup.BODY_CONTENT, result
+ assertEquals(FetchGroup.BODY_CONTENT, result
.getIncludedResults().content());
- assertTrue(MessageResultUtils.isFlagsIncluded(result));
assertTrue(MessageResultUtils.isBodyContentIncluded(result));
result.setFullContent(content);
- assertEquals(FetchGroup.FLAGS | FetchGroup.BODY_CONTENT
+ assertEquals(FetchGroup.BODY_CONTENT
| FetchGroup.FULL_CONTENT, result.getIncludedResults()
.content());
- assertTrue(MessageResultUtils.isFlagsIncluded(result));
assertTrue(MessageResultUtils.isBodyContentIncluded(result));
assertTrue(MessageResultUtils.isFullContentIncluded(result));
result.setHeaders(new ArrayList());
- assertEquals(FetchGroup.FLAGS | FetchGroup.BODY_CONTENT
+ assertEquals(FetchGroup.BODY_CONTENT
| FetchGroup.FULL_CONTENT | FetchGroup.HEADERS, result
.getIncludedResults().content());
- assertTrue(MessageResultUtils.isFlagsIncluded(result));
assertTrue(MessageResultUtils.isBodyContentIncluded(result));
assertTrue(MessageResultUtils.isFullContentIncluded(result));
assertTrue(MessageResultUtils.isHeadersIncluded(result));
result.setInternalDate(new Date());
- assertEquals(FetchGroup.FLAGS | FetchGroup.BODY_CONTENT
+ assertEquals(FetchGroup.BODY_CONTENT
| FetchGroup.FULL_CONTENT | FetchGroup.HEADERS,
result.getIncludedResults()
.content());
- assertTrue(MessageResultUtils.isFlagsIncluded(result));
assertTrue(MessageResultUtils.isBodyContentIncluded(result));
assertTrue(MessageResultUtils.isFullContentIncluded(result));
assertTrue(MessageResultUtils.isHeadersIncluded(result));
result.setSize(100);
- assertEquals(FetchGroup.FLAGS | FetchGroup.BODY_CONTENT
+ assertEquals(FetchGroup.BODY_CONTENT
| FetchGroup.FULL_CONTENT | FetchGroup.HEADERS, result
.getIncludedResults().content());
- assertTrue(MessageResultUtils.isFlagsIncluded(result));
assertTrue(MessageResultUtils.isBodyContentIncluded(result));
assertTrue(MessageResultUtils.isFullContentIncluded(result));
assertTrue(MessageResultUtils.isHeadersIncluded(result));
Modified:
james/protocols/imap/trunk/mailbox/src/test/java/org/apache/james/imap/mailbox/MessageResultUtilsIsIncludedTest.java
URL:
http://svn.apache.org/viewvc/james/protocols/imap/trunk/mailbox/src/test/java/org/apache/james/imap/mailbox/MessageResultUtilsIsIncludedTest.java?rev=737317&r1=737316&r2=737317&view=diff
==============================================================================
---
james/protocols/imap/trunk/mailbox/src/test/java/org/apache/james/imap/mailbox/MessageResultUtilsIsIncludedTest.java
(original)
+++
james/protocols/imap/trunk/mailbox/src/test/java/org/apache/james/imap/mailbox/MessageResultUtilsIsIncludedTest.java
Sat Jan 24 08:35:45 2009
@@ -36,30 +36,13 @@
super.tearDown();
}
- public void testShouldReturnFalseWhenNull() throws Exception {
- assertFalse(MessageResultUtils.isIncluded(null, FetchGroup.FLAGS));
- }
-
public void testBodyContentIncluded() throws Exception {
assertFalse(MessageResultUtils.isIncluded(mock(FetchGroupImpl.MINIMAL),
FetchGroup.BODY_CONTENT));
- assertFalse(MessageResultUtils.isIncluded(mock(FetchGroupImpl.FLAGS),
- FetchGroup.BODY_CONTENT));
assertTrue(MessageResultUtils.isIncluded(
mock(FetchGroupImpl.BODY_CONTENT), FetchGroup.BODY_CONTENT));
}
- public void testFlagsIncluded() throws Exception {
- assertFalse(MessageResultUtils.isIncluded(mock(FetchGroupImpl.MINIMAL),
- FetchGroup.FLAGS));
- assertFalse(MessageResultUtils.isIncluded(
- mock(FetchGroupImpl.BODY_CONTENT), FetchGroup.FLAGS));
- assertTrue(MessageResultUtils.isIncluded(mock(FetchGroupImpl.FLAGS),
- FetchGroup.FLAGS));
- assertTrue(MessageResultUtils.isIncluded(mock(new FetchGroupImpl(
- FetchGroup.FLAGS | FetchGroup.BODY_CONTENT)),
FetchGroup.FLAGS));
- }
-
public void testFULL_CONTENTIncluded() throws Exception {
assertFalse(MessageResultUtils.isIncluded(mock(FetchGroupImpl.MINIMAL),
FetchGroup.FULL_CONTENT));
@@ -67,9 +50,6 @@
mock(FetchGroupImpl.BODY_CONTENT), FetchGroup.FULL_CONTENT));
assertTrue(MessageResultUtils.isIncluded(
mock(FetchGroupImpl.FULL_CONTENT), FetchGroup.FULL_CONTENT));
- assertTrue(MessageResultUtils.isIncluded(mock(new FetchGroupImpl(
- FetchGroup.FLAGS | FetchGroup.FULL_CONTENT)),
- FetchGroup.FULL_CONTENT));
}
public void testHEADERSIncluded() throws Exception {
@@ -79,8 +59,6 @@
mock(FetchGroupImpl.BODY_CONTENT), FetchGroup.HEADERS));
assertTrue(MessageResultUtils.isIncluded(mock(FetchGroupImpl.HEADERS),
FetchGroup.HEADERS));
- assertTrue(MessageResultUtils.isIncluded(mock(new FetchGroupImpl(
- FetchGroup.FLAGS | FetchGroup.HEADERS)), FetchGroup.HEADERS));
}
public void testShouldNOTHINGAlwaysBeIncluded() throws Exception {
Modified:
james/protocols/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/imap4rev1/AbstractMailboxProcessor.java
URL:
http://svn.apache.org/viewvc/james/protocols/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/imap4rev1/AbstractMailboxProcessor.java?rev=737317&r1=737316&r2=737317&view=diff
==============================================================================
---
james/protocols/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/imap4rev1/AbstractMailboxProcessor.java
(original)
+++
james/protocols/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/imap4rev1/AbstractMailboxProcessor.java
Sat Jan 24 08:35:45 2009
@@ -194,7 +194,7 @@
private void addFlagsResponses(final ImapSession session, final
SelectedMailbox selected,
final ImapProcessor.Responder responder, boolean useUid,
MessageRange messageSet, Mailbox mailbox, MailboxSession mailboxSession)
throws MailboxException {
- final Iterator<MessageResult> it = mailbox.getMessages(messageSet,
FetchGroupImpl.FLAGS, mailboxSession);
+ final Iterator<MessageResult> it = mailbox.getMessages(messageSet,
FetchGroupImpl.MINIMAL, mailboxSession);
while (it.hasNext()) {
MessageResult mr = it.next();
final long uid = mr.getUid();
Modified:
james/protocols/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/imap4rev1/fetch/FetchProcessor.java
URL:
http://svn.apache.org/viewvc/james/protocols/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/imap4rev1/fetch/FetchProcessor.java?rev=737317&r1=737316&r2=737317&view=diff
==============================================================================
---
james/protocols/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/imap4rev1/fetch/FetchProcessor.java
(original)
+++
james/protocols/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/imap4rev1/fetch/FetchProcessor.java
Sat Jan 24 08:35:45 2009
@@ -110,10 +110,7 @@
private FetchGroup getFetchGroup(FetchData fetch) {
FetchGroupImpl result = new FetchGroupImpl();
- if (fetch.isFlags() || fetch.isSetSeen()) {
- result.or(FetchGroup.FLAGS);
- }
-
+
if (fetch.isEnvelope()) {
result.or(FetchGroup.HEADERS);
}
Modified:
james/protocols/imap/trunk/store/src/main/java/org/apache/james/imap/store/ResultUtils.java
URL:
http://svn.apache.org/viewvc/james/protocols/imap/trunk/store/src/main/java/org/apache/james/imap/store/ResultUtils.java?rev=737317&r1=737316&r2=737317&view=diff
==============================================================================
---
james/protocols/imap/trunk/store/src/main/java/org/apache/james/imap/store/ResultUtils.java
(original)
+++
james/protocols/imap/trunk/store/src/main/java/org/apache/james/imap/store/ResultUtils.java
Sat Jan 24 08:35:45 2009
@@ -106,12 +106,10 @@
messageResult.setUid(message.getUid());
if (fetchGroup != null) {
int content = fetchGroup.content();
- if ((content & FetchGroup.FLAGS) > 0) {
- messageResult.setFlags(message.createFlags());
- content -= FetchGroup.FLAGS;
- }
+ messageResult.setFlags(message.createFlags());
messageResult.setSize(message.getSize());
messageResult.setInternalDate(message.getInternalDate());
+
if ((content & FetchGroup.HEADERS) > 0) {
addHeaders(message, messageResult);
content -= FetchGroup.HEADERS;
Modified:
james/protocols/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/MessageRowUtils.java
URL:
http://svn.apache.org/viewvc/james/protocols/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/MessageRowUtils.java?rev=737317&r1=737316&r2=737317&view=diff
==============================================================================
---
james/protocols/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/MessageRowUtils.java
(original)
+++
james/protocols/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/MessageRowUtils.java
Sat Jan 24 08:35:45 2009
@@ -130,13 +130,10 @@
messageResult.setUid(messageRow.getUid());
if (fetchGroup != null) {
int content = fetchGroup.content();
- if ((content & FetchGroup.FLAGS) > 0) {
- org.apache.james.mailboxmanager.torque.om.MessageFlags
messageFlags = messageRow
- .getMessageFlags();
- if (messageFlags != null) {
- messageResult.setFlags(messageFlags.createFlags());
- }
- content -= FetchGroup.FLAGS;
+ org.apache.james.mailboxmanager.torque.om.MessageFlags
messageFlags = messageRow
+ .getMessageFlags();
+ if (messageFlags != null) {
+ messageResult.setFlags(messageFlags.createFlags());
}
messageResult.setSize(messageRow.getSize());
messageResult.setInternalDate(messageRow.getInternalDate());
Modified:
james/protocols/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailbox.java
URL:
http://svn.apache.org/viewvc/james/protocols/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailbox.java?rev=737317&r1=737316&r2=737317&view=diff
==============================================================================
---
james/protocols/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailbox.java
(original)
+++
james/protocols/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailbox.java
Sat Jan 24 08:35:45 2009
@@ -555,9 +555,6 @@
messageFlags.save();
}
}
- final TorqueResultIterator resultIterator = new
TorqueResultIterator(messageRows, FetchGroupImpl.FLAGS);
- final org.apache.james.imap.mailbox.util.MessageFlags[]
messageFlags = resultIterator
- .getMessageFlags();
tracker.flagsUpdated(newFlagsByUid, originalFlagsByUid,
mailboxSession.getSessionId());
return newFlagsByUid;
} catch (Exception e) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]