So, this is some of the code that I added to Hierarchy:

  /**
    Requests that a configuration changed event be sent to any registered
    {@link LoggerRepositoryEventListener}.
    @since 1.3*/
  public void fireConfigurationChangedEvent() {
    if(repositoryEventListeners != null) {
      int size = repositoryEventListeners.size();
      LoggerRepositoryEventListener listener;
      for(int i = 0; i < size; i++) {
        listener = (LoggerRepositoryEventListener)
          repositoryEventListeners.elementAt(i);
        listener.configurationChangedEvent(this);
      }
    }
  }

But there are also methods that allow one to remove a given listener from
the hierarchy.  So, there will be a problem here if a listener is removed
while in the for loop to reportiting an event.

What would be the best way to deal with it?  Just add a catch for the index
out of bounds exception or to synchronize on the listener vectors?

-Mark


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to