JAMES-2140 Log composedId upon delivery

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

Branch: refs/heads/master
Commit: 1998ff35a2b4f3c5b96a3b266508b9a97fc343fb
Parents: 2abd71b
Author: benwa <btell...@linagora.com>
Authored: Fri Sep 8 12:00:43 2017 +0700
Committer: benwa <btell...@linagora.com>
Committed: Mon Sep 11 09:35:44 2017 +0700

----------------------------------------------------------------------
 .../transport/mailets/delivery/MailboxAppender.java    | 13 +++++++------
 .../transport/mailets/delivery/SimpleMailStore.java    |  7 ++++---
 2 files changed, 11 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/1998ff35/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/MailboxAppender.java
----------------------------------------------------------------------
diff --git 
a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/MailboxAppender.java
 
b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/MailboxAppender.java
index 335389c..2a931c1 100644
--- 
a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/MailboxAppender.java
+++ 
b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/MailboxAppender.java
@@ -31,6 +31,7 @@ import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.MessageManager;
 import org.apache.james.mailbox.exception.BadCredentialsException;
 import org.apache.james.mailbox.exception.MailboxException;
+import org.apache.james.mailbox.model.ComposedMessageId;
 import org.apache.james.mailbox.model.MailboxPath;
 
 import com.google.common.base.Strings;
@@ -45,9 +46,9 @@ public class MailboxAppender {
         this.mailboxManager = mailboxManager;
     }
 
-    public void append(MimeMessage mail, String user, String folder) throws 
MessagingException {
+    public ComposedMessageId append(MimeMessage mail, String user, String 
folder) throws MessagingException {
         MailboxSession session = createMailboxSession(user);
-        append(mail, user, useSlashAsSeparator(folder, session), session);
+        return append(mail, user, useSlashAsSeparator(folder, session), 
session);
     }
 
     private String useSlashAsSeparator(String urlPath, MailboxSession session) 
throws MessagingException {
@@ -61,11 +62,11 @@ public class MailboxAppender {
         return destination;
     }
 
-    private void append(MimeMessage mail, String user, String folder, 
MailboxSession session) throws MessagingException {
+    private ComposedMessageId append(MimeMessage mail, String user, String 
folder, MailboxSession session) throws MessagingException {
         mailboxManager.startProcessingRequest(session);
         try {
             MailboxPath mailboxPath = new 
MailboxPath(session.getPersonalSpace(), user, folder);
-            appendMessageToMailbox(mail, session, mailboxPath);
+            return appendMessageToMailbox(mail, session, mailboxPath);
         } catch (MailboxException e) {
             throw new MessagingException("Unable to access mailbox.", e);
         } finally {
@@ -73,13 +74,13 @@ public class MailboxAppender {
         }
     }
 
-    private void appendMessageToMailbox(MimeMessage mail, MailboxSession 
session, MailboxPath path) throws MailboxException, MessagingException {
+    private ComposedMessageId appendMessageToMailbox(MimeMessage mail, 
MailboxSession session, MailboxPath path) throws MailboxException, 
MessagingException {
         createMailboxIfNotExist(session, path);
         final MessageManager mailbox = mailboxManager.getMailbox(path, 
session);
         if (mailbox == null) {
             throw new MessagingException("Mailbox " + path + " for user " + 
session.getUser().getUserName() + " was not found on this server.");
         }
-        mailbox.appendMessage(new MimeMessageInputStream(mail), new Date(), 
session, IS_RECENT, FLAGS);
+        return mailbox.appendMessage(new MimeMessageInputStream(mail), new 
Date(), session, IS_RECENT, FLAGS);
     }
 
     private void createMailboxIfNotExist(MailboxSession session, MailboxPath 
path) throws MailboxException {

http://git-wip-us.apache.org/repos/asf/james-project/blob/1998ff35/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/SimpleMailStore.java
----------------------------------------------------------------------
diff --git 
a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/SimpleMailStore.java
 
b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/SimpleMailStore.java
index 21673b9..369a20d 100644
--- 
a/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/SimpleMailStore.java
+++ 
b/server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/delivery/SimpleMailStore.java
@@ -21,6 +21,7 @@ package org.apache.james.transport.mailets.delivery;
 
 import javax.mail.MessagingException;
 
+import org.apache.james.mailbox.model.ComposedMessageId;
 import org.apache.james.metrics.api.Metric;
 import org.apache.james.user.api.UsersRepository;
 import org.apache.james.user.api.UsersRepositoryException;
@@ -91,11 +92,11 @@ public class SimpleMailStore implements MailStore {
         String username = computeUsername(recipient);
 
         String locatedFolder = locateFolder(username, mail);
-        mailboxAppender.append(mail.getMessage(), username, locatedFolder);
+        ComposedMessageId composedMessageId = 
mailboxAppender.append(mail.getMessage(), username, locatedFolder);
 
         metric.increment();
-        LOGGER.info("Local delivered mail {} successfully from {} to {} in 
folder {}", mail.getName(),
-            DeliveryUtils.prettyPrint(mail.getSender()), 
DeliveryUtils.prettyPrint(recipient), locatedFolder);
+        LOGGER.info("Local delivered mail {} successfully from {} to {} in 
folder {} with composedMessageId {}", mail.getName(),
+            DeliveryUtils.prettyPrint(mail.getSender()), 
DeliveryUtils.prettyPrint(recipient), locatedFolder, composedMessageId);
     }
 
     private String locateFolder(String username, Mail mail) {


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

Reply via email to