[jboss-osgi-commits] JBoss-OSGI SVN: r93043 - projects/jboss-osgi/projects/runtime/microcontainer/trunk/src/main/java/org/jboss/osgi/plugins/facade/service.

jboss-osgi-commits at lists.jboss.org jboss-osgi-commits at lists.jboss.org
Mon Aug 31 13:49:33 EDT 2009


Author: thomas.diesler at jboss.com
Date: 2009-08-31 13:49:33 -0400 (Mon, 31 Aug 2009)
New Revision: 93043

Modified:
   projects/jboss-osgi/projects/runtime/microcontainer/trunk/src/main/java/org/jboss/osgi/plugins/facade/service/MicrocontainerServiceImpl.java
Log:
unregisterMBean(MBEAN_MICROCONTAINER_SERVICE)

Modified: projects/jboss-osgi/projects/runtime/microcontainer/trunk/src/main/java/org/jboss/osgi/plugins/facade/service/MicrocontainerServiceImpl.java
===================================================================
--- projects/jboss-osgi/projects/runtime/microcontainer/trunk/src/main/java/org/jboss/osgi/plugins/facade/service/MicrocontainerServiceImpl.java	2009-08-31 16:54:15 UTC (rev 93042)
+++ projects/jboss-osgi/projects/runtime/microcontainer/trunk/src/main/java/org/jboss/osgi/plugins/facade/service/MicrocontainerServiceImpl.java	2009-08-31 17:49:33 UTC (rev 93043)
@@ -40,6 +40,7 @@
 import org.jboss.kernel.Kernel;
 import org.jboss.kernel.spi.dependency.KernelController;
 import org.jboss.kernel.spi.dependency.KernelControllerContext;
+import org.jboss.logging.Logger;
 import org.jboss.osgi.spi.management.MicrocontainerServiceMBean;
 import org.jboss.osgi.spi.service.MicrocontainerService;
 import org.osgi.framework.BundleContext;
@@ -54,6 +55,9 @@
  */
 public class MicrocontainerServiceImpl implements MicrocontainerService, MicrocontainerServiceMBean
 {
+   /** The log */
+   private static final Logger log = Logger.getLogger(MicrocontainerServiceImpl.class);
+   
    private Kernel kernel;
    private BundleContext sysContext;
 
@@ -93,6 +97,23 @@
             }
             return server;
          }
+
+         @Override
+         public void removedService(ServiceReference reference, Object service)
+         {
+            MBeanServer server = (MBeanServer)service;
+            try
+            {
+               if (server.isRegistered(MBEAN_MICROCONTAINER_SERVICE))
+                  server.unregisterMBean(MBEAN_MICROCONTAINER_SERVICE);
+            }
+            catch (Exception ex)
+            {
+               log.warn("Cannot unregister MicrocontainerServiceMBean", ex);
+            }
+            super.removedService(reference, service);
+         }
+
       };
       tracker.open();
    }



More information about the jboss-osgi-commits mailing list