JAMES-2184 Simplify JamesHostSystem hierarchy
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/65d3ac3a Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/65d3ac3a Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/65d3ac3a Branch: refs/heads/master Commit: 65d3ac3a97ad465243c1165330aaa6d6029e34b8 Parents: 10cd0d9 Author: benwa <btell...@linagora.com> Authored: Fri Oct 13 17:26:31 2017 +0700 Committer: benwa <btell...@linagora.com> Committed: Wed Oct 18 09:02:16 2017 +0700 ---------------------------------------------------------------------- .../cassandra/host/CassandraHostSystem.java | 18 ++------- .../james/mpt/host/JamesImapHostSystem.java | 27 ++++++++++++- .../imapmailbox/MailboxCreationDelegate.java | 42 -------------------- .../host/ElasticSearchHostSystem.java | 18 ++------- .../imapmailbox/hbase/host/HBaseHostSystem.java | 20 ++-------- .../inmemory/host/InMemoryHostSystem.java | 20 ++-------- .../mpt/imapmailbox/jcr/host/JCRHostSystem.java | 19 ++------- .../mpt/imapmailbox/jpa/host/JPAHostSystem.java | 19 ++------- .../host/LuceneSearchHostSystem.java | 17 ++------ .../maildir/host/MaildirHostSystem.java | 17 ++------ 10 files changed, 53 insertions(+), 164 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/65d3ac3a/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java b/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java index 0aaffcb..465a2f2 100644 --- a/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java +++ b/mpt/impl/imap-mailbox/cassandra/src/test/java/org/apache/james/mpt/imapmailbox/cassandra/host/CassandraHostSystem.java @@ -24,6 +24,7 @@ import org.apache.james.backends.cassandra.init.CassandraModuleComposite; import org.apache.james.imap.encode.main.DefaultImapEncoderFactory; import org.apache.james.imap.main.DefaultImapDecoderFactory; import org.apache.james.imap.processor.main.DefaultImapProcessorFactory; +import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.SubscriptionManager; import org.apache.james.mailbox.cassandra.CassandraMailboxManager; import org.apache.james.mailbox.cassandra.CassandraMailboxSessionMapperFactory; @@ -47,8 +48,6 @@ import org.apache.james.mailbox.cassandra.modules.CassandraUidModule; import org.apache.james.mailbox.cassandra.quota.CassandraCurrentQuotaManager; import org.apache.james.mailbox.cassandra.quota.CassandraPerUserMaxQuotaManager; import org.apache.james.mailbox.exception.MailboxException; -import org.apache.james.mailbox.model.MailboxACL; -import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.quota.QuotaRootResolver; import org.apache.james.mailbox.store.JVMMailboxPathLocker; import org.apache.james.mailbox.store.StoreSubscriptionManager; @@ -60,7 +59,6 @@ import org.apache.james.metrics.logger.DefaultMetricFactory; import org.apache.james.mpt.api.ImapFeatures; import org.apache.james.mpt.api.ImapFeatures.Feature; import org.apache.james.mpt.host.JamesImapHostSystem; -import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; public class CassandraHostSystem extends JamesImapHostSystem { @@ -143,11 +141,6 @@ public class CassandraHostSystem extends JamesImapHostSystem { protected void finalize() throws Throwable { super.finalize(); } - - @Override - public void createMailbox(MailboxPath mailboxPath) throws Exception{ - new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); - } @Override public boolean supports(Feature... features) { @@ -161,12 +154,7 @@ public class CassandraHostSystem extends JamesImapHostSystem { } @Override - public void grantRights(MailboxPath mailboxPath, String userName, MailboxACL.Rfc4314Rights rights) throws Exception { - mailboxManager.setRights(mailboxPath, - MailboxACL.EMPTY.apply(MailboxACL.command() - .forUser(userName) - .rights(rights) - .asAddition()), - mailboxManager.createSystemSession(userName)); + protected MailboxManager getMailboxManager() { + return mailboxManager; } } http://git-wip-us.apache.org/repos/asf/james-project/blob/65d3ac3a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/host/JamesImapHostSystem.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/host/JamesImapHostSystem.java b/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/host/JamesImapHostSystem.java index bb8abdb..662002a 100644 --- a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/host/JamesImapHostSystem.java +++ b/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/host/JamesImapHostSystem.java @@ -29,6 +29,8 @@ import org.apache.james.imap.api.process.ImapProcessor; import org.apache.james.imap.decode.ImapDecoder; import org.apache.james.imap.decode.main.ImapRequestStreamHandler; import org.apache.james.imap.encode.ImapEncoder; +import org.apache.james.mailbox.MailboxManager; +import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.model.MailboxACL; import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.store.Authenticator; @@ -88,10 +90,31 @@ public abstract class JamesImapHostSystem implements ImapHostSystem, GrantRights throws Exception { return new Session(continuation); } + + protected abstract MailboxManager getMailboxManager(); - public abstract void createMailbox(MailboxPath mailboxPath) throws Exception; + public void createMailbox(MailboxPath mailboxPath) throws Exception { + MailboxManager mailboxManager = getMailboxManager(); + MailboxSession mailboxSession = mailboxManager.createSystemSession(mailboxPath.getUser()); + mailboxManager.startProcessingRequest(mailboxSession); + mailboxManager.createMailbox(mailboxPath, mailboxSession); + mailboxManager.logout(mailboxSession, true); + mailboxManager.endProcessingRequest(mailboxSession); + } - public abstract void grantRights(MailboxPath mailboxPath, String userName, MailboxACL.Rfc4314Rights rights) throws Exception; + public void grantRights(MailboxPath mailboxPath, String userName, MailboxACL.Rfc4314Rights rights) throws Exception { + MailboxManager mailboxManager = getMailboxManager(); + MailboxSession mailboxSession = mailboxManager.createSystemSession(mailboxPath.getUser()); + mailboxManager.startProcessingRequest(mailboxSession); + mailboxManager.setRights(mailboxPath, + MailboxACL.EMPTY.apply(MailboxACL.command() + .forUser(userName) + .rights(rights) + .asAddition()), + mailboxManager.createSystemSession(userName)); + mailboxManager.logout(mailboxSession, true); + mailboxManager.endProcessingRequest(mailboxSession); + } class Session implements org.apache.james.mpt.api.Session { ByteBufferOutputStream out; http://git-wip-us.apache.org/repos/asf/james-project/blob/65d3ac3a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/MailboxCreationDelegate.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/MailboxCreationDelegate.java b/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/MailboxCreationDelegate.java deleted file mode 100644 index 75fdf4e..0000000 --- a/mpt/impl/imap-mailbox/core/src/main/java/org/apache/james/mpt/imapmailbox/MailboxCreationDelegate.java +++ /dev/null @@ -1,42 +0,0 @@ -/**************************************************************** - * Licensed to the Apache Software Foundation (ASF) under one * - * or more contributor license agreements. See the NOTICE file * - * distributed with this work for additional information * - * regarding copyright ownership. The ASF licenses this file * - * to you under the Apache License, Version 2.0 (the * - * "License"); you may not use this file except in compliance * - * with the License. You may obtain a copy of the License at * - * * - * http://www.apache.org/licenses/LICENSE-2.0 * - * * - * Unless required by applicable law or agreed to in writing, * - * software distributed under the License is distributed on an * - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * - * KIND, either express or implied. See the License for the * - * specific language governing permissions and limitations * - * under the License. * - ****************************************************************/ - -package org.apache.james.mpt.imapmailbox; - -import org.apache.james.mailbox.MailboxManager; -import org.apache.james.mailbox.MailboxSession; -import org.apache.james.mailbox.model.MailboxPath; - -public class MailboxCreationDelegate { - - private final MailboxManager mailboxManager; - - public MailboxCreationDelegate(MailboxManager mailboxManager) { - this.mailboxManager = mailboxManager; - } - - public void createMailbox(MailboxPath mailboxPath) throws Exception{ - MailboxSession mailboxSession = mailboxManager.createSystemSession("system"); - mailboxManager.startProcessingRequest(mailboxSession); - mailboxManager.createMailbox(mailboxPath, mailboxSession); - mailboxManager.logout(mailboxSession, true); - mailboxManager.endProcessingRequest(mailboxSession); - } - -} http://git-wip-us.apache.org/repos/asf/james-project/blob/65d3ac3a/mpt/impl/imap-mailbox/elasticsearch/src/test/java/org/apache/james/mpt/imapmailbox/elasticsearch/host/ElasticSearchHostSystem.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/elasticsearch/src/test/java/org/apache/james/mpt/imapmailbox/elasticsearch/host/ElasticSearchHostSystem.java b/mpt/impl/imap-mailbox/elasticsearch/src/test/java/org/apache/james/mpt/imapmailbox/elasticsearch/host/ElasticSearchHostSystem.java index 3ae5818..dcdd8f4 100644 --- a/mpt/impl/imap-mailbox/elasticsearch/src/test/java/org/apache/james/mpt/imapmailbox/elasticsearch/host/ElasticSearchHostSystem.java +++ b/mpt/impl/imap-mailbox/elasticsearch/src/test/java/org/apache/james/mpt/imapmailbox/elasticsearch/host/ElasticSearchHostSystem.java @@ -36,6 +36,7 @@ import org.apache.james.imap.api.process.ImapProcessor; import org.apache.james.imap.encode.main.DefaultImapEncoderFactory; import org.apache.james.imap.main.DefaultImapDecoderFactory; import org.apache.james.imap.processor.main.DefaultImapProcessorFactory; +import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.acl.GroupMembershipResolver; import org.apache.james.mailbox.acl.MailboxACLResolver; import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver; @@ -52,9 +53,7 @@ import org.apache.james.mailbox.exception.MailboxException; import org.apache.james.mailbox.inmemory.InMemoryId; import org.apache.james.mailbox.inmemory.InMemoryMailboxSessionMapperFactory; import org.apache.james.mailbox.inmemory.InMemoryMessageId; -import org.apache.james.mailbox.model.MailboxACL; import org.apache.james.mailbox.model.MailboxConstants; -import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.store.StoreMailboxManager; import org.apache.james.mailbox.store.StoreSubscriptionManager; import org.apache.james.mailbox.store.extractor.DefaultTextExtractor; @@ -65,7 +64,6 @@ import org.apache.james.metrics.logger.DefaultMetricFactory; import org.apache.james.mpt.api.ImapFeatures; import org.apache.james.mpt.api.ImapFeatures.Feature; import org.apache.james.mpt.host.JamesImapHostSystem; -import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; import org.elasticsearch.client.Client; import com.google.common.base.Throwables; @@ -139,8 +137,8 @@ public class ElasticSearchHostSystem extends JamesImapHostSystem { } @Override - public void createMailbox(MailboxPath mailboxPath) throws Exception{ - new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); + protected MailboxManager getMailboxManager() { + return mailboxManager; } @Override @@ -152,14 +150,4 @@ public class ElasticSearchHostSystem extends JamesImapHostSystem { public void setQuotaLimits(long maxMessageQuota, long maxStorageQuota) throws Exception { throw new NotImplementedException(); } - - @Override - public void grantRights(MailboxPath mailboxPath, String userName, MailboxACL.Rfc4314Rights rights) throws Exception { - mailboxManager.setRights(mailboxPath, - MailboxACL.EMPTY.apply(MailboxACL.command() - .forUser(userName) - .rights(rights) - .asAddition()), - mailboxManager.createSystemSession(userName)); - } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/james-project/blob/65d3ac3a/mpt/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java b/mpt/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java index fae8500..bd26353 100644 --- a/mpt/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java +++ b/mpt/impl/imap-mailbox/hbase/src/test/java/org/apache/james/mpt/imapmailbox/hbase/host/HBaseHostSystem.java @@ -30,6 +30,7 @@ import org.apache.james.imap.api.process.ImapProcessor; import org.apache.james.imap.encode.main.DefaultImapEncoderFactory; import org.apache.james.imap.main.DefaultImapDecoderFactory; import org.apache.james.imap.processor.main.DefaultImapProcessorFactory; +import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.SubscriptionManager; import org.apache.james.mailbox.acl.GroupMembershipResolver; @@ -40,8 +41,6 @@ import org.apache.james.mailbox.hbase.HBaseMailboxManager; import org.apache.james.mailbox.hbase.HBaseMailboxSessionMapperFactory; import org.apache.james.mailbox.hbase.mail.HBaseModSeqProvider; import org.apache.james.mailbox.hbase.mail.HBaseUidProvider; -import org.apache.james.mailbox.model.MailboxACL; -import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.store.StoreSubscriptionManager; import org.apache.james.mailbox.store.mail.model.DefaultMessageId; import org.apache.james.mailbox.store.mail.model.impl.MessageParser; @@ -51,7 +50,6 @@ import org.apache.james.metrics.api.NoopMetricFactory; import org.apache.james.mpt.api.ImapFeatures; import org.apache.james.mpt.api.ImapFeatures.Feature; import org.apache.james.mpt.host.JamesImapHostSystem; -import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; public class HBaseHostSystem extends JamesImapHostSystem { @@ -156,10 +154,10 @@ public class HBaseHostSystem extends JamesImapHostSystem { } @Override - public void createMailbox(MailboxPath mailboxPath) throws Exception{ - new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); + protected MailboxManager getMailboxManager() { + return mailboxManager; } - + @Override public boolean supports(Feature... features) { return SUPPORTED_FEATURES.supports(features); @@ -169,14 +167,4 @@ public class HBaseHostSystem extends JamesImapHostSystem { public void setQuotaLimits(long maxMessageQuota, long maxStorageQuota) throws Exception { throw new NotImplementedException(); } - - @Override - public void grantRights(MailboxPath mailboxPath, String userName, MailboxACL.Rfc4314Rights rights) throws Exception { - mailboxManager.setRights(mailboxPath, - MailboxACL.EMPTY.apply(MailboxACL.command() - .forUser(userName) - .rights(rights) - .asAddition()), - mailboxManager.createSystemSession(userName)); - } } http://git-wip-us.apache.org/repos/asf/james-project/blob/65d3ac3a/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java b/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java index 8a07469..4504737 100644 --- a/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java +++ b/mpt/impl/imap-mailbox/inmemory/src/test/java/org/apache/james/mpt/imapmailbox/inmemory/host/InMemoryHostSystem.java @@ -23,6 +23,7 @@ import org.apache.james.imap.api.process.ImapProcessor; import org.apache.james.imap.encode.main.DefaultImapEncoderFactory; import org.apache.james.imap.main.DefaultImapDecoderFactory; import org.apache.james.imap.processor.main.DefaultImapProcessorFactory; +import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.acl.GroupMembershipResolver; import org.apache.james.mailbox.acl.MailboxACLResolver; import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver; @@ -33,8 +34,6 @@ import org.apache.james.mailbox.inmemory.InMemoryMailboxSessionMapperFactory; import org.apache.james.mailbox.inmemory.InMemoryMessageId; import org.apache.james.mailbox.inmemory.quota.InMemoryCurrentQuotaManager; import org.apache.james.mailbox.inmemory.quota.InMemoryPerUserMaxQuotaManager; -import org.apache.james.mailbox.model.MailboxACL; -import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.quota.QuotaRootResolver; import org.apache.james.mailbox.store.JVMMailboxPathLocker; import org.apache.james.mailbox.store.StoreSubscriptionManager; @@ -47,7 +46,6 @@ import org.apache.james.metrics.logger.DefaultMetricFactory; import org.apache.james.mpt.api.ImapFeatures; import org.apache.james.mpt.api.ImapFeatures.Feature; import org.apache.james.mpt.host.JamesImapHostSystem; -import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; public class InMemoryHostSystem extends JamesImapHostSystem { @@ -99,10 +97,10 @@ public class InMemoryHostSystem extends JamesImapHostSystem { } @Override - public void createMailbox(MailboxPath mailboxPath) throws Exception{ - new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); + protected MailboxManager getMailboxManager() { + return mailboxManager; } - + @Override public boolean supports(Feature... features) { return SUPPORTED_FEATURES.supports(features); @@ -113,14 +111,4 @@ public class InMemoryHostSystem extends JamesImapHostSystem { perUserMaxQuotaManager.setDefaultMaxMessage(maxMessageQuota); perUserMaxQuotaManager.setDefaultMaxStorage(maxStorageQuota); } - - @Override - public void grantRights(MailboxPath mailboxPath, String userName, MailboxACL.Rfc4314Rights rights) throws Exception { - mailboxManager.setRights(mailboxPath, - MailboxACL.EMPTY.apply(MailboxACL.command() - .forUser(userName) - .rights(rights) - .asAddition()), - mailboxManager.createSystemSession(userName)); - } } http://git-wip-us.apache.org/repos/asf/james-project/blob/65d3ac3a/mpt/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/host/JCRHostSystem.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/host/JCRHostSystem.java b/mpt/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/host/JCRHostSystem.java index 8fb9322..cc4629f 100644 --- a/mpt/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/host/JCRHostSystem.java +++ b/mpt/impl/imap-mailbox/jcr/src/test/java/org/apache/james/mpt/imapmailbox/jcr/host/JCRHostSystem.java @@ -28,6 +28,7 @@ import org.apache.james.imap.api.process.ImapProcessor; import org.apache.james.imap.encode.main.DefaultImapEncoderFactory; import org.apache.james.imap.main.DefaultImapDecoderFactory; import org.apache.james.imap.processor.main.DefaultImapProcessorFactory; +import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.acl.GroupMembershipResolver; import org.apache.james.mailbox.acl.MailboxACLResolver; @@ -40,8 +41,6 @@ import org.apache.james.mailbox.jcr.JCRSubscriptionManager; import org.apache.james.mailbox.jcr.JCRUtils; import org.apache.james.mailbox.jcr.mail.JCRModSeqProvider; import org.apache.james.mailbox.jcr.mail.JCRUidProvider; -import org.apache.james.mailbox.model.MailboxACL; -import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.store.JVMMailboxPathLocker; import org.apache.james.mailbox.store.mail.model.DefaultMessageId; import org.apache.james.mailbox.store.mail.model.impl.MessageParser; @@ -51,7 +50,6 @@ import org.apache.james.metrics.logger.DefaultMetricFactory; import org.apache.james.mpt.api.ImapFeatures; import org.apache.james.mpt.api.ImapFeatures.Feature; import org.apache.james.mpt.host.JamesImapHostSystem; -import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; import org.xml.sax.InputSource; public class JCRHostSystem extends JamesImapHostSystem { @@ -159,10 +157,10 @@ public class JCRHostSystem extends JamesImapHostSystem { } @Override - public void createMailbox(MailboxPath mailboxPath) throws Exception { - new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); + protected MailboxManager getMailboxManager() { + return mailboxManager; } - + @Override public boolean supports(Feature... features) { return SUPPORTED_FEATURES.supports(features); @@ -173,13 +171,4 @@ public class JCRHostSystem extends JamesImapHostSystem { throw new NotImplementedException(); } - @Override - public void grantRights(MailboxPath mailboxPath, String userName, MailboxACL.Rfc4314Rights rights) throws Exception { - mailboxManager.setRights(mailboxPath, - MailboxACL.EMPTY.apply(MailboxACL.command() - .forUser(userName) - .rights(rights) - .asAddition()), - mailboxManager.createSystemSession(userName)); - } } http://git-wip-us.apache.org/repos/asf/james-project/blob/65d3ac3a/mpt/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java b/mpt/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java index 763752f..cb43a65 100644 --- a/mpt/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java +++ b/mpt/impl/imap-mailbox/jpa/src/test/java/org/apache/james/mpt/imapmailbox/jpa/host/JPAHostSystem.java @@ -29,6 +29,7 @@ import org.apache.james.imap.api.process.ImapProcessor; import org.apache.james.imap.encode.main.DefaultImapEncoderFactory; import org.apache.james.imap.main.DefaultImapDecoderFactory; import org.apache.james.imap.processor.main.DefaultImapProcessorFactory; +import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.SubscriptionManager; import org.apache.james.mailbox.acl.GroupMembershipResolver; @@ -44,9 +45,7 @@ import org.apache.james.mailbox.jpa.mail.JPAUidProvider; import org.apache.james.mailbox.jpa.openjpa.OpenJPAMailboxManager; import org.apache.james.mailbox.jpa.quota.JPAPerUserMaxQuotaManager; import org.apache.james.mailbox.jpa.quota.JpaCurrentQuotaManager; -import org.apache.james.mailbox.model.MailboxACL; import org.apache.james.mailbox.model.MailboxConstants; -import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.store.JVMMailboxPathLocker; import org.apache.james.mailbox.store.mail.model.DefaultMessageId; import org.apache.james.mailbox.store.mail.model.impl.MessageParser; @@ -57,7 +56,6 @@ import org.apache.james.metrics.logger.DefaultMetricFactory; import org.apache.james.mpt.api.ImapFeatures; import org.apache.james.mpt.api.ImapFeatures.Feature; import org.apache.james.mpt.host.JamesImapHostSystem; -import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; import com.google.common.collect.ImmutableList; @@ -144,10 +142,10 @@ public class JPAHostSystem extends JamesImapHostSystem { } @Override - public void createMailbox(MailboxPath mailboxPath) throws Exception { - new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); + protected MailboxManager getMailboxManager() { + return mailboxManager; } - + @Override public boolean supports(Feature... features) { return SUPPORTED_FEATURES.supports(features); @@ -159,13 +157,4 @@ public class JPAHostSystem extends JamesImapHostSystem { maxQuotaManager.setDefaultMaxStorage(maxStorageQuota); } - @Override - public void grantRights(MailboxPath mailboxPath, String userName, MailboxACL.Rfc4314Rights rights) throws Exception { - mailboxManager.setRights(mailboxPath, - MailboxACL.EMPTY.apply(MailboxACL.command() - .forUser(userName) - .rights(rights) - .asAddition()), - mailboxManager.createSystemSession(userName)); - } } http://git-wip-us.apache.org/repos/asf/james-project/blob/65d3ac3a/mpt/impl/imap-mailbox/lucenesearch/src/test/java/org/apache/james/mpt/imapmailbox/lucenesearch/host/LuceneSearchHostSystem.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/lucenesearch/src/test/java/org/apache/james/mpt/imapmailbox/lucenesearch/host/LuceneSearchHostSystem.java b/mpt/impl/imap-mailbox/lucenesearch/src/test/java/org/apache/james/mpt/imapmailbox/lucenesearch/host/LuceneSearchHostSystem.java index ad8bbd2..cef5b5a 100644 --- a/mpt/impl/imap-mailbox/lucenesearch/src/test/java/org/apache/james/mpt/imapmailbox/lucenesearch/host/LuceneSearchHostSystem.java +++ b/mpt/impl/imap-mailbox/lucenesearch/src/test/java/org/apache/james/mpt/imapmailbox/lucenesearch/host/LuceneSearchHostSystem.java @@ -31,6 +31,7 @@ import org.apache.james.imap.api.process.ImapProcessor; import org.apache.james.imap.encode.main.DefaultImapEncoderFactory; import org.apache.james.imap.main.DefaultImapDecoderFactory; import org.apache.james.imap.processor.main.DefaultImapProcessorFactory; +import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.SubscriptionManager; import org.apache.james.mailbox.acl.GroupMembershipResolver; @@ -47,9 +48,7 @@ import org.apache.james.mailbox.jpa.mail.JPAModSeqProvider; import org.apache.james.mailbox.jpa.mail.JPAUidProvider; import org.apache.james.mailbox.jpa.openjpa.OpenJPAMailboxManager; import org.apache.james.mailbox.lucene.search.LuceneMessageSearchIndex; -import org.apache.james.mailbox.model.MailboxACL; import org.apache.james.mailbox.model.MailboxConstants; -import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.model.MessageId; import org.apache.james.mailbox.store.JVMMailboxPathLocker; import org.apache.james.mailbox.store.mail.model.DefaultMessageId; @@ -60,7 +59,6 @@ import org.apache.james.metrics.logger.DefaultMetricFactory; import org.apache.james.mpt.api.ImapFeatures; import org.apache.james.mpt.api.ImapFeatures.Feature; import org.apache.james.mpt.host.JamesImapHostSystem; -import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; import org.apache.lucene.store.FSDirectory; import com.google.common.base.Throwables; @@ -146,8 +144,8 @@ public class LuceneSearchHostSystem extends JamesImapHostSystem { } @Override - public void createMailbox(MailboxPath mailboxPath) throws Exception{ - new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); + protected MailboxManager getMailboxManager() { + return mailboxManager; } @Override @@ -160,13 +158,4 @@ public class LuceneSearchHostSystem extends JamesImapHostSystem { throw new NotImplementedException(); } - @Override - public void grantRights(MailboxPath mailboxPath, String userName, MailboxACL.Rfc4314Rights rights) throws Exception { - mailboxManager.setRights(mailboxPath, - MailboxACL.EMPTY.apply(MailboxACL.command() - .forUser(userName) - .rights(rights) - .asAddition()), - mailboxManager.createSystemSession(userName)); - } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/james-project/blob/65d3ac3a/mpt/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/host/MaildirHostSystem.java ---------------------------------------------------------------------- diff --git a/mpt/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/host/MaildirHostSystem.java b/mpt/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/host/MaildirHostSystem.java index 2316551..87375a3 100644 --- a/mpt/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/host/MaildirHostSystem.java +++ b/mpt/impl/imap-mailbox/maildir/src/test/java/org/apache/james/mpt/imapmailbox/maildir/host/MaildirHostSystem.java @@ -26,14 +26,13 @@ import org.apache.james.imap.api.process.ImapProcessor; import org.apache.james.imap.encode.main.DefaultImapEncoderFactory; import org.apache.james.imap.main.DefaultImapDecoderFactory; import org.apache.james.imap.processor.main.DefaultImapProcessorFactory; +import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.acl.GroupMembershipResolver; import org.apache.james.mailbox.acl.MailboxACLResolver; import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver; import org.apache.james.mailbox.acl.UnionMailboxACLResolver; import org.apache.james.mailbox.maildir.MaildirMailboxSessionMapperFactory; import org.apache.james.mailbox.maildir.MaildirStore; -import org.apache.james.mailbox.model.MailboxACL; -import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.store.JVMMailboxPathLocker; import org.apache.james.mailbox.store.StoreMailboxManager; import org.apache.james.mailbox.store.StoreSubscriptionManager; @@ -45,7 +44,6 @@ import org.apache.james.metrics.logger.DefaultMetricFactory; import org.apache.james.mpt.api.ImapFeatures; import org.apache.james.mpt.api.ImapFeatures.Feature; import org.apache.james.mpt.host.JamesImapHostSystem; -import org.apache.james.mpt.imapmailbox.MailboxCreationDelegate; public class MaildirHostSystem extends JamesImapHostSystem { @@ -108,8 +106,8 @@ public class MaildirHostSystem extends JamesImapHostSystem { } @Override - public void createMailbox(MailboxPath mailboxPath) throws Exception { - new MailboxCreationDelegate(mailboxManager).createMailbox(mailboxPath); + protected MailboxManager getMailboxManager() { + return mailboxManager; } @Override @@ -122,13 +120,4 @@ public class MaildirHostSystem extends JamesImapHostSystem { throw new NotImplementedException(); } - @Override - public void grantRights(MailboxPath mailboxPath, String userName, MailboxACL.Rfc4314Rights rights) throws Exception { - mailboxManager.setRights(mailboxPath, - MailboxACL.EMPTY.apply(MailboxACL.command() - .forUser(userName) - .rights(rights) - .asAddition()), - mailboxManager.createSystemSession(userName)); - } } --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org