You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by eg...@apache.org on 2010/02/02 17:51:07 UTC

svn commit: r905703 - /servicemix/smx4/nmr/trunk/nmr/management/src/main/java/org/apache/servicemix/nmr/management/ManagementAgent.java

Author: eglynn
Date: Tue Feb  2 16:51:06 2010
New Revision: 905703

URL: http://svn.apache.org/viewvc?rev=905703&view=rev
Log:
Fix for [SMX4NMR-182] Spurious ServiceUnavailableException on shutdown of ManagementAgent

Modified:
    servicemix/smx4/nmr/trunk/nmr/management/src/main/java/org/apache/servicemix/nmr/management/ManagementAgent.java

Modified: servicemix/smx4/nmr/trunk/nmr/management/src/main/java/org/apache/servicemix/nmr/management/ManagementAgent.java
URL: http://svn.apache.org/viewvc/servicemix/smx4/nmr/trunk/nmr/management/src/main/java/org/apache/servicemix/nmr/management/ManagementAgent.java?rev=905703&r1=905702&r2=905703&view=diff
==============================================================================
--- servicemix/smx4/nmr/trunk/nmr/management/src/main/java/org/apache/servicemix/nmr/management/ManagementAgent.java (original)
+++ servicemix/smx4/nmr/trunk/nmr/management/src/main/java/org/apache/servicemix/nmr/management/ManagementAgent.java Tue Feb  2 16:51:06 2010
@@ -39,6 +39,7 @@
 
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.ServiceRegistration;
+import org.osgi.service.blueprint.container.ServiceUnavailableException;
 import org.springframework.jmx.export.assembler.MetadataMBeanInfoAssembler;
 import org.springframework.jmx.export.annotation.AnnotationJmxAttributeSource;
 import org.springframework.beans.factory.DisposableBean;
@@ -117,7 +118,13 @@
      */
     public void unmanageNamedObject(Object name) throws Exception {
         if (name instanceof ObjectName) {
-            unregister((ObjectName)name);
+            try {
+                unregister((ObjectName)name);
+            } catch (ServiceUnavailableException sue) {
+                // due to timing / shutdown ordering issue that we may
+                // ignore as not unregistering from an already shutdown 
+                // blueprint container is quite harmless
+            }
         }
     }