[jboss-cvs] JBossAS SVN: r75221 - trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Jun 30 12:11:03 EDT 2008


Author: remy.maucherat at jboss.com
Date: 2008-06-30 12:11:02 -0400 (Mon, 30 Jun 2008)
New Revision: 75221

Modified:
   trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatService.java
Log:
- JBAS-5636 part 1: cleanup connectors shutdown.

Modified: trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatService.java
===================================================================
--- trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatService.java	2008-06-30 14:59:18 UTC (rev 75220)
+++ trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatService.java	2008-06-30 16:11:02 UTC (rev 75221)
@@ -183,7 +183,15 @@
       if (tomcatDeployer == null)
          throw new IllegalStateException("Must set TomcatDeployer before stopping");
 
-      stopConnectors();
+      // Hot undeploy
+      Boolean inShutdown = (Boolean)server.getAttribute(ServerImplMBean.OBJECT_NAME, "InShutdown");
+      if (inShutdown.booleanValue() == false)
+      {
+         log.debug("Server '" + ServerImplMBean.OBJECT_NAME +
+               "' already started, stopping connectors now");
+
+         stopConnectors();
+      }
       
       MBeanServer server = super.getServer();
       String objectNameS = tomcatDeployer.getDomain() + ":type=server";
@@ -370,8 +378,8 @@
          "findConnectors", args, sig);
       for (int n = 0; n < connectors.length; n++)
       {
-         Lifecycle lc = (Lifecycle) connectors[n];
-         lc.stop();
+          connectors[n].pause();
+          connectors[n].stop();
       }
    }
 
@@ -394,6 +402,18 @@
             log.warn("Failed to startConnectors", e);
          }
       }
+      if (type.equals(Server.STOP_NOTIFICATION_TYPE))
+      {
+         log.debug("Saw " + type + " notification, stopping connectors");
+         try
+         {
+            stopConnectors();
+         }
+         catch (Exception e)
+         {
+            log.warn("Failed to stopConnectors", e);
+         }
+      }
    }
 
    public String getDefaultSecurityDomain()




More information about the jboss-cvs-commits mailing list