[Jboss-cvs] JBossAS SVN: r55268 - trunk/ejb3/src/main/org/jboss/ejb3

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Aug 4 17:48:02 EDT 2006


Author: bdecoste
Date: 2006-08-04 17:48:01 -0400 (Fri, 04 Aug 2006)
New Revision: 55268

Modified:
   trunk/ejb3/src/main/org/jboss/ejb3/JmxKernelAbstraction.java
Log:
on uninstall, unregister MBean from server and remove parent dependency

Modified: trunk/ejb3/src/main/org/jboss/ejb3/JmxKernelAbstraction.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/JmxKernelAbstraction.java	2006-08-04 20:28:26 UTC (rev 55267)
+++ trunk/ejb3/src/main/org/jboss/ejb3/JmxKernelAbstraction.java	2006-08-04 21:48:01 UTC (rev 55268)
@@ -103,6 +103,16 @@
       parent.mbeans.add(on);
 
    }
+   
+   private void removeParentDependency(ObjectName on)
+   {
+      DeploymentInfo parent = di;
+      while (parent.parent != null)
+      {
+         parent = parent.parent;
+      }
+      parent.mbeans.remove(on);
+   }
 
    public void installMBean(ObjectName on, DependencyPolicy dependencies, Object service)
    {
@@ -124,6 +134,8 @@
    {
       try
       {
+         server.unregisterMBean(on);
+         removeParentDependency(on);
          serviceController.stop(on);
          serviceController.destroy(on);
          serviceController.remove(on);
@@ -136,16 +148,16 @@
 
    public void uninstall(String name)
    {
+      ObjectName on;
       try
       {
-         ObjectName on = new ObjectName(name);
-         serviceController.stop(on);
-         serviceController.destroy(on);
-         serviceController.remove(on);
+         on = new ObjectName(name);
       }
       catch (Exception e)
       {
          throw new RuntimeException(e);
       }
+      
+      uninstallMBean(on);
    }
 }




More information about the jboss-cvs-commits mailing list