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:29 UTC
[16/20] james-project git commit: JAMES-2513 Cassandra Domain List
configuration should rely on POJO
JAMES-2513 Cassandra 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/75097ea9
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/75097ea9
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/75097ea9
Branch: refs/heads/master
Commit: 75097ea9ca35fdd71ced8184d2393f5e556a8317
Parents: 33c809a
Author: benwa <bt...@linagora.com>
Authored: Thu Aug 2 14:04:43 2018 +0700
Committer: Benoit Tellier <bt...@linagora.com>
Committed: Fri Aug 3 15:51:29 2018 +0700
----------------------------------------------------------------------
.../modules/data/CassandraDomainListModule.java | 20 ++++++++++++++++----
1 file changed, 16 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/james-project/blob/75097ea9/server/container/guice/cassandra-guice/src/main/java/org/apache/james/modules/data/CassandraDomainListModule.java
----------------------------------------------------------------------
diff --git a/server/container/guice/cassandra-guice/src/main/java/org/apache/james/modules/data/CassandraDomainListModule.java b/server/container/guice/cassandra-guice/src/main/java/org/apache/james/modules/data/CassandraDomainListModule.java
index 4d253af..482a65c 100644
--- a/server/container/guice/cassandra-guice/src/main/java/org/apache/james/modules/data/CassandraDomainListModule.java
+++ b/server/container/guice/cassandra-guice/src/main/java/org/apache/james/modules/data/CassandraDomainListModule.java
@@ -24,6 +24,7 @@ import org.apache.commons.configuration.ConfigurationException;
import org.apache.james.backends.cassandra.components.CassandraModule;
import org.apache.james.domainlist.api.DomainList;
import org.apache.james.domainlist.cassandra.CassandraDomainList;
+import org.apache.james.domainlist.lib.DomainListConfiguration;
import org.apache.james.lifecycle.api.Configurable;
import org.apache.james.server.core.configuration.ConfigurationProvider;
import org.apache.james.utils.ConfigurationPerformer;
@@ -31,6 +32,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;
@@ -44,23 +46,33 @@ public class CassandraDomainListModule extends AbstractModule {
Multibinder.newSetBinder(binder(), CassandraModule.class).addBinding().toInstance(org.apache.james.domainlist.cassandra.CassandraDomainListModule.MODULE);
Multibinder.newSetBinder(binder(), ConfigurationPerformer.class).addBinding().to(CassandraDomainListConfigurationPerformer.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 CassandraDomainListConfigurationPerformer implements ConfigurationPerformer {
- private final ConfigurationProvider configurationProvider;
+ private final DomainListConfiguration configuration;
private final CassandraDomainList cassandraDomainList;
@Inject
- public CassandraDomainListConfigurationPerformer(ConfigurationProvider configurationProvider, CassandraDomainList cassandraDomainList) {
- this.configurationProvider = configurationProvider;
+ public CassandraDomainListConfigurationPerformer(DomainListConfiguration configuration, CassandraDomainList cassandraDomainList) {
+ this.configuration = configuration;
this.cassandraDomainList = cassandraDomainList;
}
@Override
public void initModule() {
try {
- cassandraDomainList.configure(configurationProvider.getConfiguration("domainlist"));
+ cassandraDomainList.configure(configuration);
} 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