JAMES-2340 Simplify wiring logic in SpamAssassinListener Guice module

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

Branch: refs/heads/master
Commit: b296483007937bfc54e7777c527dba4d7b5fb2b4
Parents: 356add8
Author: benwa <btell...@linagora.com>
Authored: Mon Mar 26 11:31:06 2018 +0700
Committer: Matthieu Baechler <matth...@apache.org>
Committed: Mon Mar 26 15:30:11 2018 +0200

----------------------------------------------------------------------
 .../spamassassin/SpamAssassinListenerModule.java  | 18 +++++++-----------
 1 file changed, 7 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/b2964830/server/container/guice/mailbox-plugin-spamassassin/src/main/java/org/apache/james/modules/spamassassin/SpamAssassinListenerModule.java
----------------------------------------------------------------------
diff --git 
a/server/container/guice/mailbox-plugin-spamassassin/src/main/java/org/apache/james/modules/spamassassin/SpamAssassinListenerModule.java
 
b/server/container/guice/mailbox-plugin-spamassassin/src/main/java/org/apache/james/modules/spamassassin/SpamAssassinListenerModule.java
index 6fe431f..8a49b24 100644
--- 
a/server/container/guice/mailbox-plugin-spamassassin/src/main/java/org/apache/james/modules/spamassassin/SpamAssassinListenerModule.java
+++ 
b/server/container/guice/mailbox-plugin-spamassassin/src/main/java/org/apache/james/modules/spamassassin/SpamAssassinListenerModule.java
@@ -29,10 +29,8 @@ import 
org.apache.commons.configuration.PropertiesConfiguration;
 import org.apache.james.lifecycle.api.Configurable;
 import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.exception.MailboxException;
-import org.apache.james.mailbox.spamassassin.SpamAssassin;
 import org.apache.james.mailbox.spamassassin.SpamAssassinConfiguration;
 import org.apache.james.mailbox.spamassassin.SpamAssassinListener;
-import org.apache.james.mailbox.store.MailboxSessionMapperFactory;
 import org.apache.james.mailbox.store.StoreMailboxManager;
 import org.apache.james.utils.ConfigurationPerformer;
 import org.apache.james.utils.PropertiesProvider;
@@ -44,6 +42,7 @@ 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.multibindings.Multibinder;
 
 public class SpamAssassinListenerModule extends AbstractModule {
@@ -53,29 +52,26 @@ public class SpamAssassinListenerModule extends 
AbstractModule {
 
     @Override
     protected void configure() {
+        bind(SpamAssassinListener.class).in(Scopes.SINGLETON);
+
         Multibinder.newSetBinder(binder(), 
ConfigurationPerformer.class).addBinding().to(SpamAssassinListenerConfigurationPerformer.class);
     }
     
     @Singleton
     public static class SpamAssassinListenerConfigurationPerformer implements 
ConfigurationPerformer {
-
-        private final SpamAssassinConfiguration spamAssassinConfiguration;
+        private final SpamAssassinListener spamAssassinListener;
         private final StoreMailboxManager storeMailboxManager;
-        private final MailboxSessionMapperFactory mapperFactory;
 
         @Inject
-        public 
SpamAssassinListenerConfigurationPerformer(SpamAssassinConfiguration 
spamAssassinConfiguration,
-                                                          StoreMailboxManager 
storeMailboxManager,
-                                                          
MailboxSessionMapperFactory mapperFactory) {
-            this.spamAssassinConfiguration = spamAssassinConfiguration;
+        public SpamAssassinListenerConfigurationPerformer(SpamAssassinListener 
spamAssassinListener,
+                                                          StoreMailboxManager 
storeMailboxManager) {
+            this.spamAssassinListener = spamAssassinListener;
             this.storeMailboxManager = storeMailboxManager;
-            this.mapperFactory = mapperFactory;
         }
 
         @Override
         public void initModule() {
             try {
-                SpamAssassinListener spamAssassinListener = new 
SpamAssassinListener(new SpamAssassin(spamAssassinConfiguration), 
mapperFactory);
                 MailboxSession session = null;
                 storeMailboxManager.addGlobalListener(spamAssassinListener, 
session);
             } catch (MailboxException e) {


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

Reply via email to