I think the methods need to be synchronized... wdyt ? Bye, Norman
2011/2/20 <[email protected]>: > Author: wstrzalka > Date: Sun Feb 20 16:17:31 2011 > New Revision: 1072621 > > URL: http://svn.apache.org/viewvc?rev=1072621&view=rev > Log: > Registering custom DelegatingMailboxListener in StoreMailboxManager property > setter. See IMAP-260 > > Modified: > > james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/AbstractDelegatingMailboxListener.java > > james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java > > Modified: > james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/AbstractDelegatingMailboxListener.java > URL: > http://svn.apache.org/viewvc/james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/AbstractDelegatingMailboxListener.java?rev=1072621&r1=1072620&r2=1072621&view=diff > ============================================================================== > --- > james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/AbstractDelegatingMailboxListener.java > (original) > +++ > james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/AbstractDelegatingMailboxListener.java > Sun Feb 20 16:17:31 2011 > @@ -30,6 +30,12 @@ import org.apache.james.mailbox.MailboxS > > public abstract class AbstractDelegatingMailboxListener implements > MailboxListener, MailboxListenerSupport{ > > + private boolean isClosed; > + > + protected AbstractDelegatingMailboxListener() { > + isClosed = false; > + } > + > /** > * Receive the event and dispatch it to the right {@link MailboxListener} > depending on {@link Event#getMailboxPath()} > */ > @@ -72,10 +78,17 @@ public abstract class AbstractDelegating > } > > /** > - * Is never closed > + * Close the listener > + */ > + public void close() { > + isClosed = true; > + } > + > + /** > + * Check if closed > */ > public boolean isClosed() { > - return false; > + return isClosed; > } > > /* > > Modified: > james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java > URL: > http://svn.apache.org/viewvc/james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java?rev=1072621&r1=1072620&r2=1072621&view=diff > ============================================================================== > --- > james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java > (original) > +++ > james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java > Sun Feb 20 16:17:31 2011 > @@ -111,7 +111,10 @@ public abstract class StoreMailboxManage > * @param delegatingListener > */ > public void > setDelegatingMailboxListener(AbstractDelegatingMailboxListener > delegatingListener) { > + if(this.delegatingListener != null) > + this.delegatingListener.close(); > this.delegatingListener = delegatingListener; > + dispatcher.addMailboxListener(this.delegatingListener); > } > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
