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 2011/10/06 07:23:06 UTC

svn commit: r1179503 - in /james/mailbox/trunk: api/src/main/java/org/apache/james/mailbox/ store/src/main/java/org/apache/james/mailbox/store/ tool/src/main/java/org/apache/james/mailbox/copier/

Author: norman
Date: Thu Oct  6 05:23:05 2011
New Revision: 1179503

URL: http://svn.apache.org/viewvc?rev=1179503&view=rev
Log:
Remove batchSize parameter from MessageManager.getMessages(...). See MAILBOX-148

Modified:
    james/mailbox/trunk/api/src/main/java/org/apache/james/mailbox/MessageManager.java
    james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java
    james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMessageManager.java
    james/mailbox/trunk/tool/src/main/java/org/apache/james/mailbox/copier/MailboxCopierImpl.java

Modified: james/mailbox/trunk/api/src/main/java/org/apache/james/mailbox/MessageManager.java
URL: http://svn.apache.org/viewvc/james/mailbox/trunk/api/src/main/java/org/apache/james/mailbox/MessageManager.java?rev=1179503&r1=1179502&r2=1179503&view=diff
==============================================================================
--- james/mailbox/trunk/api/src/main/java/org/apache/james/mailbox/MessageManager.java (original)
+++ james/mailbox/trunk/api/src/main/java/org/apache/james/mailbox/MessageManager.java Thu Oct  6 05:23:05 2011
@@ -142,13 +142,12 @@ public interface MessageManager {
      * @param set
      * @param fetchGroup
      *            data to fetch
-     * @param the batchSize to use to fetch the Messages in batches. The implementation may just ignore if it can't optimize the call with batches
      * @param mailboxSession
      *            not null
      * @return MessageResult with the fields defined by FetchGroup
      * @throws MailboxException
      */
-    MessageResultIterator getMessages(MessageRange set, FetchGroup fetchGroup, int batchSize, MailboxSession mailboxSession) throws MailboxException;
+    MessageResultIterator getMessages(MessageRange set, FetchGroup fetchGroup, MailboxSession mailboxSession) throws MailboxException;
 
 
     /**

Modified: james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java
URL: http://svn.apache.org/viewvc/james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java?rev=1179503&r1=1179502&r2=1179503&view=diff
==============================================================================
--- james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java (original)
+++ james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java Thu Oct  6 05:23:05 2011
@@ -67,6 +67,7 @@ import org.slf4j.Logger;
 public class StoreMailboxManager<Id> implements MailboxManager {
     
     public static final char SQL_WILDCARD_CHAR = '%';
+    public static final int DEFAULT_FETCH_BATCH_SIZE = 200;
     
     private MailboxEventDispatcher<Id> dispatcher;
     private AbstractDelegatingMailboxListener delegatingListener = null;  
@@ -85,6 +86,8 @@ public class StoreMailboxManager<Id> imp
 
     private MailboxSessionIdGenerator idGenerator;
 
+    private int fetchBatchSize = DEFAULT_FETCH_BATCH_SIZE;
+
     
     public StoreMailboxManager(MailboxSessionMapperFactory<Id> mailboxSessionMapperFactory, final Authenticator authenticator, final MailboxPathLocker locker) {
         this.authenticator = authenticator;
@@ -104,6 +107,11 @@ public class StoreMailboxManager<Id> imp
         this.copyBatchSize = copyBatchSize;
     }
     
+    public void setFetchBatchSize(int fetchBatchSize) {
+        this.fetchBatchSize = fetchBatchSize;
+    }
+    
+    
     /**
      * Init the {@link MailboxManager}
      * 
@@ -311,6 +319,7 @@ public class StoreMailboxManager<Id> imp
             session.getLog().debug("Loaded mailbox " + mailboxPath);
             
             StoreMessageManager<Id>  m = createMessageManager(mailboxRow, session);
+            m.setFetchBatchSize(fetchBatchSize);
             return m;
         }
     }

Modified: james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMessageManager.java
URL: http://svn.apache.org/viewvc/james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMessageManager.java?rev=1179503&r1=1179502&r2=1179503&view=diff
==============================================================================
--- james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMessageManager.java (original)
+++ james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMessageManager.java Thu Oct  6 05:23:05 2011
@@ -105,6 +105,8 @@ public class StoreMessageManager<Id> imp
     private final MessageSearchIndex<Id> index;
 
 	private MailboxPathLocker locker;
+
+    private int fetchBatchSize;
     
     public StoreMessageManager(final MessageMapperFactory<Id> mapperFactory, final MessageSearchIndex<Id> index, final MailboxEventDispatcher<Id> dispatcher, final MailboxPathLocker locker, final Mailbox<Id> mailbox) throws MailboxException {
         this.mailbox = mailbox;
@@ -114,6 +116,9 @@ public class StoreMessageManager<Id> imp
         this.locker = locker;
     }
     
+    public void setFetchBatchSize(int fetchBatchSize) {
+        this.fetchBatchSize = fetchBatchSize;
+    }
     
     
     /**
@@ -550,11 +555,11 @@ public class StoreMessageManager<Id> imp
 
     /*
      * (non-Javadoc)
-     * @see org.apache.james.mailbox.MessageManager#getMessages(org.apache.james.mailbox.MessageRange, org.apache.james.mailbox.MessageResult.FetchGroup, int, org.apache.james.mailbox.MailboxSession)
+     * @see org.apache.james.mailbox.MessageManager#getMessages(org.apache.james.mailbox.MessageRange, org.apache.james.mailbox.MessageResult.FetchGroup, org.apache.james.mailbox.MailboxSession)
      */
-    public MessageResultIterator getMessages(final MessageRange set, FetchGroup fetchGroup, int batchSize, MailboxSession mailboxSession) throws MailboxException {
+    public MessageResultIterator getMessages(final MessageRange set, FetchGroup fetchGroup, MailboxSession mailboxSession) throws MailboxException {
         final MessageMapper<Id> messageMapper = mapperFactory.getMessageMapper(mailboxSession);
-        return new StoreMessageResultIterator<Id>(messageMapper, mailbox, set, batchSize, fetchGroup);
+        return new StoreMessageResultIterator<Id>(messageMapper, mailbox, set, fetchBatchSize, fetchGroup);
     }
 
  

Modified: james/mailbox/trunk/tool/src/main/java/org/apache/james/mailbox/copier/MailboxCopierImpl.java
URL: http://svn.apache.org/viewvc/james/mailbox/trunk/tool/src/main/java/org/apache/james/mailbox/copier/MailboxCopierImpl.java?rev=1179503&r1=1179502&r2=1179503&view=diff
==============================================================================
--- james/mailbox/trunk/tool/src/main/java/org/apache/james/mailbox/copier/MailboxCopierImpl.java (original)
+++ james/mailbox/trunk/tool/src/main/java/org/apache/james/mailbox/copier/MailboxCopierImpl.java Thu Oct  6 05:23:05 2011
@@ -119,7 +119,7 @@ public class MailboxCopierImpl implement
                 MessageManager dstMessageManager = dstMailboxManager.getMailbox(mailboxPath, dstMailboxSession);
 
                 int j=0;
-                Iterator<MessageResult> messageResultIterator = srcMessageManager.getMessages(MessageRange.all(), GROUP, -1, srcMailboxSession);
+                Iterator<MessageResult> messageResultIterator = srcMessageManager.getMessages(MessageRange.all(), GROUP, srcMailboxSession);
                 
                 while (messageResultIterator.hasNext()) {
 



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org