JAMES-2368 Listener registry should be a singleton
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/a87f701b Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/a87f701b Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/a87f701b Branch: refs/heads/master Commit: a87f701b74868f087126bf4b70a601acc884ba2f Parents: 6e64fcd Author: benwa <btell...@linagora.com> Authored: Thu May 3 10:01:51 2018 +0700 Committer: benwa <btell...@linagora.com> Committed: Fri May 4 13:39:07 2018 +0700 ---------------------------------------------------------------------- .../src/main/resources/META-INF/spring/event-system.xml | 2 ++ .../mailbox/store/event/DefaultDelegatingMailboxListener.java | 7 ++++--- .../org/apache/james/modules/mailbox/DefaultEventModule.java | 2 ++ 3 files changed, 8 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/a87f701b/mailbox/spring/src/main/resources/META-INF/spring/event-system.xml ---------------------------------------------------------------------- diff --git a/mailbox/spring/src/main/resources/META-INF/spring/event-system.xml b/mailbox/spring/src/main/resources/META-INF/spring/event-system.xml index cdb3c0d..e64f0b7 100644 --- a/mailbox/spring/src/main/resources/META-INF/spring/event-system.xml +++ b/mailbox/spring/src/main/resources/META-INF/spring/event-system.xml @@ -30,6 +30,7 @@ <bean id="default-delegating-listener" class="org.apache.james.mailbox.store.event.DefaultDelegatingMailboxListener" lazy-init="true"> <constructor-arg index="0" ref="event-delivery"/> + <constructor-arg index="1" ref="event-registry"/> </bean> <bean id="broadcast-delegating-listener" class="org.apache.james.mailbox.store.event.distributed.BroadcastDelegatingMailboxListener" lazy-init="true"> @@ -72,6 +73,7 @@ <bean id="synchronous-event-delivery" class="org.apache.james.mailbox.store.event.SynchronousEventDelivery" lazy-init="true"/> + <bean id="event-registry" class="org.apache.james.mailbox.store.event.MailboxListenerRegistry"/> <bean id="asynchronous-event-delivery" class="org.apache.james.mailbox.store.event.AsynchronousEventDelivery" lazy-init="true"> <constructor-arg index="0" ref="${event.delivery.thread.count}"/> http://git-wip-us.apache.org/repos/asf/james-project/blob/a87f701b/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListener.java ---------------------------------------------------------------------- diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListener.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListener.java index dca2f0c..fa5d18b 100644 --- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListener.java +++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/event/DefaultDelegatingMailboxListener.java @@ -51,12 +51,13 @@ public class DefaultDelegatingMailboxListener implements DelegatingMailboxListen } public DefaultDelegatingMailboxListener() { - this(new SynchronousEventDelivery()); + this(new SynchronousEventDelivery(), + new MailboxListenerRegistry()); } @Inject - public DefaultDelegatingMailboxListener(EventDelivery eventDelivery) { - this.registry = new MailboxListenerRegistry(); + public DefaultDelegatingMailboxListener(EventDelivery eventDelivery, MailboxListenerRegistry registry) { + this.registry = registry; this.eventDelivery = eventDelivery; } http://git-wip-us.apache.org/repos/asf/james-project/blob/a87f701b/server/container/guice/mailbox/src/main/java/org/apache/james/modules/mailbox/DefaultEventModule.java ---------------------------------------------------------------------- diff --git a/server/container/guice/mailbox/src/main/java/org/apache/james/modules/mailbox/DefaultEventModule.java b/server/container/guice/mailbox/src/main/java/org/apache/james/modules/mailbox/DefaultEventModule.java index 98c118f..67a63b7 100644 --- a/server/container/guice/mailbox/src/main/java/org/apache/james/modules/mailbox/DefaultEventModule.java +++ b/server/container/guice/mailbox/src/main/java/org/apache/james/modules/mailbox/DefaultEventModule.java @@ -30,6 +30,7 @@ import org.apache.james.mailbox.store.event.DefaultDelegatingMailboxListener; import org.apache.james.mailbox.store.event.DelegatingMailboxListener; import org.apache.james.mailbox.store.event.EventDelivery; import org.apache.james.mailbox.store.event.MailboxAnnotationListener; +import org.apache.james.mailbox.store.event.MailboxListenerRegistry; import org.apache.james.mailbox.store.event.SynchronousEventDelivery; import org.apache.james.mailbox.store.quota.ListeningCurrentQuotaUpdater; import org.apache.james.utils.ConfigurationPerformer; @@ -58,6 +59,7 @@ public class DefaultEventModule extends AbstractModule { bind(MailboxAnnotationListener.class).in(Scopes.SINGLETON); bind(MailboxListenersLoaderImpl.class).in(Scopes.SINGLETON); + bind(MailboxListenerRegistry.class).in(Scopes.SINGLETON); bind(MailboxListenersLoader.class).to(MailboxListenersLoaderImpl.class); Multibinder.newSetBinder(binder(), MailboxListener.class); } --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org