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 no...@apache.org on 2010/03/18 07:50:10 UTC
svn commit: r924656 - in /james/imap/trunk:
jcr/src/main/java/org/apache/james/imap/jcr/
jcr/src/main/java/org/apache/james/imap/jcr/mail/
jpa/src/main/java/org/apache/james/imap/jpa/mail/
memory/src/main/java/org/apache/james/imap/inmemory/ store/src/...
Author: norman
Date: Thu Mar 18 06:50:10 2010
New Revision: 924656
URL: http://svn.apache.org/viewvc?rev=924656&view=rev
Log:
Fix last failing tests for JCR. This was related due the sorting of the returned list. To be sure that every implementation is aware of the needed sorting the javadocs were updated (IMAP-93)
Change some methods from public to private / protected
Modified:
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailbox.java
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMessageMapper.java
james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/JPAMessageMapper.java
james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/InMemoryStoreMailbox.java
james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreMailbox.java
james/imap/trunk/store/src/main/java/org/apache/james/imap/store/mail/MessageMapper.java
Modified: james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailbox.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailbox.java?rev=924656&r1=924655&r2=924656&view=diff
==============================================================================
--- james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailbox.java (original)
+++ james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailbox.java Thu Mar 18 06:50:10 2010
@@ -45,6 +45,7 @@ import org.apache.james.imap.store.mail.
import org.apache.james.imap.store.mail.model.Header;
import org.apache.james.imap.store.mail.model.Mailbox;
import org.apache.james.imap.store.mail.model.MailboxMembership;
+import org.apache.james.imap.store.mail.model.Property;
import org.apache.james.imap.store.mail.model.PropertyBuilder;
/**
Modified: james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMessageMapper.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMessageMapper.java?rev=924656&r1=924655&r2=924656&view=diff
==============================================================================
--- james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMessageMapper.java (original)
+++ james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMessageMapper.java Thu Mar 18 06:50:10 2010
@@ -163,8 +163,12 @@ public class JCRMessageMapper extends Ab
results = findMessagesInMailboxBetweenUIDs(uuid, from, to);
break;
}
- System.out.println("FOUND=" + results.size() + " TYPE="+ type.toString());
+ /*
+ for (int i = 0; i < results.size(); i++) {
+ System.out.println("FOUND=" + results.get(i).getUid() + " TYPE="+ type.toString());
+ }
+*/
return results;
} catch (RepositoryException e) {
e.printStackTrace();
@@ -174,7 +178,7 @@ public class JCRMessageMapper extends Ab
private List<MailboxMembership> findMessagesInMailboxAfterUID(String uuid, long uid) throws RepositoryException {
List<MailboxMembership> list = new ArrayList<MailboxMembership>();
- String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY + "='" + uuid + "'] AND [@" + JCRMailboxMembership.UID_PROPERTY + ">=" + uid + "]";
+ String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY + "='" + uuid + "'] AND [@" + JCRMailboxMembership.UID_PROPERTY + ">=" + uid + "] order by @" + JCRMailboxMembership.UID_PROPERTY;
QueryManager manager = getSession().getWorkspace().getQueryManager();
QueryResult result = manager.createQuery(queryString, Query.XPATH).execute();
@@ -188,7 +192,7 @@ public class JCRMessageMapper extends Ab
private List<MailboxMembership> findMessagesInMailboxWithUID(String uuid, long uid) throws RepositoryException {
List<MailboxMembership> list = new ArrayList<MailboxMembership>();
- String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY + "='" + uuid + "'] AND [@" + JCRMailboxMembership.UID_PROPERTY + "=" + uid + "]";
+ String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY + "='" + uuid + "'] AND [@" + JCRMailboxMembership.UID_PROPERTY + "=" + uid + "] order by @" + JCRMailboxMembership.UID_PROPERTY;
QueryManager manager = getSession().getWorkspace().getQueryManager();
QueryResult result = manager.createQuery(queryString, Query.XPATH).execute();
@@ -202,7 +206,7 @@ public class JCRMessageMapper extends Ab
private List<MailboxMembership> findMessagesInMailboxBetweenUIDs(String uuid, long from, long to) throws RepositoryException {
List<MailboxMembership> list = new ArrayList<MailboxMembership>();
- String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY + "='" + uuid + "'] AND [@" + JCRMailboxMembership.UID_PROPERTY + ">=" + from + "] AND [@" + JCRMailboxMembership.UID_PROPERTY + "<=" + to + "]";
+ String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY + "='" + uuid + "'] AND [@" + JCRMailboxMembership.UID_PROPERTY + ">=" + from + "] AND [@" + JCRMailboxMembership.UID_PROPERTY + "<=" + to + "] order by @" + JCRMailboxMembership.UID_PROPERTY;
QueryManager manager = getSession().getWorkspace().getQueryManager();
QueryResult result = manager.createQuery(queryString, Query.XPATH).execute();
@@ -217,7 +221,7 @@ public class JCRMessageMapper extends Ab
private List<MailboxMembership> findMessagesInMailbox(String uuid) throws RepositoryException {
List<MailboxMembership> list = new ArrayList<MailboxMembership>();
- String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY +"='" + uuid +"']";
+ String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY +"='" + uuid +"'] order by @" + JCRMailboxMembership.UID_PROPERTY;
getSession().refresh(true);
QueryManager manager = getSession().getWorkspace().getQueryManager();
QueryResult result = manager.createQuery(queryString, Query.XPATH).execute();
@@ -233,7 +237,7 @@ public class JCRMessageMapper extends Ab
private List<MailboxMembership> findDeletedMessagesInMailboxAfterUID(String uuid, long uid) throws RepositoryException {
List<MailboxMembership> list = new ArrayList<MailboxMembership>();
- String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY + "='" + uuid + "'] AND [@" + JCRMailboxMembership.UID_PROPERTY + ">=" + uid + "] AND [@" + JCRMailboxMembership.DELETED_PROPERTY+ "='true']";
+ String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY + "='" + uuid + "'] AND [@" + JCRMailboxMembership.UID_PROPERTY + ">=" + uid + "] AND [@" + JCRMailboxMembership.DELETED_PROPERTY+ "='true'] order by @" + JCRMailboxMembership.UID_PROPERTY;
QueryManager manager = getSession().getWorkspace().getQueryManager();
QueryResult result = manager.createQuery(queryString, Query.XPATH).execute();
@@ -247,7 +251,7 @@ public class JCRMessageMapper extends Ab
private List<MailboxMembership> findDeletedMessagesInMailboxWithUID(String uuid, long uid) throws RepositoryException {
List<MailboxMembership> list = new ArrayList<MailboxMembership>();
- String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY + "='" + uuid + "'] AND [@" + JCRMailboxMembership.UID_PROPERTY + "=" + uid + "] AND [@" + JCRMailboxMembership.DELETED_PROPERTY+ "='true']";
+ String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY + "='" + uuid + "'] AND [@" + JCRMailboxMembership.UID_PROPERTY + "=" + uid + "] AND [@" + JCRMailboxMembership.DELETED_PROPERTY+ "='true'] order by @" + JCRMailboxMembership.UID_PROPERTY;
QueryManager manager = getSession().getWorkspace().getQueryManager();
QueryResult result = manager.createQuery(queryString, Query.XPATH).execute();
@@ -261,7 +265,7 @@ public class JCRMessageMapper extends Ab
private List<MailboxMembership> findDeletedMessagesInMailboxBetweenUIDs(String uuid, long from, long to) throws RepositoryException {
List<MailboxMembership> list = new ArrayList<MailboxMembership>();
- String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY + "='" + uuid + "'] AND [@" + JCRMailboxMembership.UID_PROPERTY + ">=" + from + "] AND [@" + JCRMailboxMembership.UID_PROPERTY + "<=" + to + "] AND [@" + JCRMailboxMembership.DELETED_PROPERTY+ "='true']";
+ String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY + "='" + uuid + "'] AND [@" + JCRMailboxMembership.UID_PROPERTY + ">=" + from + "] AND [@" + JCRMailboxMembership.UID_PROPERTY + "<=" + to + "] AND [@" + JCRMailboxMembership.DELETED_PROPERTY+ "='true'] order by @" + JCRMailboxMembership.UID_PROPERTY;
QueryManager manager = getSession().getWorkspace().getQueryManager();
QueryResult result = manager.createQuery(queryString, Query.XPATH).execute();
@@ -276,7 +280,7 @@ public class JCRMessageMapper extends Ab
private List<MailboxMembership> findDeletedMessagesInMailbox(String uuid) throws RepositoryException {
List<MailboxMembership> list = new ArrayList<MailboxMembership>();
- String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY +"='" + uuid +"'] AND [@" + JCRMailboxMembership.DELETED_PROPERTY+ "='true']";
+ String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY +"='" + uuid +"'] AND [@" + JCRMailboxMembership.DELETED_PROPERTY+ "='true'] order by @" + JCRMailboxMembership.UID_PROPERTY;
QueryManager manager = getSession().getWorkspace().getQueryManager();
QueryResult result = manager.createQuery(queryString, Query.XPATH).execute();
@@ -335,7 +339,7 @@ public class JCRMessageMapper extends Ab
try {
List<MailboxMembership> list = new ArrayList<MailboxMembership>();
- String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY +"='" + uuid +"'] AND [@" + JCRMailboxMembership.RECENT_PROPERTY +"='true']";
+ String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY +"='" + uuid +"'] AND [@" + JCRMailboxMembership.RECENT_PROPERTY +"='true'] order by @" + JCRMailboxMembership.UID_PROPERTY;
QueryManager manager = getSession().getWorkspace().getQueryManager();
QueryResult result = manager.createQuery(queryString, Query.XPATH).execute();
@@ -351,16 +355,15 @@ public class JCRMessageMapper extends Ab
}
}
+
/*
* (non-Javadoc)
- *
- * @seeorg.apache.james.imap.store.mail.MessageMapper#
- * findUnseenMessagesInMailboxOrderByUid()
+ * @see org.apache.james.imap.store.mail.MessageMapper#findUnseenMessagesInMailbox()
*/
- public List<MailboxMembership> findUnseenMessagesInMailboxOrderByUid() throws StorageException {
+ public List<MailboxMembership> findUnseenMessagesInMailbox() throws StorageException {
try {
List<MailboxMembership> list = new ArrayList<MailboxMembership>();
- String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY +"='" + uuid +"'] AND [@" + JCRMailboxMembership.SEEN_PROPERTY +"='false'] order by @" + JCRMailboxMembership.UID_PROPERTY + " ASC";
+ String queryString = "//" + PATH + "//element(*)[@" + JCRMailboxMembership.MAILBOX_UUID_PROPERTY +"='" + uuid +"'] AND [@" + JCRMailboxMembership.SEEN_PROPERTY +"='false'] order by @" + JCRMailboxMembership.UID_PROPERTY;
QueryManager manager = getSession().getWorkspace().getQueryManager();
QueryResult result = manager.createQuery(queryString, Query.XPATH).execute();
@@ -463,6 +466,7 @@ public class JCRMessageMapper extends Ab
}
}
}
+ queryBuilder.append(" order by @" + JCRMailboxMembership.UID_PROPERTY);
final String jql = queryBuilder.toString();
return jql;
}
Modified: james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/JPAMessageMapper.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/JPAMessageMapper.java?rev=924656&r1=924655&r2=924656&view=diff
==============================================================================
--- james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/JPAMessageMapper.java (original)
+++ james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/JPAMessageMapper.java Thu Mar 18 06:50:10 2010
@@ -229,11 +229,12 @@ public class JPAMessageMapper extends JP
}
}
- /**
- * @see org.apache.james.imap.store.mail.MessageMapper#findUnseenMessagesInMailboxOrderByUid()
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.imap.store.mail.MessageMapper#findUnseenMessagesInMailbox()
*/
@SuppressWarnings("unchecked")
- public List<MailboxMembership> findUnseenMessagesInMailboxOrderByUid() throws StorageException {
+ public List<MailboxMembership> findUnseenMessagesInMailbox() throws StorageException {
try {
return entityManager.createNamedQuery("findUnseenMessagesInMailboxOrderByUid").setParameter("idParam", mailboxId).getResultList();
} catch (PersistenceException e) {
Modified: james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/InMemoryStoreMailbox.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/InMemoryStoreMailbox.java?rev=924656&r1=924655&r2=924656&view=diff
==============================================================================
--- james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/InMemoryStoreMailbox.java (original)
+++ james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/InMemoryStoreMailbox.java Thu Mar 18 06:50:10 2010
@@ -86,10 +86,18 @@ public class InMemoryStoreMailbox extend
return mailbox;
}
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.imap.store.mail.MessageMapper#countMessagesInMailbox()
+ */
public long countMessagesInMailbox() throws StorageException {
return membershipByUid.size();
}
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.imap.store.mail.MessageMapper#countUnseenMessagesInMailbox()
+ */
public long countUnseenMessagesInMailbox() throws StorageException {
long count = 0;
for(MailboxMembership member:membershipByUid.values()) {
@@ -100,6 +108,10 @@ public class InMemoryStoreMailbox extend
return count;
}
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.imap.store.mail.MessageMapper#delete(org.apache.james.imap.store.mail.model.MailboxMembership)
+ */
public void delete(MailboxMembership message) throws StorageException {
membershipByUid.remove(message.getUid());
}
@@ -144,6 +156,10 @@ public class InMemoryStoreMailbox extend
return results;
}
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.imap.store.mail.MessageMapper#findMarkedForDeletionInMailbox(org.apache.james.imap.mailbox.MessageRange)
+ */
public List<MailboxMembership> findMarkedForDeletionInMailbox(MessageRange set) throws StorageException {
final List<MailboxMembership> results = findInMailbox(set);
for(final Iterator<MailboxMembership> it=results.iterator();it.hasNext();) {
@@ -154,6 +170,10 @@ public class InMemoryStoreMailbox extend
return results;
}
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.imap.store.mail.MessageMapper#findRecentMessagesInMailbox()
+ */
public List<MailboxMembership> findRecentMessagesInMailbox() throws StorageException {
final List<MailboxMembership> results = new ArrayList<MailboxMembership>();
for(MailboxMembership member:membershipByUid.values()) {
@@ -161,10 +181,16 @@ public class InMemoryStoreMailbox extend
results.add(member);
}
}
+ Collections.sort(results, MailboxMembershipComparator.INSTANCE);
+
return results;
}
- public List<MailboxMembership> findUnseenMessagesInMailboxOrderByUid() throws StorageException {
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.imap.store.mail.MessageMapper#findUnseenMessagesInMailbox()
+ */
+ public List<MailboxMembership> findUnseenMessagesInMailbox() throws StorageException {
final List<MailboxMembership> results = new ArrayList<MailboxMembership>();
for(MailboxMembership member:membershipByUid.values()) {
if (!member.isSeen()) {
@@ -175,10 +201,18 @@ public class InMemoryStoreMailbox extend
return results;
}
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.imap.store.mail.MessageMapper#save(org.apache.james.imap.store.mail.model.MailboxMembership)
+ */
public void save(MailboxMembership message) throws StorageException {
membershipByUid.put(message.getUid(), message);
}
+ /*
+ * (non-Javadoc)
+ * @see org.apache.james.imap.store.mail.MessageMapper#searchMailbox(org.apache.james.imap.mailbox.SearchQuery)
+ */
public List<MailboxMembership> searchMailbox(SearchQuery query) throws StorageException {
return new ArrayList<MailboxMembership>(membershipByUid.values());
}
Modified: james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreMailbox.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreMailbox.java?rev=924656&r1=924655&r2=924656&view=diff
==============================================================================
--- james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreMailbox.java (original)
+++ james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreMailbox.java Thu Mar 18 06:50:10 2010
@@ -59,6 +59,11 @@ import org.apache.james.mime4j.MimeExcep
import org.apache.james.mime4j.descriptor.MaximalBodyDescriptor;
import org.apache.james.mime4j.parser.MimeTokenStream;
+/**
+ * Abstract base class for {@link org.apache.james.imap.mailbox.Mailbox} implementations
+ *
+ *
+ */
public abstract class StoreMailbox implements org.apache.james.imap.mailbox.Mailbox {
private static final int INITIAL_SIZE_FLAGS = 32;
@@ -70,12 +75,17 @@ public abstract class StoreMailbox imple
private final UidChangeTracker tracker;
private final MailboxSession session;
- public StoreMailbox(final Mailbox mailbox, MailboxSession session) {
+ public StoreMailbox(final Mailbox mailbox, final MailboxSession session) {
this.mailboxId = mailbox.getMailboxId();
this.tracker = new UidChangeTracker(mailbox.getLastUid());
this.session = session;
}
+ /**
+ * Return the {@link MailboxSession} for this {@link StoreMailbox}
+ *
+ * @return session
+ */
protected MailboxSession getMailboxSession() {
return session;
}
@@ -103,7 +113,7 @@ public abstract class StoreMailbox imple
*
* @return id
*/
- public long getMailboxId() {
+ protected long getMailboxId() {
return mailboxId;
}
@@ -297,6 +307,12 @@ public abstract class StoreMailbox imple
protected abstract Header createHeader(int lineNumber, String name, String value);
+ /**
+ * Reserve the next Uid on the underlying {@link Mailbox}
+ *
+ * @return mailbox
+ * @throws MailboxException
+ */
protected abstract Mailbox reserveNextUid() throws MailboxException;
/*
@@ -335,7 +351,7 @@ public abstract class StoreMailbox imple
}
}
- public Flags getPermanentFlags() {
+ private Flags getPermanentFlags() {
Flags permanentFlags = new Flags();
permanentFlags.add(Flags.Flag.ANSWERED);
permanentFlags.add(Flags.Flag.DELETED);
@@ -345,7 +361,7 @@ public abstract class StoreMailbox imple
return permanentFlags;
}
- public long[] recent(final boolean reset, MailboxSession mailboxSession) throws MailboxException {
+ private long[] recent(final boolean reset, MailboxSession mailboxSession) throws MailboxException {
final MessageMapper mapper = createMessageMapper(session);
final List<Long> results = new ArrayList<Long>();
@@ -368,10 +384,10 @@ public abstract class StoreMailbox imple
return ArrayUtils.toPrimitive(results.toArray(new Long[results.size()]));
}
- public Long getFirstUnseen(MailboxSession mailboxSession) throws MailboxException {
+ private Long getFirstUnseen(MailboxSession mailboxSession) throws MailboxException {
try {
final MessageMapper messageMapper = createMessageMapper(session);
- final List<MailboxMembership> members = messageMapper.findUnseenMessagesInMailboxOrderByUid();
+ final List<MailboxMembership> members = messageMapper.findUnseenMessagesInMailbox();
final Iterator<MailboxMembership> it = members.iterator();
final Long result;
if (it.hasNext()) {
@@ -387,7 +403,7 @@ public abstract class StoreMailbox imple
}
}
- public int getUnseenCount(MailboxSession mailboxSession) throws MailboxException {
+ private int getUnseenCount(MailboxSession mailboxSession) throws MailboxException {
final MessageMapper messageMapper = createMessageMapper(session);
final int count = (int) messageMapper.countUnseenMessagesInMailbox();
return count;
@@ -440,7 +456,6 @@ public abstract class StoreMailbox imple
public void run() throws MailboxException {
final List<MailboxMembership> members = mapper.findInMailbox(set);
- System.out.println("FOUND=" + members.size());
for (final MailboxMembership member:members) {
originalFlagsByUid.put(member.getUid(), member.createFlags());
if (replace) {
@@ -469,12 +484,12 @@ public abstract class StoreMailbox imple
tracker.addMailboxListener(listener);
}
- public long getUidValidity(MailboxSession mailboxSession) throws MailboxException {
+ private long getUidValidity(MailboxSession mailboxSession) throws MailboxException {
final long result = getMailboxRow().getUidValidity();
return result;
}
- public long getUidNext(MailboxSession mailboxSession) throws MailboxException {
+ private long getUidNext(MailboxSession mailboxSession) throws MailboxException {
Mailbox mailbox = getMailboxRow();
if (mailbox == null) {
throw new MailboxNotFoundException("Mailbox has been deleted");
@@ -521,7 +536,7 @@ public abstract class StoreMailbox imple
}
- public void copy(final List<MailboxMembership> originalRows, MailboxSession session) throws MailboxException {
+ private void copy(final List<MailboxMembership> originalRows, MailboxSession session) throws MailboxException {
try {
final List<MailboxMembership> copiedRows = new ArrayList<MailboxMembership>();
final MessageMapper mapper = createMessageMapper(session);
Modified: james/imap/trunk/store/src/main/java/org/apache/james/imap/store/mail/MessageMapper.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/store/src/main/java/org/apache/james/imap/store/mail/MessageMapper.java?rev=924656&r1=924655&r2=924656&view=diff
==============================================================================
--- james/imap/trunk/store/src/main/java/org/apache/james/imap/store/mail/MessageMapper.java (original)
+++ james/imap/trunk/store/src/main/java/org/apache/james/imap/store/mail/MessageMapper.java Thu Mar 18 06:50:10 2010
@@ -35,6 +35,8 @@ public interface MessageMapper extends T
/**
* Return a List of {@link MailboxMembership} which represent the given {@link MessageRange}
+ * The list must be ordered by the {@link Document} uid
+ *
* @param set
* @return list
* @throws StorageException
@@ -43,7 +45,8 @@ public interface MessageMapper extends T
throws StorageException;
/**
- * Return a List of {@link MailboxMembership} for the given {@link MessageRange} which are marked for deletion
+ * Return a List of {@link MailboxMembership} for the given {@link MessageRange} which are marked for deletion
+ * The list must be ordered by the {@link Document} uid
* @param set
* @return list
* @throws StorageException
@@ -72,6 +75,7 @@ public interface MessageMapper extends T
/**
* Return a List of {@link MailboxMembership} which matched the {@link SearchQuery}
+ * The list must be ordered by the {@link Document} uid
* @param query
* @return
* @throws StorageException
@@ -87,15 +91,17 @@ public interface MessageMapper extends T
public abstract void delete(MailboxMembership message) throws StorageException;
/**
- * Return a List of {@link MailboxMembership} which are unseen. The list is ordered by uid
+ * Return a List of {@link MailboxMembership} which are unseen.
+ * The list must be ordered by the {@link Document} uid.
*
* @return list
* @throws StorageException
*/
- public abstract List<MailboxMembership> findUnseenMessagesInMailboxOrderByUid() throws StorageException;
+ public abstract List<MailboxMembership> findUnseenMessagesInMailbox() throws StorageException;
/**
- * Return a List of {@link MailboxMembership} which are recent
+ * Return a List of {@link MailboxMembership} which are recent.
+ * The list must be ordered by the {@link Document} uid
*
* @return recentList
* @throws StorageException
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org