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