You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by bt...@apache.org on 2018/08/03 08:52:33 UTC

[20/20] james-project git commit: JAMES-2513 Memory Domain List configuration should rely on POJO

JAMES-2513 Memory Domain List configuration should rely on POJO


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

Branch: refs/heads/master
Commit: f101b0dae18bd911ca513b327a97fdfb522b7a9e
Parents: 8d33e65
Author: benwa <bt...@linagora.com>
Authored: Thu Aug 2 14:07:21 2018 +0700
Committer: Benoit Tellier <bt...@linagora.com>
Committed: Fri Aug 3 15:51:30 2018 +0700

----------------------------------------------------------------------
 .../james/modules/data/MemoryDataModule.java      | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/f101b0da/server/container/guice/memory-guice/src/main/java/org/apache/james/modules/data/MemoryDataModule.java
----------------------------------------------------------------------
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 44e7496..573c504 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
@@ -25,6 +25,7 @@ import org.apache.commons.configuration.ConfigurationException;
 import org.apache.james.dlp.api.DLPConfigurationStore;
 import org.apache.james.dlp.eventsourcing.EventSourcingDLPConfigurationStore;
 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.lifecycle.api.Configurable;
 import org.apache.james.mailrepository.api.MailRepositoryUrlStore;
@@ -39,6 +40,7 @@ import org.apache.james.utils.ConfigurationPerformer;
 import com.google.common.collect.ImmutableList;
 import com.google.inject.AbstractModule;
 import com.google.inject.Inject;
+import com.google.inject.Provides;
 import com.google.inject.Scopes;
 import com.google.inject.Singleton;
 import com.google.inject.multibindings.Multibinder;
@@ -70,16 +72,28 @@ public class MemoryDataModule extends AbstractModule {
         Multibinder.newSetBinder(binder(), ConfigurationPerformer.class).addBinding().to(MemoryDataConfigurationPerformer.class);
     }
 
+    @Provides
+    @Singleton
+    public DomainListConfiguration provideDomainListConfiguration(ConfigurationProvider configurationProvider) {
+        try {
+            return DomainListConfiguration.from(configurationProvider.getConfiguration("domainlist"));
+        } catch (ConfigurationException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
     @Singleton
     public static class MemoryDataConfigurationPerformer implements ConfigurationPerformer {
 
         private final ConfigurationProvider configurationProvider;
+        private final DomainListConfiguration domainListConfiguration;
         private final MemoryDomainList memoryDomainList;
         private final MemoryRecipientRewriteTable memoryRecipientRewriteTable;
 
         @Inject
-        public MemoryDataConfigurationPerformer(ConfigurationProvider configurationProvider, MemoryDomainList memoryDomainList, MemoryRecipientRewriteTable memoryRecipientRewriteTable) {
+        public MemoryDataConfigurationPerformer(ConfigurationProvider configurationProvider, DomainListConfiguration domainListConfiguration, MemoryDomainList memoryDomainList, MemoryRecipientRewriteTable memoryRecipientRewriteTable) {
             this.configurationProvider = configurationProvider;
+            this.domainListConfiguration = domainListConfiguration;
             this.memoryDomainList = memoryDomainList;
             this.memoryRecipientRewriteTable = memoryRecipientRewriteTable;
         }
@@ -87,7 +101,7 @@ public class MemoryDataModule extends AbstractModule {
         @Override
         public void initModule() {
             try {
-                memoryDomainList.configure(configurationProvider.getConfiguration("domainlist"));
+                memoryDomainList.configure(domainListConfiguration);
                 memoryRecipientRewriteTable.configure(configurationProvider.getConfiguration("recipientrewritetable"));
             } catch (ConfigurationException e) {
                 throw new RuntimeException(e);


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