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 d0bf47dfd5a7e47b32143310691952b57e5b46ff Author: Benoit Tellier <[email protected]> AuthorDate: Wed Dec 9 10:54:28 2020 +0700 JAMES-2578 Domail list: use configuration POJOs --- .../MemoryRecomputeCurrentQuotasServiceTest.java | 8 +++-- .../cassandra/CassandraDomainListTest.java | 7 ++-- .../james/domainlist/jpa/JPADomainListTest.java | 7 ++-- .../james/domainlist/lib/AbstractDomainList.java | 41 +++------------------- .../domainlist/memory/MemoryDomainListTest.java | 7 ++-- .../user/memory/MemoryUsersRepositoryTest.java | 13 ++++--- .../apache/james/smtpserver/SMTPServerTest.java | 7 ++-- .../routes/DLPConfigurationRoutesTest.java | 7 ++-- .../james/webadmin/routes/DomainsRoutesTest.java | 5 ++- .../DomainQuotaRoutesNoVirtualHostingTest.java | 6 +++- 10 files changed, 54 insertions(+), 54 deletions(-) diff --git a/mailbox/memory/src/test/java/org/apache/james/mailbox/inmemory/mail/task/MemoryRecomputeCurrentQuotasServiceTest.java b/mailbox/memory/src/test/java/org/apache/james/mailbox/inmemory/mail/task/MemoryRecomputeCurrentQuotasServiceTest.java index 375f055..328fccb 100644 --- a/mailbox/memory/src/test/java/org/apache/james/mailbox/inmemory/mail/task/MemoryRecomputeCurrentQuotasServiceTest.java +++ b/mailbox/memory/src/test/java/org/apache/james/mailbox/inmemory/mail/task/MemoryRecomputeCurrentQuotasServiceTest.java @@ -22,6 +22,7 @@ package org.apache.james.mailbox.inmemory.mail.task; import static org.mockito.Mockito.mock; import org.apache.james.dnsservice.api.DNSService; +import org.apache.james.domainlist.lib.DomainListConfiguration; import org.apache.james.domainlist.memory.MemoryDomainList; import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.SessionProvider; @@ -41,10 +42,13 @@ class MemoryRecomputeCurrentQuotasServiceTest implements RecomputeCurrentQuotasS RecomputeCurrentQuotasService testee; @BeforeEach - void setUp() { + void setUp() throws Exception { DNSService dnsService = mock(DNSService.class); MemoryDomainList memoryDomainList = new MemoryDomainList(dnsService); - memoryDomainList.setAutoDetect(false); + memoryDomainList.configure(DomainListConfiguration.builder() + .autoDetect(false) + .autoDetectIp(false) + .build()); usersRepository = MemoryUsersRepository.withoutVirtualHosting(memoryDomainList); resources = InMemoryIntegrationResources.defaultResources(); diff --git a/server/data/data-cassandra/src/test/java/org/apache/james/domainlist/cassandra/CassandraDomainListTest.java b/server/data/data-cassandra/src/test/java/org/apache/james/domainlist/cassandra/CassandraDomainListTest.java index 3fa2c61..4e5a757 100644 --- a/server/data/data-cassandra/src/test/java/org/apache/james/domainlist/cassandra/CassandraDomainListTest.java +++ b/server/data/data-cassandra/src/test/java/org/apache/james/domainlist/cassandra/CassandraDomainListTest.java @@ -22,6 +22,7 @@ package org.apache.james.domainlist.cassandra; import org.apache.james.backends.cassandra.CassandraCluster; import org.apache.james.backends.cassandra.CassandraClusterExtension; import org.apache.james.domainlist.api.DomainList; +import org.apache.james.domainlist.lib.DomainListConfiguration; import org.apache.james.domainlist.lib.DomainListContract; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.extension.RegisterExtension; @@ -35,8 +36,10 @@ class CassandraDomainListTest implements DomainListContract { @BeforeEach public void setUp(CassandraCluster cassandra) throws Exception { domainList = new CassandraDomainList(getDNSServer("localhost"), cassandra.getConf()); - domainList.setAutoDetect(false); - domainList.setAutoDetectIP(false); + domainList.configure(DomainListConfiguration.builder() + .autoDetect(false) + .autoDetectIp(false) + .build()); } @Override diff --git a/server/data/data-jpa/src/test/java/org/apache/james/domainlist/jpa/JPADomainListTest.java b/server/data/data-jpa/src/test/java/org/apache/james/domainlist/jpa/JPADomainListTest.java index 1faac7c..5ffb165 100644 --- a/server/data/data-jpa/src/test/java/org/apache/james/domainlist/jpa/JPADomainListTest.java +++ b/server/data/data-jpa/src/test/java/org/apache/james/domainlist/jpa/JPADomainListTest.java @@ -22,6 +22,7 @@ import org.apache.james.backends.jpa.JpaTestCluster; import org.apache.james.core.Domain; import org.apache.james.domainlist.api.DomainList; import org.apache.james.domainlist.jpa.model.JPADomain; +import org.apache.james.domainlist.lib.DomainListConfiguration; import org.apache.james.domainlist.lib.DomainListContract; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; @@ -56,8 +57,10 @@ class JPADomainListTest implements DomainListContract { private JPADomainList createDomainList() throws Exception { JPADomainList jpaDomainList = new JPADomainList(getDNSServer("localhost"), JPA_TEST_CLUSTER.getEntityManagerFactory()); - jpaDomainList.setAutoDetect(false); - jpaDomainList.setAutoDetectIP(false); + jpaDomainList.configure(DomainListConfiguration.builder() + .autoDetect(false) + .autoDetectIp(false) + .build()); return jpaDomainList; } diff --git a/server/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java b/server/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java index 8be0ee5..b8d1f30 100644 --- a/server/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java +++ b/server/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java @@ -52,7 +52,6 @@ import com.google.common.collect.Multimap; * class */ public abstract class AbstractDomainList implements DomainList, Configurable { - private static final Logger LOGGER = LoggerFactory.getLogger(AbstractDomainList.class); enum DomainType { @@ -62,16 +61,11 @@ public abstract class AbstractDomainList implements DomainList, Configurable { DetectedIp } - public static final String CONFIGURE_AUTODETECT = "autodetect"; - public static final String CONFIGURE_AUTODETECT_IP = "autodetectIP"; - public static final String CONFIGURE_DEFAULT_DOMAIN = "defaultDomain"; - public static final String CONFIGURE_DOMAIN_NAMES = "domainnames.domainname"; public static final String ENV_DOMAIN = "DOMAIN"; private final DNSService dns; private final EnvDetector envDetector; - private boolean autoDetect = true; - private boolean autoDetectIP = true; + private DomainListConfiguration configuration; private Domain defaultDomain; public AbstractDomainList(DNSService dns, EnvDetector envDetector) { @@ -91,8 +85,7 @@ public abstract class AbstractDomainList implements DomainList, Configurable { } public void configure(DomainListConfiguration domainListConfiguration) throws ConfigurationException { - setAutoDetect(domainListConfiguration.isAutoDetect()); - setAutoDetectIP(domainListConfiguration.isAutoDetectIp()); + this.configuration = domainListConfiguration; configureDefaultDomain(domainListConfiguration.getDefaultDomain()); @@ -139,7 +132,7 @@ public abstract class AbstractDomainList implements DomainList, Configurable { } private boolean mayChangeDefaultDomain() { - return autoDetect && Domain.LOCALHOST.equals(defaultDomain); + return configuration.isAutoDetect() && Domain.LOCALHOST.equals(defaultDomain); } private void setDefaultDomain(Domain defaultDomain) throws DomainListException { @@ -199,7 +192,7 @@ public abstract class AbstractDomainList implements DomainList, Configurable { } private ImmutableList<Domain> detectIps(Collection<Domain> domains) { - if (autoDetectIP) { + if (configuration.isAutoDetect() ) { return getDomainsIpStream(domains, dns, LOGGER) .collect(Guavate.toImmutableList()); } @@ -207,7 +200,7 @@ public abstract class AbstractDomainList implements DomainList, Configurable { } private ImmutableList<Domain> detectDomains() { - if (autoDetect) { + if (configuration.isAutoDetect() ) { String hostName; try { hostName = dns.getHostName(dns.getLocalHost()); @@ -248,30 +241,6 @@ public abstract class AbstractDomainList implements DomainList, Configurable { } } - /** - * Set to true to autodetect the hostname of the host on which james is - * running, and add this to the domain service Default is true - * - * @param autoDetect - * set to <code>false</code> for disable - */ - public synchronized void setAutoDetect(boolean autoDetect) { - LOGGER.info("Set autodetect to: {}", autoDetect); - this.autoDetect = autoDetect; - } - - /** - * Set to true to lookup the ipaddresses for each given domain and add these - * to the domain service Default is true - * - * @param autoDetectIP - * set to <code>false</code> for disable - */ - public synchronized void setAutoDetectIP(boolean autoDetectIP) { - LOGGER.info("Set autodetectIP to: {}", autoDetectIP); - this.autoDetectIP = autoDetectIP; - } - @Override public void removeDomain(Domain domain) throws DomainListException { if (isAutoDetected(domain)) { diff --git a/server/data/data-memory/src/test/java/org/apache/james/domainlist/memory/MemoryDomainListTest.java b/server/data/data-memory/src/test/java/org/apache/james/domainlist/memory/MemoryDomainListTest.java index 42ee644..4416525 100644 --- a/server/data/data-memory/src/test/java/org/apache/james/domainlist/memory/MemoryDomainListTest.java +++ b/server/data/data-memory/src/test/java/org/apache/james/domainlist/memory/MemoryDomainListTest.java @@ -20,6 +20,7 @@ package org.apache.james.domainlist.memory; import org.apache.james.domainlist.api.DomainList; +import org.apache.james.domainlist.lib.DomainListConfiguration; import org.apache.james.domainlist.lib.DomainListContract; import org.junit.jupiter.api.BeforeEach; @@ -29,8 +30,10 @@ class MemoryDomainListTest implements DomainListContract { @BeforeEach void setUp() throws Exception { domainList = new MemoryDomainList(getDNSServer("localhost")); - domainList.setAutoDetect(false); - domainList.setAutoDetectIP(false); + domainList.configure(DomainListConfiguration.builder() + .autoDetect(false) + .autoDetectIp(false) + .build()); } @Override 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 9bbf92c..b77b437 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 @@ -25,6 +25,7 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy; import org.apache.james.core.Domain; import org.apache.james.core.Username; import org.apache.james.dnsservice.api.InMemoryDNSService; +import org.apache.james.domainlist.lib.DomainListConfiguration; import org.apache.james.domainlist.memory.MemoryDomainList; import org.apache.james.user.api.UsersRepositoryException; import org.apache.james.user.lib.UsersRepositoryContract; @@ -67,8 +68,10 @@ class MemoryUsersRepositoryTest { MemoryDomainList domainList = new MemoryDomainList(new InMemoryDNSService() .registerMxRecord(LOCALHOST, LOCALHOST_ADDRESS) .registerMxRecord(LOCALHOST_ADDRESS, LOCALHOST_ADDRESS)); - domainList.setAutoDetect(false); - domainList.setAutoDetectIP(false); + domainList.configure(DomainListConfiguration.builder() + .autoDetect(false) + .autoDetectIp(false) + .build()); domainList.addDomain(Domain.of("domain.tld")); MemoryUsersRepository memoryUsersRepository = MemoryUsersRepository.withVirtualHosting(domainList); @@ -82,8 +85,10 @@ class MemoryUsersRepositoryTest { MemoryDomainList domainList = new MemoryDomainList(new InMemoryDNSService() .registerMxRecord(LOCALHOST, LOCALHOST_ADDRESS) .registerMxRecord(LOCALHOST_ADDRESS, LOCALHOST_ADDRESS)); - domainList.setAutoDetect(false); - domainList.setAutoDetectIP(false); + domainList.configure(DomainListConfiguration.builder() + .autoDetect(false) + .autoDetectIp(false) + .build()); MemoryUsersRepository memoryUsersRepository = MemoryUsersRepository.withVirtualHosting(domainList); 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 98d4975..0b7d3ba 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 @@ -52,6 +52,7 @@ import org.apache.james.core.Username; import org.apache.james.dnsservice.api.DNSService; import org.apache.james.dnsservice.api.InMemoryDNSService; import org.apache.james.domainlist.api.DomainList; +import org.apache.james.domainlist.lib.DomainListConfiguration; import org.apache.james.domainlist.memory.MemoryDomainList; import org.apache.james.filesystem.api.FileSystem; import org.apache.james.mailrepository.api.MailRepositoryStore; @@ -214,8 +215,10 @@ public class SMTPServerTest { .registerMxRecord(LOCAL_DOMAIN, "127.0.0.1") .registerMxRecord("examplebis.local", "127.0.0.1") .registerMxRecord("127.0.0.1", "127.0.0.1")); - domainList.setAutoDetect(false); - domainList.setAutoDetectIP(false); + domainList.configure(DomainListConfiguration.builder() + .autoDetect(false) + .autoDetectIp(false) + .build()); domainList.addDomain(Domain.LOCALHOST); domainList.addDomain(Domain.of(LOCAL_DOMAIN)); diff --git a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DLPConfigurationRoutesTest.java b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DLPConfigurationRoutesTest.java index 68a2ae8..90bbec0 100644 --- a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DLPConfigurationRoutesTest.java +++ b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DLPConfigurationRoutesTest.java @@ -39,6 +39,7 @@ import org.apache.james.dlp.api.DLPConfigurationStore; import org.apache.james.dlp.eventsourcing.EventSourcingDLPConfigurationStore; import org.apache.james.dnsservice.api.DNSService; import org.apache.james.domainlist.api.DomainList; +import org.apache.james.domainlist.lib.DomainListConfiguration; import org.apache.james.domainlist.memory.MemoryDomainList; import org.apache.james.eventsourcing.eventstore.memory.InMemoryEventStore; import org.apache.james.webadmin.WebAdminServer; @@ -89,8 +90,10 @@ class DLPConfigurationRoutesTest { Mockito.when(dnsService.getLocalHost()).thenReturn(InetAddress.getByName("localhost")); MemoryDomainList domainList = new MemoryDomainList(dnsService); - domainList.setAutoDetectIP(false); - domainList.setAutoDetect(false); + domainList.configure(DomainListConfiguration.builder() + .autoDetect(false) + .autoDetectIp(false) + .build()); domainList.addDomain(SENDER_DOMAIN); domainList.addDomain(SENDER_DOMAIN_2); diff --git a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DomainsRoutesTest.java b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DomainsRoutesTest.java index 607f166..99275cc 100644 --- a/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DomainsRoutesTest.java +++ b/server/protocols/webadmin/webadmin-data/src/test/java/org/apache/james/webadmin/routes/DomainsRoutesTest.java @@ -92,7 +92,10 @@ class DomainsRoutesTest { when(dnsService.getLocalHost()).thenReturn(InetAddress.getByName("localhost")); MemoryDomainList domainList = new MemoryDomainList(dnsService); - domainList.setAutoDetectIP(false); + domainList.configure(DomainListConfiguration.builder() + .autoDetect(false) + .autoDetectIp(false) + .build()); createServer(domainList); } 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 1d77722..7d96fc1 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 @@ -23,6 +23,7 @@ import static io.restassured.RestAssured.given; import org.apache.james.core.Domain; import org.apache.james.dnsservice.api.InMemoryDNSService; +import org.apache.james.domainlist.lib.DomainListConfiguration; import org.apache.james.domainlist.memory.MemoryDomainList; import org.apache.james.mailbox.inmemory.quota.InMemoryPerUserMaxQuotaManager; import org.apache.james.user.memory.MemoryUsersRepository; @@ -53,7 +54,10 @@ class DomainQuotaRoutesNoVirtualHostingTest { void setUp() throws Exception { InMemoryPerUserMaxQuotaManager maxQuotaManager = new InMemoryPerUserMaxQuotaManager(); MemoryDomainList memoryDomainList = new MemoryDomainList(new InMemoryDNSService()); - memoryDomainList.setAutoDetect(false); + memoryDomainList.configure(DomainListConfiguration.builder() + .autoDetect(false) + .autoDetectIp(false) + .build()); memoryDomainList.addDomain(Domain.of(FOUND_LOCAL)); DomainQuotaService domainQuotaService = new DomainQuotaService(maxQuotaManager); QuotaModule quotaModule = new QuotaModule(); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
