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