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 bt...@apache.org on 2017/08/24 03:46:38 UTC
[13/38] james-project git commit: JAMES-2114 Add MDC logging context
for CLI
JAMES-2114 Add MDC logging context for CLI
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/7600a6d5
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/7600a6d5
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/7600a6d5
Branch: refs/heads/master
Commit: 7600a6d5a432ddc195d5b47b9fd6399627c4200b
Parents: 036fa84
Author: benwa <bt...@linagora.com>
Authored: Mon Aug 14 15:06:16 2017 +0700
Committer: benwa <bt...@linagora.com>
Committed: Thu Aug 24 10:34:43 2017 +0700
----------------------------------------------------------------------
.../james/cli/probe/impl/JmxDataProbe.java | 136 ++++++++++++++++---
server/container/mailbox-adapter/pom.xml | 4 +
.../mailbox/MailboxManagerManagement.java | 53 ++++++--
.../james/adapter/mailbox/QuotaManagement.java | 116 ++++++++++++++--
.../adapter/mailbox/ReIndexerManagement.java | 26 +++-
5 files changed, 295 insertions(+), 40 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/james-project/blob/7600a6d5/server/container/cli/src/main/java/org/apache/james/cli/probe/impl/JmxDataProbe.java
----------------------------------------------------------------------
diff --git a/server/container/cli/src/main/java/org/apache/james/cli/probe/impl/JmxDataProbe.java b/server/container/cli/src/main/java/org/apache/james/cli/probe/impl/JmxDataProbe.java
index 1256f0c..3c70b24 100644
--- a/server/container/cli/src/main/java/org/apache/james/cli/probe/impl/JmxDataProbe.java
+++ b/server/container/cli/src/main/java/org/apache/james/cli/probe/impl/JmxDataProbe.java
@@ -19,6 +19,7 @@
package org.apache.james.cli.probe.impl;
+import java.io.Closeable;
import java.io.IOException;
import java.util.List;
import java.util.Map;
@@ -30,17 +31,18 @@ import org.apache.james.probe.DataProbe;
import org.apache.james.rrt.api.RecipientRewriteTableManagementMBean;
import org.apache.james.rrt.lib.Mappings;
import org.apache.james.user.api.UsersRepositoryManagementMBean;
+import org.apache.james.util.MDCBuilder;
public class JmxDataProbe implements DataProbe, JmxProbe {
-
+
private final static String DOMAINLIST_OBJECT_NAME = "org.apache.james:type=component,name=domainlist";
private final static String VIRTUALUSERTABLE_OBJECT_NAME = "org.apache.james:type=component,name=recipientrewritetable";
private final static String USERSREPOSITORY_OBJECT_NAME = "org.apache.james:type=component,name=usersrepository";
-
+
private DomainListManagementMBean domainListProxy;
private RecipientRewriteTableManagementMBean virtualUserTableProxy;
private UsersRepositoryManagementMBean usersRepositoryProxy;
-
+
public JmxDataProbe connect(JmxConnection jmxc) throws IOException {
try {
domainListProxy = jmxc.retrieveBean(DomainListManagementMBean.class, DOMAINLIST_OBJECT_NAME);
@@ -51,80 +53,176 @@ public class JmxDataProbe implements DataProbe, JmxProbe {
}
return this;
}
-
+
@Override
public void addUser(String userName, String password) throws Exception {
- usersRepositoryProxy.addUser(userName, password);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "addUser")
+ .addContext("parameter", userName)
+ .build()) {
+ usersRepositoryProxy.addUser(userName, password);
+ }
}
@Override
public void removeUser(String username) throws Exception {
- usersRepositoryProxy.deleteUser(username);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "removeUser")
+ .addContext("parameter", username)
+ .build()) {
+ usersRepositoryProxy.deleteUser(username);
+ }
}
@Override
public String[] listUsers() throws Exception {
- return usersRepositoryProxy.listAllUsers();
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "listUsers")
+ .build()) {
+ return usersRepositoryProxy.listAllUsers();
+ }
}
@Override
public void setPassword(String userName, String password) throws Exception {
- usersRepositoryProxy.setPassword(userName, password);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "setPassword")
+ .addContext("parameter", userName)
+ .build()) {
+ usersRepositoryProxy.setPassword(userName, password);
+ }
}
@Override
public boolean containsDomain(String domain) throws Exception {
- return domainListProxy.containsDomain(domain);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "containsDomain")
+ .addContext("parameter", domain)
+ .build()) {
+ return domainListProxy.containsDomain(domain);
+ }
}
@Override
public String getDefaultDomain() throws Exception {
- return domainListProxy.getDefaultDomain();
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "getDefaultDomain")
+ .build()) {
+ return domainListProxy.getDefaultDomain();
+ }
}
@Override
public void addDomain(String domain) throws Exception {
- domainListProxy.addDomain(domain);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "addDomain")
+ .addContext("parameter", domain)
+ .build()) {
+ domainListProxy.addDomain(domain);
+ }
}
@Override
public void removeDomain(String domain) throws Exception {
- domainListProxy.removeDomain(domain);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "removeDomain")
+ .addContext("parameter", domain)
+ .build()) {
+ domainListProxy.removeDomain(domain);
+ }
}
@Override
public List<String> listDomains() throws Exception {
- return domainListProxy.getDomains();
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "listDomains")
+ .build()) {
+ return domainListProxy.getDomains();
+ }
}
@Override
public Map<String, Mappings> listMappings() throws Exception {
- return virtualUserTableProxy.getAllMappings();
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "listMappings")
+ .build()) {
+ return virtualUserTableProxy.getAllMappings();
+ }
}
@Override
public void addAddressMapping(String user, String domain, String toAddress) throws Exception {
- virtualUserTableProxy.addAddressMapping(user, domain, toAddress);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "addAddressMapping")
+ .build()) {
+ virtualUserTableProxy.addAddressMapping(user, domain, toAddress);
+ }
}
@Override
public void removeAddressMapping(String user, String domain, String fromAddress) throws Exception {
- virtualUserTableProxy.removeAddressMapping(user, domain, fromAddress);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "removeAddressMapping")
+ .build()) {
+ virtualUserTableProxy.removeAddressMapping(user, domain, fromAddress);
+ }
}
@Override
public Mappings listUserDomainMappings(String user, String domain) throws Exception {
- return virtualUserTableProxy.getUserDomainMappings(user, domain);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "listUserDomainMappings")
+ .build()) {
+ return virtualUserTableProxy.getUserDomainMappings(user, domain);
+ }
}
@Override
public void addRegexMapping(String user, String domain, String regex) throws Exception {
- virtualUserTableProxy.addRegexMapping(user, domain, regex);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "addRegexMapping")
+ .build()) {
+ virtualUserTableProxy.addRegexMapping(user, domain, regex);
+ }
}
@Override
public void removeRegexMapping(String user, String domain, String regex) throws Exception {
- virtualUserTableProxy.removeRegexMapping(user, domain, regex);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "removeRegexMapping")
+ .build()) {
+ virtualUserTableProxy.removeRegexMapping(user, domain, regex);
+ }
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/james-project/blob/7600a6d5/server/container/mailbox-adapter/pom.xml
----------------------------------------------------------------------
diff --git a/server/container/mailbox-adapter/pom.xml b/server/container/mailbox-adapter/pom.xml
index 4a1ee3e..74b37d2 100644
--- a/server/container/mailbox-adapter/pom.xml
+++ b/server/container/mailbox-adapter/pom.xml
@@ -47,6 +47,10 @@
</dependency>
<dependency>
<groupId>org.apache.james</groupId>
+ <artifactId>james-server-util-java8</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.james</groupId>
<artifactId>apache-james-mailbox-api</artifactId>
</dependency>
<dependency>
http://git-wip-us.apache.org/repos/asf/james-project/blob/7600a6d5/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java
----------------------------------------------------------------------
diff --git a/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java b/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java
index 29415cf..515f5b0 100644
--- a/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java
+++ b/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java
@@ -18,7 +18,9 @@
****************************************************************/
package org.apache.james.adapter.mailbox;
+import java.io.Closeable;
import java.io.FileInputStream;
+import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Date;
@@ -39,10 +41,12 @@ import org.apache.james.mailbox.model.MailboxConstants;
import org.apache.james.mailbox.model.MailboxMetaData;
import org.apache.james.mailbox.model.MailboxPath;
import org.apache.james.mailbox.model.MailboxQuery;
+import org.apache.james.util.MDCBuilder;
import org.slf4j.Logger;
import com.github.steveash.guavate.Guavate;
import com.google.common.base.Preconditions;
+import com.google.common.base.Throwables;
/**
* JMX managmenent for Mailboxes
@@ -69,7 +73,12 @@ public class MailboxManagerManagement extends StandardMBean implements MailboxMa
public boolean deleteMailboxes(String username) {
checkString(username, "Username");
MailboxSession session = null;
- try {
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "deleteMailboxes")
+ .addContext("concernedUser", username)
+ .build()) {
session = mailboxManager.createSystemSession(username, log);
mailboxManager.startProcessingRequest(session);
List<MailboxMetaData> mList = retrieveAllUserMailboxes(username, session);
@@ -79,6 +88,8 @@ public class MailboxManagerManagement extends StandardMBean implements MailboxMa
return true;
} catch (MailboxException e) {
log.error("Error while remove mailboxes for user " + username, e);
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
} finally {
closeSession(session);
}
@@ -103,7 +114,12 @@ public class MailboxManagerManagement extends StandardMBean implements MailboxMa
checkString(username, "Username");
List<String> boxes = new ArrayList<>();
MailboxSession session = null;
- try {
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "listMailboxes")
+ .addContext("concernedUser", username)
+ .build()) {
session = mailboxManager.createSystemSession(username, log);
mailboxManager.startProcessingRequest(session);
List<MailboxMetaData> mList = retrieveAllUserMailboxes(username, session);
@@ -113,6 +129,8 @@ public class MailboxManagerManagement extends StandardMBean implements MailboxMa
.collect(Guavate.toImmutableList());
} catch (MailboxException e) {
log.error("Error list mailboxes for user " + username, e);
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
} finally {
closeSession(session);
}
@@ -123,10 +141,16 @@ public class MailboxManagerManagement extends StandardMBean implements MailboxMa
public void createMailbox(String namespace, String user, String name) {
checkMailboxArguments(namespace, user, name);
MailboxSession session = null;
- try {
+ MailboxPath mailboxPath = new MailboxPath(namespace, user, name);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "createMailbox")
+ .addContext("mailboxPath", mailboxPath.asString())
+ .build()) {
session = mailboxManager.createSystemSession(user, log);
mailboxManager.startProcessingRequest(session);
- mailboxManager.createMailbox(new MailboxPath(namespace, user, name), session);
+ mailboxManager.createMailbox(mailboxPath, session);
} catch (Exception e) {
log.error("Unable to create mailbox", e);
} finally {
@@ -138,10 +162,16 @@ public class MailboxManagerManagement extends StandardMBean implements MailboxMa
public void deleteMailbox(String namespace, String user, String name) {
checkMailboxArguments(namespace, user, name);
MailboxSession session = null;
- try {
+ MailboxPath mailboxPath = new MailboxPath(namespace, user, name);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "deleteMailbox")
+ .addContext("mailboxPath", mailboxPath.asString())
+ .build()) {
session = mailboxManager.createSystemSession(user, log);
mailboxManager.startProcessingRequest(session);
- mailboxManager.deleteMailbox(new MailboxPath(namespace, user, name), session);
+ mailboxManager.deleteMailbox(mailboxPath, session);
} catch (Exception e) {
log.error("Unable to create mailbox", e);
} finally {
@@ -155,10 +185,17 @@ public class MailboxManagerManagement extends StandardMBean implements MailboxMa
checkString(emlPath, "email file path name");
MailboxSession session = null;
- try {
+ MailboxPath mailboxPath = new MailboxPath(namespace, user, name);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "importEmlFileToMailbox")
+ .addContext("mailboxPath", mailboxPath.asString())
+ .addContext("emlPath", emlPath)
+ .build()) {
session = mailboxManager.createSystemSession(user, log);
mailboxManager.startProcessingRequest(session);
- MessageManager messageManager = mailboxManager.getMailbox(new MailboxPath(namespace, user, name), session);
+ MessageManager messageManager = mailboxManager.getMailbox(mailboxPath, session);
InputStream emlFileAsStream = new FileInputStream(emlPath);
messageManager.appendMessage(emlFileAsStream, new Date(),
session, RECENT, new Flags());
http://git-wip-us.apache.org/repos/asf/james-project/blob/7600a6d5/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/QuotaManagement.java
----------------------------------------------------------------------
diff --git a/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/QuotaManagement.java b/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/QuotaManagement.java
index 9083ab4..7a05c3d 100644
--- a/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/QuotaManagement.java
+++ b/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/QuotaManagement.java
@@ -19,6 +19,9 @@
package org.apache.james.adapter.mailbox;
+import java.io.Closeable;
+import java.io.IOException;
+
import javax.inject.Inject;
import org.apache.james.mailbox.exception.MailboxException;
@@ -27,6 +30,9 @@ import org.apache.james.mailbox.quota.MaxQuotaManager;
import org.apache.james.mailbox.quota.QuotaManager;
import org.apache.james.mailbox.quota.QuotaRootResolver;
import org.apache.james.mailbox.store.mail.model.SerializableQuota;
+import org.apache.james.util.MDCBuilder;
+
+import com.google.common.base.Throwables;
public class QuotaManagement implements QuotaManagementMBean {
@@ -43,56 +49,144 @@ public class QuotaManagement implements QuotaManagementMBean {
@Override
public String getQuotaRoot(String namespace, String user, String name) throws MailboxException {
- return quotaRootResolver.getQuotaRoot(new MailboxPath(namespace, user, name)).getValue();
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "getQuotaRoot")
+ .build()) {
+ return quotaRootResolver.getQuotaRoot(new MailboxPath(namespace, user, name)).getValue();
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
+ }
}
@Override
public long getMaxMessageCount(String quotaRoot) throws MailboxException {
- return maxQuotaManager.getMaxMessage(quotaRootResolver.createQuotaRoot(quotaRoot));
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "getMaxMessageCount")
+ .build()) {
+ return maxQuotaManager.getMaxMessage(quotaRootResolver.createQuotaRoot(quotaRoot));
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
+ }
}
@Override
public long getMaxStorage(String quotaRoot) throws MailboxException {
- return maxQuotaManager.getMaxStorage(quotaRootResolver.createQuotaRoot(quotaRoot));
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "getMaxStorage")
+ .build()) {
+ return maxQuotaManager.getMaxStorage(quotaRootResolver.createQuotaRoot(quotaRoot));
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
+ }
}
@Override
public long getDefaultMaxMessageCount() throws MailboxException {
- return maxQuotaManager.getDefaultMaxMessage();
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "getDefaultMaxMessageCount")
+ .build()) {
+ return maxQuotaManager.getDefaultMaxMessage();
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
+ }
}
@Override
public long getDefaultMaxStorage() throws MailboxException {
- return maxQuotaManager.getDefaultMaxStorage();
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "getDefaultMaxStorage")
+ .build()) {
+ return maxQuotaManager.getDefaultMaxStorage();
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
+ }
}
@Override
public void setMaxMessageCount(String quotaRoot, long maxMessageCount) throws MailboxException {
- maxQuotaManager.setMaxMessage(quotaRootResolver.createQuotaRoot(quotaRoot), maxMessageCount);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "setMaxMessageCount")
+ .build()) {
+ maxQuotaManager.setMaxMessage(quotaRootResolver.createQuotaRoot(quotaRoot), maxMessageCount);
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
+ }
}
@Override
public void setMaxStorage(String quotaRoot, long maxSize) throws MailboxException {
- maxQuotaManager.setMaxStorage(quotaRootResolver.createQuotaRoot(quotaRoot), maxSize);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "setMaxStorage")
+ .build()) {
+ maxQuotaManager.setMaxStorage(quotaRootResolver.createQuotaRoot(quotaRoot), maxSize);
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
+ }
}
@Override
public void setDefaultMaxMessageCount(long maxDefaultMessageCount) throws MailboxException {
- maxQuotaManager.setDefaultMaxMessage(maxDefaultMessageCount);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "setDefaultMaxMessageCount")
+ .build()) {
+ maxQuotaManager.setDefaultMaxMessage(maxDefaultMessageCount);
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
+ }
}
@Override
public void setDefaultMaxStorage(long maxDefaultSize) throws MailboxException {
- maxQuotaManager.setDefaultMaxStorage(maxDefaultSize);
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "setDefaultMaxStorage")
+ .build()) {
+ maxQuotaManager.setDefaultMaxStorage(maxDefaultSize);
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
+ }
}
@Override
public SerializableQuota getMessageCountQuota(String quotaRoot) throws MailboxException {
- return new SerializableQuota(quotaManager.getMessageQuota(quotaRootResolver.createQuotaRoot(quotaRoot)));
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "getMessageCountQuota")
+ .build()) {
+ return new SerializableQuota(quotaManager.getMessageQuota(quotaRootResolver.createQuotaRoot(quotaRoot)));
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
+ }
}
@Override
public SerializableQuota getStorageQuota(String quotaRoot) throws MailboxException {
- return new SerializableQuota(quotaManager.getStorageQuota(quotaRootResolver.createQuotaRoot(quotaRoot)));
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "getStorageQuota")
+ .build()) {
+ return new SerializableQuota(quotaManager.getStorageQuota(quotaRootResolver.createQuotaRoot(quotaRoot)));
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
+ }
}
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/7600a6d5/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/ReIndexerManagement.java
----------------------------------------------------------------------
diff --git a/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/ReIndexerManagement.java b/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/ReIndexerManagement.java
index 6ca3e0a..468cf19 100644
--- a/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/ReIndexerManagement.java
+++ b/server/container/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/ReIndexerManagement.java
@@ -19,12 +19,18 @@
package org.apache.james.adapter.mailbox;
+import java.io.Closeable;
+import java.io.IOException;
+
import javax.inject.Inject;
import javax.inject.Named;
import org.apache.james.mailbox.exception.MailboxException;
import org.apache.james.mailbox.indexer.ReIndexer;
import org.apache.james.mailbox.model.MailboxPath;
+import org.apache.james.util.MDCBuilder;
+
+import com.google.common.base.Throwables;
public class ReIndexerManagement implements ReIndexerManagementMBean {
@@ -37,11 +43,27 @@ public class ReIndexerManagement implements ReIndexerManagementMBean {
@Override
public void reIndex(String namespace, String user, String name) throws MailboxException {
- reIndexer.reIndex(new MailboxPath(namespace, user, name));
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "reIndex")
+ .build()) {
+ reIndexer.reIndex(new MailboxPath(namespace, user, name));
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
+ }
}
@Override
public void reIndex() throws MailboxException {
- reIndexer.reIndex();
+ try (Closeable closeable =
+ MDCBuilder.create()
+ .addContext(MDCBuilder.PROTOCOL, "CLI")
+ .addContext(MDCBuilder.ACTION, "reIndex")
+ .build()) {
+ reIndexer.reIndex();
+ } catch (IOException e) {
+ throw Throwables.propagate(e);
+ }
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org