JAMES-2436 Don't do the loops in the public method

Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/49c2a841
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/49c2a841
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/49c2a841

Branch: refs/heads/master
Commit: 49c2a841de7a24c5bb842038be69163920029550
Parents: 628420f
Author: Antoine Duprat <[email protected]>
Authored: Thu Jun 21 15:05:20 2018 +0200
Committer: Raphael Ouazana <[email protected]>
Committed: Wed Jun 27 16:41:40 2018 +0200

----------------------------------------------------------------------
 .../org/apache/james/mailbox/backup/Zipper.java | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/49c2a841/mailbox/backup/src/main/java/org/apache/james/mailbox/backup/Zipper.java
----------------------------------------------------------------------
diff --git 
a/mailbox/backup/src/main/java/org/apache/james/mailbox/backup/Zipper.java 
b/mailbox/backup/src/main/java/org/apache/james/mailbox/backup/Zipper.java
index a249a9f..3a1314c 100644
--- a/mailbox/backup/src/main/java/org/apache/james/mailbox/backup/Zipper.java
+++ b/mailbox/backup/src/main/java/org/apache/james/mailbox/backup/Zipper.java
@@ -46,16 +46,24 @@ public class Zipper implements Backup {
     @Override
     public void archive(List<Mailbox> mailboxes, Stream<MailboxMessage> 
messages, OutputStream destination) throws IOException {
         try (ZipArchiveOutputStream archiveOutputStream = new 
ZipArchiveOutputStream(destination)) {
-            for (Mailbox mailbox: mailboxes) {
-                storeInArchive(mailbox, archiveOutputStream);
-            }
-            messages.forEach(Throwing.<MailboxMessage>consumer(message -> {
-                storeInArchive(message, archiveOutputStream);
-            }).sneakyThrow());
+            storeMailboxes(mailboxes, archiveOutputStream);
+            storeMessages(messages, archiveOutputStream);
             archiveOutputStream.finish();
         }
     }
 
+    private void storeMailboxes(List<Mailbox> mailboxes, 
ZipArchiveOutputStream archiveOutputStream) throws IOException {
+        for (Mailbox mailbox: mailboxes) {
+            storeInArchive(mailbox, archiveOutputStream);
+        }
+    }
+
+    private void storeMessages(Stream<MailboxMessage> messages, 
ZipArchiveOutputStream archiveOutputStream) {
+        messages.forEach(Throwing.<MailboxMessage>consumer(message -> {
+            storeInArchive(message, archiveOutputStream);
+        }).sneakyThrow());
+    }
+
     private void storeInArchive(Mailbox mailbox, ZipArchiveOutputStream 
archiveOutputStream) throws IOException {
         String name = mailbox.getName();
         ZipArchiveEntry archiveEntry = (ZipArchiveEntry) 
archiveOutputStream.createArchiveEntry(new Directory(name), name);


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to