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/05/04 06:54:14 UTC

[08/15] james-project git commit: JAMES-2368 Listener registry should be a singleton

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 <bt...@linagora.com>
Authored: Thu May 3 10:01:51 2018 +0700
Committer: benwa <bt...@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-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org