This is an automated email from the ASF dual-hosted git repository. btellier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 30d7a837279a48a8d60f2cc5f5dfbfb8d02f05e5 Author: Benoit Tellier <[email protected]> AuthorDate: Sun Nov 17 20:46:26 2019 +0700 [Refactoring] UsersRepository should not rely on setter injections This causes issues while binding it as a constant with guice --- .../listeners/QuotaThresholdListenersTestSystem.java | 4 +++- .../ElasticSearchQuotaSearchTestSystemExtension.java | 4 +--- .../scanning/MemoryQuotaSearchTestSystemExtension.java | 4 +--- .../org/apache/james/mpt/host/JamesImapHostSystem.java | 4 +++- .../cassandra/host/CassandraHostSystem.java | 6 +++++- .../mpt/managesieve/file/host/FileHostSystem.java | 4 +++- .../apache/james/modules/data/MemoryDataModule.java | 11 ++++++++--- .../james/user/cassandra/CassandraUsersRepository.java | 4 +++- .../user/cassandra/CassandraUsersRepositoryTest.java | 3 +-- .../org/apache/james/user/jpa/JPAUsersRepository.java | 6 ++++++ .../apache/james/user/jpa/JpaUsersRepositoryTest.java | 2 +- .../apache/james/user/lib/AbstractUsersRepository.java | 12 ++++++------ .../james/user/lib/AbstractUsersRepositoryTest.java | 8 +++----- .../james/user/memory/MemoryUsersRepository.java | 12 +++++++----- .../james/user/memory/MemoryUsersRepositoryTest.java | 18 ++++++++---------- .../user/memory/UsersRepositoryManagementTest.java | 4 +++- .../mailetcontainer/impl/JamesMailetContextTest.java | 3 +-- .../james/transport/mailets/SpamAssassinTest.java | 4 +++- .../transport/mailets/WithStorageDirectiveTest.java | 4 +++- .../jmap/draft/JWTAuthenticationStrategyTest.java | 4 +++- .../james/jmap/draft/UserProvisioningFilterTest.java | 4 +++- .../jmap/draft/UserProvisioningFilterThreadTest.java | 5 +++-- .../jmap/mailet/filter/JMAPFilteringExtension.java | 4 +++- .../org/apache/james/pop3server/POP3ServerTest.java | 5 +++-- .../org/apache/james/smtpserver/SMTPServerTest.java | 3 ++- .../apache/james/webadmin/routes/AliasRoutesTest.java | 3 +-- .../james/webadmin/routes/ForwardRoutesTest.java | 3 +-- .../apache/james/webadmin/routes/GroupsRoutesTest.java | 3 +-- .../james/webadmin/routes/SieveQuotaRoutesTest.java | 4 +++- .../james/webadmin/routes/SieveScriptRoutesTest.java | 4 +++- .../apache/james/webadmin/routes/UserRoutesTest.java | 15 +++++++++------ .../vault/routes/DeletedMessagesVaultRoutesTest.java | 3 +-- .../routes/DomainQuotaRoutesNoVirtualHostingTest.java | 2 +- .../routes/ElasticSearchQuotaSearchExtension.java | 3 +-- .../webadmin/routes/ScanningQuotaSearchExtension.java | 3 +-- 35 files changed, 108 insertions(+), 77 deletions(-) diff --git a/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/listeners/QuotaThresholdListenersTestSystem.java b/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/listeners/QuotaThresholdListenersTestSystem.java index 14b4ab9..2ba6e93 100644 --- a/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/listeners/QuotaThresholdListenersTestSystem.java +++ b/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/listeners/QuotaThresholdListenersTestSystem.java @@ -19,6 +19,7 @@ package org.apache.james.mailbox.quota.mailing.listeners; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.eventsourcing.eventstore.EventStore; import org.apache.james.filesystem.api.FileSystem; import org.apache.james.mailbox.events.Event; @@ -38,6 +39,7 @@ import com.google.common.collect.ImmutableSet; class QuotaThresholdListenersTestSystem { private static final ImmutableSet<RegistrationKey> NO_KEYS = ImmutableSet.of(); + private static final DomainList NO_DOMAIN_LIST = null; private final EventBus eventBus; @@ -47,7 +49,7 @@ class QuotaThresholdListenersTestSystem { FileSystem fileSystem = new FileSystemImpl(new JamesServerResourceLoader(".")); QuotaThresholdCrossingListener thresholdCrossingListener = - new QuotaThresholdCrossingListener(mailetContext, MemoryUsersRepository.withVirtualHosting(), fileSystem, eventStore, configuration); + new QuotaThresholdCrossingListener(mailetContext, MemoryUsersRepository.withVirtualHosting(NO_DOMAIN_LIST), fileSystem, eventStore, configuration); eventBus.register(thresholdCrossingListener); } diff --git a/mailbox/plugin/quota-search-elasticsearch/src/test/java/org/apache/james/quota/search/elasticsearch/ElasticSearchQuotaSearchTestSystemExtension.java b/mailbox/plugin/quota-search-elasticsearch/src/test/java/org/apache/james/quota/search/elasticsearch/ElasticSearchQuotaSearchTestSystemExtension.java index 9af1dc6..cc7d8b2 100644 --- a/mailbox/plugin/quota-search-elasticsearch/src/test/java/org/apache/james/quota/search/elasticsearch/ElasticSearchQuotaSearchTestSystemExtension.java +++ b/mailbox/plugin/quota-search-elasticsearch/src/test/java/org/apache/james/quota/search/elasticsearch/ElasticSearchQuotaSearchTestSystemExtension.java @@ -61,11 +61,9 @@ public class ElasticSearchQuotaSearchTestSystemExtension implements ParameterRes InMemoryIntegrationResources resources = InMemoryIntegrationResources.defaultResources(); - MemoryUsersRepository usersRepository = MemoryUsersRepository.withVirtualHosting(); - DNSService dnsService = mock(DNSService.class); MemoryDomainList domainList = new MemoryDomainList(dnsService); - usersRepository.setDomainList(domainList); + MemoryUsersRepository usersRepository = MemoryUsersRepository.withVirtualHosting(domainList); ElasticSearchQuotaMailboxListener listener = new ElasticSearchQuotaMailboxListener( new ElasticSearchIndexer(client, diff --git a/mailbox/plugin/quota-search-scanning/src/test/java/org/apache/james/quota/search/scanning/MemoryQuotaSearchTestSystemExtension.java b/mailbox/plugin/quota-search-scanning/src/test/java/org/apache/james/quota/search/scanning/MemoryQuotaSearchTestSystemExtension.java index 325a237..23eb317 100644 --- a/mailbox/plugin/quota-search-scanning/src/test/java/org/apache/james/quota/search/scanning/MemoryQuotaSearchTestSystemExtension.java +++ b/mailbox/plugin/quota-search-scanning/src/test/java/org/apache/james/quota/search/scanning/MemoryQuotaSearchTestSystemExtension.java @@ -46,11 +46,9 @@ public class MemoryQuotaSearchTestSystemExtension implements ParameterResolver { try { InMemoryIntegrationResources resources = InMemoryIntegrationResources.defaultResources(); - MemoryUsersRepository usersRepository = MemoryUsersRepository.withVirtualHosting(); - DNSService dnsService = mock(DNSService.class); MemoryDomainList domainList = new MemoryDomainList(dnsService); - usersRepository.setDomainList(domainList); + MemoryUsersRepository usersRepository = MemoryUsersRepository.withVirtualHosting(domainList); QuotaComponents quotaComponents = resources.getMailboxManager().getQuotaComponents(); 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 1f5a3b9..d2a2270 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 @@ -26,6 +26,7 @@ import org.apache.commons.configuration2.tree.ImmutableNode; import org.apache.james.adapter.mailbox.store.UserRepositoryAuthenticator; import org.apache.james.adapter.mailbox.store.UserRepositoryAuthorizator; import org.apache.james.core.Username; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.imap.api.ImapConfiguration; import org.apache.james.imap.api.process.ImapProcessor; import org.apache.james.imap.decode.ImapDecoder; @@ -46,6 +47,7 @@ import org.apache.james.mpt.imapmailbox.GrantRightsOnHost; import org.apache.james.user.memory.MemoryUsersRepository; public abstract class JamesImapHostSystem implements ImapHostSystem, GrantRightsOnHost { + private static final DomainList NO_DOMAIN_LIST = null; private MemoryUsersRepository memoryUsersRepository; protected Authorizator authorizator; @@ -58,7 +60,7 @@ public abstract class JamesImapHostSystem implements ImapHostSystem, GrantRights @Override public void beforeTest() throws Exception { - memoryUsersRepository = MemoryUsersRepository.withoutVirtualHosting(); + memoryUsersRepository = MemoryUsersRepository.withoutVirtualHosting(NO_DOMAIN_LIST); try { memoryUsersRepository.configure(userRepositoryConfiguration()); } catch (ConfigurationException e) { diff --git a/mpt/impl/managesieve/cassandra/src/test/java/org/apache/james/mpt/managesieve/cassandra/host/CassandraHostSystem.java b/mpt/impl/managesieve/cassandra/src/test/java/org/apache/james/mpt/managesieve/cassandra/host/CassandraHostSystem.java index cdbbb82..882eb3b 100644 --- a/mpt/impl/managesieve/cassandra/src/test/java/org/apache/james/mpt/managesieve/cassandra/host/CassandraHostSystem.java +++ b/mpt/impl/managesieve/cassandra/src/test/java/org/apache/james/mpt/managesieve/cassandra/host/CassandraHostSystem.java @@ -21,6 +21,8 @@ package org.apache.james.mpt.managesieve.cassandra.host; import org.apache.james.backends.cassandra.CassandraCluster; import org.apache.james.backends.cassandra.components.CassandraModule; +import org.apache.james.domainlist.api.DomainList; +import org.apache.james.domainlist.cassandra.CassandraDomainListModule; import org.apache.james.mpt.host.JamesManageSieveHostSystem; import org.apache.james.sieve.cassandra.CassandraActiveScriptDAO; import org.apache.james.sieve.cassandra.CassandraSieveDAO; @@ -34,6 +36,7 @@ import org.apache.james.user.cassandra.CassandraUsersRepositoryModule; import org.apache.james.util.Host; public class CassandraHostSystem extends JamesManageSieveHostSystem { + private static final DomainList NO_DOMAIN_LIST = null; private final Host cassandraHost; private CassandraCluster cassandra; @@ -44,6 +47,7 @@ public class CassandraHostSystem extends JamesManageSieveHostSystem { @Override public void beforeTest() throws Exception { CassandraModule modules = CassandraModule.aggregateModules( + CassandraDomainListModule.MODULE, CassandraSieveRepositoryModule.MODULE, CassandraUsersRepositoryModule.MODULE); cassandra = CassandraCluster.create(modules, cassandraHost); @@ -60,7 +64,7 @@ public class CassandraHostSystem extends JamesManageSieveHostSystem { @Override protected UsersRepository createUsersRepository() { - CassandraUsersRepository cassandraUsersRepository = new CassandraUsersRepository(cassandra.getConf()); + CassandraUsersRepository cassandraUsersRepository = new CassandraUsersRepository(NO_DOMAIN_LIST, cassandra.getConf()); cassandraUsersRepository.setEnableVirtualHosting(false); return cassandraUsersRepository; } diff --git a/mpt/impl/managesieve/file/src/test/java/org/apache/james/mpt/managesieve/file/host/FileHostSystem.java b/mpt/impl/managesieve/file/src/test/java/org/apache/james/mpt/managesieve/file/host/FileHostSystem.java index 384c454..f1ee12e 100644 --- a/mpt/impl/managesieve/file/src/test/java/org/apache/james/mpt/managesieve/file/host/FileHostSystem.java +++ b/mpt/impl/managesieve/file/src/test/java/org/apache/james/mpt/managesieve/file/host/FileHostSystem.java @@ -26,6 +26,7 @@ import java.io.IOException; import java.io.InputStream; import org.apache.commons.io.FileUtils; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.filesystem.api.FileSystem; import org.apache.james.mpt.host.JamesManageSieveHostSystem; import org.apache.james.sieverepository.api.SieveRepository; @@ -37,6 +38,7 @@ public class FileHostSystem extends JamesManageSieveHostSystem { private static final String SIEVE_ROOT = FileSystem.FILE_PROTOCOL + "sieve"; private static final FileSystem fileSystem = getFileSystem(); + private static final DomainList NO_DOMAIN_LIST = null; private static FileSystem getFileSystem() { return new FileSystem() { @@ -59,7 +61,7 @@ public class FileHostSystem extends JamesManageSieveHostSystem { @Override protected UsersRepository createUsersRepository() { - return MemoryUsersRepository.withoutVirtualHosting(); + return MemoryUsersRepository.withoutVirtualHosting(NO_DOMAIN_LIST); } @Override diff --git a/server/container/guice/memory-guice/src/main/java/org/apache/james/modules/data/MemoryDataModule.java b/server/container/guice/memory-guice/src/main/java/org/apache/james/modules/data/MemoryDataModule.java index 5914a08..7daf4b5 100644 --- a/server/container/guice/memory-guice/src/main/java/org/apache/james/modules/data/MemoryDataModule.java +++ b/server/container/guice/memory-guice/src/main/java/org/apache/james/modules/data/MemoryDataModule.java @@ -69,17 +69,22 @@ public class MemoryDataModule extends AbstractModule { bind(MemoryMailRepositoryUrlStore.class).in(Scopes.SINGLETON); bind(MailRepositoryUrlStore.class).to(MemoryMailRepositoryUrlStore.class); - bind(MemoryUsersRepository.class).toInstance(MemoryUsersRepository.withVirtualHosting()); - bind(UsersRepository.class).to(MemoryUsersRepository.class); - bind(EventSourcingDLPConfigurationStore.class).in(Scopes.SINGLETON); bind(DLPConfigurationStore.class).to(EventSourcingDLPConfigurationStore.class); + bind(UsersRepository.class).to(MemoryUsersRepository.class); + bind(MailStoreRepositoryModule.DefaultItemSupplier.class).toInstance(() -> MEMORY_MAILREPOSITORY_DEFAULT_DECLARATION); } @Provides @Singleton + public MemoryUsersRepository providesUsersRepository(DomainList domainList) { + return MemoryUsersRepository.withVirtualHosting(domainList); + } + + @Provides + @Singleton public DomainListConfiguration provideDomainListConfiguration(ConfigurationProvider configurationProvider) { try { return DomainListConfiguration.from(configurationProvider.getConfiguration("domainlist")); diff --git a/server/data/data-cassandra/src/main/java/org/apache/james/user/cassandra/CassandraUsersRepository.java b/server/data/data-cassandra/src/main/java/org/apache/james/user/cassandra/CassandraUsersRepository.java index 2cdcc7c..f1ac2a8 100644 --- a/server/data/data-cassandra/src/main/java/org/apache/james/user/cassandra/CassandraUsersRepository.java +++ b/server/data/data-cassandra/src/main/java/org/apache/james/user/cassandra/CassandraUsersRepository.java @@ -39,6 +39,7 @@ import javax.inject.Inject; import org.apache.james.backends.cassandra.utils.CassandraAsyncExecutor; import org.apache.james.core.Username; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.user.api.AlreadyExistInUsersRepositoryException; import org.apache.james.user.api.UsersRepositoryException; import org.apache.james.user.api.model.User; @@ -66,7 +67,8 @@ public class CassandraUsersRepository extends AbstractUsersRepository { private final PreparedStatement insertStatement; @Inject - public CassandraUsersRepository(Session session) { + public CassandraUsersRepository(DomainList domainList, Session session) { + super(domainList); this.executor = new CassandraAsyncExecutor(session); this.getUserStatement = prepareGetUserStatement(session); this.updateUserStatement = prepareUpdateUserStatement(session); diff --git a/server/data/data-cassandra/src/test/java/org/apache/james/user/cassandra/CassandraUsersRepositoryTest.java b/server/data/data-cassandra/src/test/java/org/apache/james/user/cassandra/CassandraUsersRepositoryTest.java index a77e80c..0341928 100644 --- a/server/data/data-cassandra/src/test/java/org/apache/james/user/cassandra/CassandraUsersRepositoryTest.java +++ b/server/data/data-cassandra/src/test/java/org/apache/james/user/cassandra/CassandraUsersRepositoryTest.java @@ -28,7 +28,6 @@ import org.junit.Before; import org.junit.Rule; public class CassandraUsersRepositoryTest extends AbstractUsersRepositoryTest { - @Rule public DockerCassandraRule cassandraServer = new DockerCassandraRule(); @@ -51,6 +50,6 @@ public class CassandraUsersRepositoryTest extends AbstractUsersRepositoryTest { @Override protected AbstractUsersRepository getUsersRepository() { - return new CassandraUsersRepository(cassandra.getConf()); + return new CassandraUsersRepository(domainList, cassandra.getConf()); } } diff --git a/server/data/data-jpa/src/main/java/org/apache/james/user/jpa/JPAUsersRepository.java b/server/data/data-jpa/src/main/java/org/apache/james/user/jpa/JPAUsersRepository.java index 6308bfe..9eed717 100644 --- a/server/data/data-jpa/src/main/java/org/apache/james/user/jpa/JPAUsersRepository.java +++ b/server/data/data-jpa/src/main/java/org/apache/james/user/jpa/JPAUsersRepository.java @@ -36,6 +36,7 @@ import org.apache.commons.configuration2.HierarchicalConfiguration; import org.apache.commons.configuration2.ex.ConfigurationException; import org.apache.commons.configuration2.tree.ImmutableNode; import org.apache.james.core.Username; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.user.api.UsersRepositoryException; import org.apache.james.user.api.model.User; import org.apache.james.user.jpa.model.JPAUser; @@ -55,6 +56,11 @@ public class JPAUsersRepository extends AbstractUsersRepository { private String algo; + @Inject + public JPAUsersRepository(DomainList domainList) { + super(domainList); + } + /** * Sets entity manager. * diff --git a/server/data/data-jpa/src/test/java/org/apache/james/user/jpa/JpaUsersRepositoryTest.java b/server/data/data-jpa/src/test/java/org/apache/james/user/jpa/JpaUsersRepositoryTest.java index acdf0a1..f81f3e2 100644 --- a/server/data/data-jpa/src/test/java/org/apache/james/user/jpa/JpaUsersRepositoryTest.java +++ b/server/data/data-jpa/src/test/java/org/apache/james/user/jpa/JpaUsersRepositoryTest.java @@ -45,7 +45,7 @@ public class JpaUsersRepositoryTest extends AbstractUsersRepositoryTest { @Override protected AbstractUsersRepository getUsersRepository() throws Exception { - JPAUsersRepository repos = new JPAUsersRepository(); + JPAUsersRepository repos = new JPAUsersRepository(domainList); repos.setEntityManagerFactory(JPA_TEST_CLUSTER.getEntityManagerFactory()); repos.configure(new BaseHierarchicalConfiguration()); return repos; diff --git a/server/data/data-library/src/main/java/org/apache/james/user/lib/AbstractUsersRepository.java b/server/data/data-library/src/main/java/org/apache/james/user/lib/AbstractUsersRepository.java index 58d17a5..7dfcd17 100644 --- a/server/data/data-library/src/main/java/org/apache/james/user/lib/AbstractUsersRepository.java +++ b/server/data/data-library/src/main/java/org/apache/james/user/lib/AbstractUsersRepository.java @@ -41,10 +41,15 @@ import com.google.common.annotations.VisibleForTesting; public abstract class AbstractUsersRepository implements UsersRepository, Configurable { - private DomainList domainList; + private final DomainList domainList; private boolean virtualHosting; private Optional<Username> administratorId; + @Inject + protected AbstractUsersRepository(DomainList domainList) { + this.domainList = domainList; + } + @Override public void configure(HierarchicalConfiguration<ImmutableNode> configuration) throws ConfigurationException { @@ -66,11 +71,6 @@ public abstract class AbstractUsersRepository implements UsersRepository, Config this.virtualHosting = virtualHosting; } - @Inject - public void setDomainList(DomainList domainList) { - this.domainList = domainList; - } - @Override public void assertValid(Username username) throws UsersRepositoryException { if (supportVirtualHosting()) { diff --git a/server/data/data-library/src/test/java/org/apache/james/user/lib/AbstractUsersRepositoryTest.java b/server/data/data-library/src/test/java/org/apache/james/user/lib/AbstractUsersRepositoryTest.java index 3919ea3..0503efb 100644 --- a/server/data/data-library/src/test/java/org/apache/james/user/lib/AbstractUsersRepositoryTest.java +++ b/server/data/data-library/src/test/java/org/apache/james/user/lib/AbstractUsersRepositoryTest.java @@ -41,7 +41,7 @@ public abstract class AbstractUsersRepositoryTest { private static final Domain DOMAIN = Domain.of("domain"); protected AbstractUsersRepository usersRepository; - private SimpleDomainList domainList; + protected SimpleDomainList domainList; /** * Create the repository to be tested. @@ -56,11 +56,10 @@ public abstract class AbstractUsersRepositoryTest { private Username user3; private Username admin; - public void setUp() throws Exception { - this.usersRepository = getUsersRepository(); + public void setUp() throws Exception { domainList = new SimpleDomainList(); domainList.addDomain(DOMAIN); - usersRepository.setDomainList(domainList); + this.usersRepository = getUsersRepository(); user1 = login("username"); user2 = login("username2"); user3 = login("username3"); @@ -382,7 +381,6 @@ public abstract class AbstractUsersRepositoryTest { @Test public void getMailAddressForShouldAppendDefaultDomainWhenNoVirtualHosting() throws Exception { usersRepository.setEnableVirtualHosting(false); - usersRepository.setDomainList(domainList); // Some implementations do not support changing virtual hosting value Assume.assumeFalse(usersRepository.supportVirtualHosting()); diff --git a/server/data/data-memory/src/main/java/org/apache/james/user/memory/MemoryUsersRepository.java b/server/data/data-memory/src/main/java/org/apache/james/user/memory/MemoryUsersRepository.java index f7d74c2..7a4de59 100644 --- a/server/data/data-memory/src/main/java/org/apache/james/user/memory/MemoryUsersRepository.java +++ b/server/data/data-memory/src/main/java/org/apache/james/user/memory/MemoryUsersRepository.java @@ -28,6 +28,7 @@ import org.apache.commons.configuration2.HierarchicalConfiguration; import org.apache.commons.configuration2.ex.ConfigurationException; import org.apache.commons.configuration2.tree.ImmutableNode; import org.apache.james.core.Username; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.user.api.UsersRepositoryException; import org.apache.james.user.api.model.User; import org.apache.james.user.lib.AbstractUsersRepository; @@ -35,19 +36,20 @@ import org.apache.james.user.lib.model.DefaultUser; public class MemoryUsersRepository extends AbstractUsersRepository { - public static MemoryUsersRepository withVirtualHosting() { - return new MemoryUsersRepository(true); + public static MemoryUsersRepository withVirtualHosting(DomainList domainList) { + return new MemoryUsersRepository(domainList, true); } - public static MemoryUsersRepository withoutVirtualHosting() { - return new MemoryUsersRepository(false); + public static MemoryUsersRepository withoutVirtualHosting(DomainList domainList) { + return new MemoryUsersRepository(domainList, false); } private final Map<String, User> userByName; private final boolean supportVirtualHosting; private String algo; - private MemoryUsersRepository(boolean supportVirtualHosting) { + private MemoryUsersRepository(DomainList domainList, boolean supportVirtualHosting) { + super(domainList); this.userByName = new HashMap<>(); this.algo = "MD5"; this.supportVirtualHosting = supportVirtualHosting; diff --git a/server/data/data-memory/src/test/java/org/apache/james/user/memory/MemoryUsersRepositoryTest.java b/server/data/data-memory/src/test/java/org/apache/james/user/memory/MemoryUsersRepositoryTest.java index c0a0aa6..3ac57c5 100644 --- a/server/data/data-memory/src/test/java/org/apache/james/user/memory/MemoryUsersRepositoryTest.java +++ b/server/data/data-memory/src/test/java/org/apache/james/user/memory/MemoryUsersRepositoryTest.java @@ -42,12 +42,12 @@ public class MemoryUsersRepositoryTest extends AbstractUsersRepositoryTest { @Override protected AbstractUsersRepository getUsersRepository() { - return MemoryUsersRepository.withVirtualHosting(); + return MemoryUsersRepository.withVirtualHosting(domainList); } @Test public void assertValidShouldThrowWhenDomainPartAndNoVirtualHosting() { - MemoryUsersRepository memoryUsersRepository = MemoryUsersRepository.withoutVirtualHosting(); + MemoryUsersRepository memoryUsersRepository = MemoryUsersRepository.withoutVirtualHosting(domainList); assertThatThrownBy(() -> memoryUsersRepository.assertValid(Username.of("[email protected]"))) .isInstanceOf(UsersRepositoryException.class); @@ -55,7 +55,7 @@ public class MemoryUsersRepositoryTest extends AbstractUsersRepositoryTest { @Test public void assertValidShouldThrowWhenNoDomainPartAndVirtualHosting() { - MemoryUsersRepository memoryUsersRepository = MemoryUsersRepository.withVirtualHosting(); + MemoryUsersRepository memoryUsersRepository = MemoryUsersRepository.withVirtualHosting(domainList); assertThatThrownBy(() -> memoryUsersRepository.assertValid(Username.of("user"))) .isInstanceOf(UsersRepositoryException.class); @@ -63,15 +63,14 @@ public class MemoryUsersRepositoryTest extends AbstractUsersRepositoryTest { @Test public void assertValidShouldNotThrowWhenDomainPartAndVirtualHosting() throws Exception { - MemoryUsersRepository memoryUsersRepository = MemoryUsersRepository.withVirtualHosting(); - MemoryDomainList domainList = new MemoryDomainList(new InMemoryDNSService() .registerMxRecord("localhost", "127.0.0.1") .registerMxRecord("127.0.0.1", "127.0.0.1")); domainList.setAutoDetect(false); domainList.setAutoDetectIP(false); domainList.addDomain(Domain.of("domain.tld")); - memoryUsersRepository.setDomainList(domainList); + + MemoryUsersRepository memoryUsersRepository = MemoryUsersRepository.withVirtualHosting(domainList); assertThatCode(() -> memoryUsersRepository.assertValid(Username.of("[email protected]"))) .doesNotThrowAnyException(); @@ -79,14 +78,13 @@ public class MemoryUsersRepositoryTest extends AbstractUsersRepositoryTest { @Test public void assertValidShouldNotThrowWhenDomainPartAndDomainNotFound() throws Exception { - MemoryUsersRepository memoryUsersRepository = MemoryUsersRepository.withVirtualHosting(); - MemoryDomainList domainList = new MemoryDomainList(new InMemoryDNSService() .registerMxRecord("localhost", "127.0.0.1") .registerMxRecord("127.0.0.1", "127.0.0.1")); domainList.setAutoDetect(false); domainList.setAutoDetectIP(false); - memoryUsersRepository.setDomainList(domainList); + + MemoryUsersRepository memoryUsersRepository = MemoryUsersRepository.withVirtualHosting(domainList); assertThatThrownBy(() -> memoryUsersRepository.assertValid(Username.of("[email protected]"))) .isInstanceOf(UsersRepositoryException.class); @@ -94,7 +92,7 @@ public class MemoryUsersRepositoryTest extends AbstractUsersRepositoryTest { @Test public void assertValidShouldNotThrowWhenNoDomainPartAndNoVirtualHosting() { - MemoryUsersRepository memoryUsersRepository = MemoryUsersRepository.withoutVirtualHosting(); + MemoryUsersRepository memoryUsersRepository = MemoryUsersRepository.withoutVirtualHosting(domainList); assertThatCode(() -> memoryUsersRepository.assertValid(Username.of("user"))) .doesNotThrowAnyException(); diff --git a/server/data/data-memory/src/test/java/org/apache/james/user/memory/UsersRepositoryManagementTest.java b/server/data/data-memory/src/test/java/org/apache/james/user/memory/UsersRepositoryManagementTest.java index a99091b..fb7fa30 100644 --- a/server/data/data-memory/src/test/java/org/apache/james/user/memory/UsersRepositoryManagementTest.java +++ b/server/data/data-memory/src/test/java/org/apache/james/user/memory/UsersRepositoryManagementTest.java @@ -25,19 +25,21 @@ import java.util.Arrays; import java.util.List; import org.apache.james.core.Username; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.user.api.UsersRepository; import org.apache.james.user.lib.UsersRepositoryManagement; import org.junit.Before; import org.junit.Test; public class UsersRepositoryManagementTest { + private static final DomainList NO_DOMAIN_LIST = null; private UsersRepository usersRepository; private UsersRepositoryManagement userManagement; @Before public void setUp() throws Exception { - usersRepository = MemoryUsersRepository.withoutVirtualHosting(); + usersRepository = MemoryUsersRepository.withoutVirtualHosting(NO_DOMAIN_LIST); userManagement = new UsersRepositoryManagement(); userManagement.setUsersRepository(usersRepository); diff --git a/server/mailet/mailetcontainer-camel/src/test/java/org/apache/james/mailetcontainer/impl/JamesMailetContextTest.java b/server/mailet/mailetcontainer-camel/src/test/java/org/apache/james/mailetcontainer/impl/JamesMailetContextTest.java index 42c3dee..6dccf9c 100644 --- a/server/mailet/mailetcontainer-camel/src/test/java/org/apache/james/mailetcontainer/impl/JamesMailetContextTest.java +++ b/server/mailet/mailetcontainer-camel/src/test/java/org/apache/james/mailetcontainer/impl/JamesMailetContextTest.java @@ -79,8 +79,7 @@ public class JamesMailetContextTest { .autoDetectIp(false) .build()); - usersRepository = MemoryUsersRepository.withVirtualHosting(); - usersRepository.setDomainList(domainList); + usersRepository = MemoryUsersRepository.withVirtualHosting(domainList); MailQueueFactory<MailQueue> mailQueueFactory = mock(MailQueueFactory.class); spoolMailQueue = mock(MailQueue.class); when(mailQueueFactory.createQueue(MailQueueFactory.SPOOL)).thenReturn(spoolMailQueue); diff --git a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/SpamAssassinTest.java b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/SpamAssassinTest.java index 0d9c776..ba840fc 100644 --- a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/SpamAssassinTest.java +++ b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/SpamAssassinTest.java @@ -26,6 +26,7 @@ import javax.mail.MessagingException; import org.apache.james.core.MailAddress; import org.apache.james.core.builder.MimeMessageBuilder; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.metrics.api.NoopMetricFactory; import org.apache.james.spamassassin.SpamAssassinResult; import org.apache.james.spamassassin.mock.MockSpamd; @@ -43,10 +44,11 @@ import com.github.steveash.guavate.Guavate; public class SpamAssassinTest { + public static final DomainList NO_DOMAIN_LIST = null; @Rule public MockSpamdTestRule spamd = new MockSpamdTestRule(); - private SpamAssassin mailet = new SpamAssassin(new NoopMetricFactory(), MemoryUsersRepository.withVirtualHosting()); + private SpamAssassin mailet = new SpamAssassin(new NoopMetricFactory(), MemoryUsersRepository.withVirtualHosting(NO_DOMAIN_LIST)); @Test public void initShouldSetDefaultSpamdHostWhenNone() throws Exception { diff --git a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/WithStorageDirectiveTest.java b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/WithStorageDirectiveTest.java index 518baab..e2a6a36 100644 --- a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/WithStorageDirectiveTest.java +++ b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/WithStorageDirectiveTest.java @@ -22,6 +22,7 @@ package org.apache.james.transport.mailets; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatThrownBy; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.user.memory.MemoryUsersRepository; import org.apache.mailet.Attribute; import org.apache.mailet.AttributeName; @@ -35,6 +36,7 @@ import org.junit.Rule; import org.junit.Test; public class WithStorageDirectiveTest { + private static final DomainList NO_DOMAIN_LIST = null; private WithStorageDirective testee; @@ -43,7 +45,7 @@ public class WithStorageDirectiveTest { @Before public void setUp() { - testee = new WithStorageDirective(MemoryUsersRepository.withVirtualHosting()); + testee = new WithStorageDirective(MemoryUsersRepository.withVirtualHosting(NO_DOMAIN_LIST)); } @Test diff --git a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/JWTAuthenticationStrategyTest.java b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/JWTAuthenticationStrategyTest.java index 08110c0..733b626 100644 --- a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/JWTAuthenticationStrategyTest.java +++ b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/JWTAuthenticationStrategyTest.java @@ -29,6 +29,7 @@ import java.util.stream.Stream; import javax.servlet.http.HttpServletRequest; import org.apache.james.core.Username; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.jmap.draft.exceptions.MailboxSessionCreationException; import org.apache.james.jmap.draft.exceptions.NoValidAuthHeaderException; import org.apache.james.jmap.draft.utils.HeadersAuthenticationExtractor; @@ -41,6 +42,7 @@ import org.junit.Before; import org.junit.Test; public class JWTAuthenticationStrategyTest { + private static final DomainList NO_DOMAIN_LIST = null; private JWTAuthenticationStrategy testee; private MailboxManager mockedMailboxManager; @@ -54,7 +56,7 @@ public class JWTAuthenticationStrategyTest { mockedMailboxManager = mock(MailboxManager.class); mockAuthenticationExtractor = mock(HeadersAuthenticationExtractor.class); request = mock(HttpServletRequest.class); - MemoryUsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(); + MemoryUsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(NO_DOMAIN_LIST); testee = new JWTAuthenticationStrategy(stubTokenVerifier, mockedMailboxManager, mockAuthenticationExtractor, usersRepository); } diff --git a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/UserProvisioningFilterTest.java b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/UserProvisioningFilterTest.java index 5b03808..3fec2ca 100644 --- a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/UserProvisioningFilterTest.java +++ b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/UserProvisioningFilterTest.java @@ -35,6 +35,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.james.core.Username; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.MailboxSessionUtil; import org.apache.james.metrics.api.NoopMetricFactory; @@ -47,6 +48,7 @@ import org.junit.Test; public class UserProvisioningFilterTest { private static final Username USERNAME = Username.of("username"); private static final Username USERNAME_WITH_DOMAIN = Username.of("[email protected]"); + private static final DomainList NO_DOMAIN_LIST = null; private UserProvisioningFilter sut; private MemoryUsersRepository usersRepository; @@ -56,7 +58,7 @@ public class UserProvisioningFilterTest { @Before public void setup() throws Exception { - usersRepository = MemoryUsersRepository.withoutVirtualHosting(); + usersRepository = MemoryUsersRepository.withoutVirtualHosting(NO_DOMAIN_LIST); sut = new UserProvisioningFilter(usersRepository, new NoopMetricFactory()); request = mock(HttpServletRequest.class); response = mock(HttpServletResponse.class); diff --git a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/UserProvisioningFilterThreadTest.java b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/UserProvisioningFilterThreadTest.java index ce96d1d..43b3984 100644 --- a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/UserProvisioningFilterThreadTest.java +++ b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/UserProvisioningFilterThreadTest.java @@ -22,7 +22,7 @@ import java.time.Duration; import java.util.concurrent.ExecutionException; import org.apache.james.core.Username; -import org.apache.james.jmap.draft.UserProvisioningFilter; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.MailboxSessionUtil; import org.apache.james.metrics.api.NoopMetricFactory; @@ -32,6 +32,7 @@ import org.junit.Before; import org.junit.Test; public class UserProvisioningFilterThreadTest { + private static final DomainList NO_DOMAIN_LIST = null; private UserProvisioningFilter sut; private MemoryUsersRepository usersRepository; @@ -39,7 +40,7 @@ public class UserProvisioningFilterThreadTest { @Before public void before() { - usersRepository = MemoryUsersRepository.withoutVirtualHosting(); + usersRepository = MemoryUsersRepository.withoutVirtualHosting(NO_DOMAIN_LIST); session = MailboxSessionUtil.create(Username.of("username")); sut = new UserProvisioningFilter(usersRepository, new NoopMetricFactory()); } diff --git a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/mailet/filter/JMAPFilteringExtension.java b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/mailet/filter/JMAPFilteringExtension.java index 72da3c9..4232100 100644 --- a/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/mailet/filter/JMAPFilteringExtension.java +++ b/server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/mailet/filter/JMAPFilteringExtension.java @@ -32,6 +32,7 @@ import javax.mail.MessagingException; import org.apache.james.core.Username; import org.apache.james.core.builder.MimeMessageBuilder; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.eventsourcing.eventstore.memory.InMemoryEventStore; import org.apache.james.jmap.api.filtering.FilteringManagement; import org.apache.james.jmap.api.filtering.Rule; @@ -53,6 +54,7 @@ import org.junit.jupiter.api.extension.ParameterResolver; import com.google.common.collect.ImmutableList; public class JMAPFilteringExtension implements BeforeEachCallback, ParameterResolver { + private static final DomainList NO_DOMAIN_LIST = null; class JMAPFilteringTestSystem { @@ -130,7 +132,7 @@ public class JMAPFilteringExtension implements BeforeEachCallback, ParameterReso @Override public void beforeEach(ExtensionContext extensionContext) { FilteringManagement filteringManagement = new EventSourcingFilteringManagement(new InMemoryEventStore()); - MemoryUsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(); + MemoryUsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(NO_DOMAIN_LIST); InMemoryMailboxManager mailboxManager = InMemoryIntegrationResources.defaultResources().getMailboxManager(); ActionApplier.Factory actionApplierFactory = ActionApplier.factory(mailboxManager, new InMemoryId.Factory()); diff --git a/server/protocols/protocols-pop3/src/test/java/org/apache/james/pop3server/POP3ServerTest.java b/server/protocols/protocols-pop3/src/test/java/org/apache/james/pop3server/POP3ServerTest.java index 6e7083c..00d6d96 100644 --- a/server/protocols/protocols-pop3/src/test/java/org/apache/james/pop3server/POP3ServerTest.java +++ b/server/protocols/protocols-pop3/src/test/java/org/apache/james/pop3server/POP3ServerTest.java @@ -31,6 +31,7 @@ import org.apache.commons.net.pop3.POP3Client; import org.apache.commons.net.pop3.POP3MessageInfo; import org.apache.commons.net.pop3.POP3Reply; import org.apache.james.core.Username; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.filesystem.api.FileSystem; import org.apache.james.filesystem.api.mock.MockFileSystem; import org.apache.james.mailbox.MailboxManager; @@ -48,7 +49,6 @@ import org.apache.james.protocols.lib.mock.MockProtocolHandlerLoader; import org.apache.james.user.api.UsersRepository; import org.apache.james.user.api.UsersRepositoryException; import org.apache.james.user.memory.MemoryUsersRepository; - import org.jboss.netty.util.HashedWheelTimer; import org.junit.After; import org.junit.Before; @@ -56,9 +56,10 @@ import org.junit.Ignore; import org.junit.Test; public class POP3ServerTest { + private static final DomainList NO_DOMAIN_LIST = null; private POP3TestConfiguration pop3Configuration; - private final MemoryUsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(); + private final MemoryUsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(NO_DOMAIN_LIST); private POP3Client pop3Client = null; protected MockFileSystem fileSystem; protected MockProtocolHandlerLoader protocolHandlerChain; diff --git a/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/SMTPServerTest.java b/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/SMTPServerTest.java index b0c094d..2bed383 100644 --- a/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/SMTPServerTest.java +++ b/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/SMTPServerTest.java @@ -171,11 +171,12 @@ public class SMTPServerTest { private static final long HALF_SECOND = 500; private static final int MAX_ITERATIONS = 10; + private static final DomainList NO_DOMAIN_LIST = null; private static final Logger LOGGER = LoggerFactory.getLogger(SMTPServerTest.class); protected SMTPTestConfiguration smtpConfiguration; protected HashedWheelTimer hashedWheelTimer; - protected final MemoryUsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(); + protected final MemoryUsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(NO_DOMAIN_LIST); protected AlterableDNSServer dnsServer; protected MemoryMailRepositoryStore mailRepositoryStore; protected FileSystemImpl fileSystem; diff --git a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/AliasRoutesTest.java b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/AliasRoutesTest.java index 57f6809..64ebf18 100644 --- a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/AliasRoutesTest.java +++ b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/AliasRoutesTest.java @@ -116,8 +116,7 @@ class AliasRoutesTest { MappingSourceModule module = new MappingSourceModule(); memoryRecipientRewriteTable.setDomainList(domainList); - usersRepository = MemoryUsersRepository.withVirtualHosting(); - usersRepository.setDomainList(domainList); + usersRepository = MemoryUsersRepository.withVirtualHosting(domainList); usersRepository.configure(new BaseHierarchicalConfiguration()); usersRepository.addUser(Username.of(BOB), BOB_PASSWORD); diff --git a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/ForwardRoutesTest.java b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/ForwardRoutesTest.java index 51b18b2..27c8ec9 100644 --- a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/ForwardRoutesTest.java +++ b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/ForwardRoutesTest.java @@ -115,8 +115,7 @@ class ForwardRoutesTest { memoryRecipientRewriteTable.setDomainList(domainList); MappingSourceModule mappingSourceModule = new MappingSourceModule(); - usersRepository = MemoryUsersRepository.withVirtualHosting(); - usersRepository.setDomainList(domainList); + usersRepository = MemoryUsersRepository.withVirtualHosting(domainList); usersRepository.configure(new BaseHierarchicalConfiguration()); usersRepository.addUser(Username.of(BOB), BOB_PASSWORD); diff --git a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/GroupsRoutesTest.java b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/GroupsRoutesTest.java index 910121f..6c2f9c7 100644 --- a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/GroupsRoutesTest.java +++ b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/GroupsRoutesTest.java @@ -107,8 +107,7 @@ class GroupsRoutesTest { domainList.addDomain(DOMAIN); domainList.addDomain(ALIAS_DOMAIN); memoryRecipientRewriteTable.setDomainList(domainList); - usersRepository = MemoryUsersRepository.withVirtualHosting(); - usersRepository.setDomainList(domainList); + usersRepository = MemoryUsersRepository.withVirtualHosting(domainList); MappingSourceModule mappingSourceModule = new MappingSourceModule(); createServer(new GroupsRoutes(memoryRecipientRewriteTable, usersRepository, new JsonTransformer(mappingSourceModule))); } diff --git a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/SieveQuotaRoutesTest.java b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/SieveQuotaRoutesTest.java index 759b556..d256947 100644 --- a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/SieveQuotaRoutesTest.java +++ b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/SieveQuotaRoutesTest.java @@ -25,6 +25,7 @@ import static org.hamcrest.Matchers.is; import org.apache.james.core.Username; import org.apache.james.core.quota.QuotaSizeLimit; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.sieverepository.api.SieveQuotaRepository; import org.apache.james.sieverepository.memory.InMemorySieveQuotaRepository; import org.apache.james.user.api.UsersRepositoryException; @@ -45,6 +46,7 @@ class SieveQuotaRoutesTest { private static final String USER_NAME_A = "userA"; private static final String PASSWORD_A = "123456"; private static final Username USERNAME_A = Username.of(USER_NAME_A); + private static final DomainList NO_DOMAIN_LIST = null; private WebAdminServer webAdminServer; private SieveQuotaRepository sieveRepository; @@ -53,7 +55,7 @@ class SieveQuotaRoutesTest { void setUp() throws UsersRepositoryException { sieveRepository = new InMemorySieveQuotaRepository(); - MemoryUsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(); + MemoryUsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(NO_DOMAIN_LIST); usersRepository.addUser(Username.of(USER_NAME_A), PASSWORD_A); webAdminServer = WebAdminUtils.createWebAdminServer(new SieveQuotaRoutes(sieveRepository, usersRepository, new JsonTransformer())) diff --git a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/SieveScriptRoutesTest.java b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/SieveScriptRoutesTest.java index 7570b23..f103643 100644 --- a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/SieveScriptRoutesTest.java +++ b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/SieveScriptRoutesTest.java @@ -34,6 +34,7 @@ import java.nio.charset.StandardCharsets; import org.apache.commons.io.IOUtils; import org.apache.james.core.Username; +import org.apache.james.domainlist.api.DomainList; import org.apache.james.filesystem.api.FileSystem; import org.apache.james.junit.TemporaryFolderExtension; import org.apache.james.sieverepository.api.ScriptContent; @@ -55,6 +56,7 @@ import io.restassured.RestAssured; @ExtendWith(TemporaryFolderExtension.class) class SieveScriptRoutesTest { + private static final DomainList NO_DOMAIN_LIST = null; private WebAdminServer webAdminServer; private SieveRepository sieveRepository; @@ -80,7 +82,7 @@ class SieveScriptRoutesTest { }; sieveRepository = new SieveFileRepository(fileSystem); - UsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(); + UsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(NO_DOMAIN_LIST); usersRepository.addUser(Username.of("userA"), "password"); URL sieveResource = ClassLoader.getSystemResource("sieve/my_sieve"); diff --git a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/UserRoutesTest.java b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/UserRoutesTest.java index 34a59a2..fc83f11 100644 --- a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/UserRoutesTest.java +++ b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/UserRoutesTest.java @@ -68,31 +68,34 @@ class UserRoutesTest { private static class UserRoutesExtension implements BeforeEachCallback, AfterEachCallback, ParameterResolver { static UserRoutesExtension withVirtualHosting() { - return new UserRoutesExtension(MemoryUsersRepository.withVirtualHosting()); + SimpleDomainList domainList = new SimpleDomainList(); + return new UserRoutesExtension(MemoryUsersRepository.withVirtualHosting(domainList), domainList); } + static UserRoutesExtension withoutVirtualHosting() { - return new UserRoutesExtension(MemoryUsersRepository.withoutVirtualHosting()); + SimpleDomainList domainList = new SimpleDomainList(); + return new UserRoutesExtension(MemoryUsersRepository.withoutVirtualHosting(domainList), domainList); } final MemoryUsersRepository usersRepository; + final SimpleDomainList domainList; WebAdminServer webAdminServer; - UserRoutesExtension(MemoryUsersRepository usersRepository) { + UserRoutesExtension(MemoryUsersRepository usersRepository, SimpleDomainList domainList) { this.usersRepository = spy(usersRepository); + this.domainList = domainList; } @Override public void beforeEach(ExtensionContext extensionContext) throws Exception { - DomainList domainList = new SimpleDomainList(); domainList.addDomain(DOMAIN); - usersRepository.setDomainList(domainList); webAdminServer = startServer(usersRepository); } @Override - public void afterEach(ExtensionContext extensionContext) throws Exception { + public void afterEach(ExtensionContext extensionContext) { webAdminServer.destroy(); } diff --git a/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/test/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultRoutesTest.java b/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/test/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultRoutesTest.java index 1049075..6cb20b1 100644 --- a/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/test/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultRoutesTest.java +++ b/server/protocols/webadmin/webadmin-mailbox-deleted-message-vault/src/test/java/org/apache/james/webadmin/vault/routes/DeletedMessagesVaultRoutesTest.java @@ -210,8 +210,7 @@ class DeletedMessagesVaultRoutesTest { .autoDetectIp(false)); domainList.addDomain(DOMAIN); - MemoryUsersRepository usersRepository = MemoryUsersRepository.withVirtualHosting(); - usersRepository.setDomainList(domainList); + MemoryUsersRepository usersRepository = MemoryUsersRepository.withVirtualHosting(domainList); usersRepository.configure(new BaseHierarchicalConfiguration()); usersRepository.addUser(USERNAME, "userPassword"); diff --git a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/DomainQuotaRoutesNoVirtualHostingTest.java b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/DomainQuotaRoutesNoVirtualHostingTest.java index 1fc9ffc..1d77722 100644 --- a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/DomainQuotaRoutesNoVirtualHostingTest.java +++ b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/DomainQuotaRoutesNoVirtualHostingTest.java @@ -57,7 +57,7 @@ class DomainQuotaRoutesNoVirtualHostingTest { memoryDomainList.addDomain(Domain.of(FOUND_LOCAL)); DomainQuotaService domainQuotaService = new DomainQuotaService(maxQuotaManager); QuotaModule quotaModule = new QuotaModule(); - MemoryUsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(); + MemoryUsersRepository usersRepository = MemoryUsersRepository.withoutVirtualHosting(memoryDomainList); DomainQuotaRoutes domainQuotaRoutes = new DomainQuotaRoutes(memoryDomainList, domainQuotaService, usersRepository, new JsonTransformer(quotaModule), ImmutableSet.of(quotaModule)); webAdminServer = WebAdminUtils.createWebAdminServer(domainQuotaRoutes) .start(); diff --git a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ElasticSearchQuotaSearchExtension.java b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ElasticSearchQuotaSearchExtension.java index 5cbe210..e57771f 100644 --- a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ElasticSearchQuotaSearchExtension.java +++ b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ElasticSearchQuotaSearchExtension.java @@ -69,11 +69,10 @@ public class ElasticSearchQuotaSearchExtension implements ParameterResolver, Bef InMemoryIntegrationResources resources = InMemoryIntegrationResources.defaultResources(); - MemoryUsersRepository usersRepository = MemoryUsersRepository.withVirtualHosting(); DNSService dnsService = mock(DNSService.class); MemoryDomainList domainList = new MemoryDomainList(dnsService); - usersRepository.setDomainList(domainList); + MemoryUsersRepository usersRepository = MemoryUsersRepository.withVirtualHosting(domainList); ElasticSearchQuotaMailboxListener listener = new ElasticSearchQuotaMailboxListener( new ElasticSearchIndexer(client, QuotaRatioElasticSearchConstants.DEFAULT_QUOTA_RATIO_WRITE_ALIAS), diff --git a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ScanningQuotaSearchExtension.java b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ScanningQuotaSearchExtension.java index 51bddb4..997476c 100644 --- a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ScanningQuotaSearchExtension.java +++ b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ScanningQuotaSearchExtension.java @@ -47,14 +47,13 @@ public class ScanningQuotaSearchExtension implements ParameterResolver, BeforeEa try { InMemoryIntegrationResources resources = InMemoryIntegrationResources.defaultResources(); - MemoryUsersRepository usersRepository = MemoryUsersRepository.withVirtualHosting(); DNSService dnsService = mock(DNSService.class); MemoryDomainList domainList = new MemoryDomainList(dnsService); domainList.configure(DomainListConfiguration.builder() .autoDetect(false) .autoDetectIp(false)); - usersRepository.setDomainList(domainList); + MemoryUsersRepository usersRepository = MemoryUsersRepository.withVirtualHosting(domainList); QuotaComponents quotaComponents = resources.getMailboxManager().getQuotaComponents(); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
