You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by ri...@apache.org on 2009/10/01 15:24:57 UTC

svn commit: r820649 - /incubator/aries/trunk/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/container/BlueprintEventDispatcher.java

Author: rickmcguire
Date: Thu Oct  1 13:24:57 2009
New Revision: 820649

URL: http://svn.apache.org/viewvc?rev=820649&view=rev
Log:
Aries-11 An exception in a single BlueprintListener blueprintEvent() method should not terminate the event dispatch chain. 


Modified:
    incubator/aries/trunk/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/container/BlueprintEventDispatcher.java

Modified: incubator/aries/trunk/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/container/BlueprintEventDispatcher.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/container/BlueprintEventDispatcher.java?rev=820649&r1=820648&r2=820649&view=diff
==============================================================================
--- incubator/aries/trunk/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/container/BlueprintEventDispatcher.java (original)
+++ incubator/aries/trunk/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/container/BlueprintEventDispatcher.java Thu Oct  1 13:24:57 2009
@@ -138,7 +138,12 @@
         Object[] listeners = containerListenerTracker.getServices();
         if (listeners != null) {
             for (Object listener : listeners) {
-                ((BlueprintListener) listener).blueprintEvent(event);
+                try {
+                    ((BlueprintListener) listener).blueprintEvent(event);
+                } catch (Throwable e) {
+                    // an exception in a BlueprintListener should not terminate the
+                    // dispatch chain to other listeners
+                }
             }
         }
     }