Author: ssegu Date: Mon Jan 22 16:15:15 2007 New Revision: 498865 URL: http://svn.apache.org/viewvc?view=rev&rev=498865 Log: Fixed register/removeListener methods to not re-add once initialized.
Modified: incubator/openjpa/trunk/openjpa-lib/src/main/java/org/apache/openjpa/lib/util/AbstractEventManager.java Modified: incubator/openjpa/trunk/openjpa-lib/src/main/java/org/apache/openjpa/lib/util/AbstractEventManager.java URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-lib/src/main/java/org/apache/openjpa/lib/util/AbstractEventManager.java?view=diff&rev=498865&r1=498864&r2=498865 ============================================================================== --- incubator/openjpa/trunk/openjpa-lib/src/main/java/org/apache/openjpa/lib/util/AbstractEventManager.java (original) +++ incubator/openjpa/trunk/openjpa-lib/src/main/java/org/apache/openjpa/lib/util/AbstractEventManager.java Mon Jan 22 16:15:15 2007 @@ -45,9 +45,10 @@ if (listener == null) return; if (_firing) { - if (_newListeners == null) + if (_newListeners == null) { _newListeners = newListenerCollection(); - _newListeners.addAll(_listeners); + _newListeners.addAll(_listeners); + } _newListeners.add(listener); } else { if (_listeners == null) @@ -63,9 +64,10 @@ if (listener == null) return false; if (_firing && _listeners.contains(listener)) { - if (_newListeners == null) + if (_newListeners == null) { _newListeners = newListenerCollection(); - _newListeners.addAll(_listeners); + _newListeners.addAll(_listeners); + } return _newListeners.remove(listener); } return _listeners != null && _listeners.remove(listener);