Author: michiel
Date: 2010-01-11 16:11:37 +0100 (Mon, 11 Jan 2010)
New Revision: 40460

Modified:
   mmbase/trunk/core/src/main/java/org/mmbase/module/core/MMBaseContext.java
   mmbase/trunk/core/src/main/java/org/mmbase/servlet/MMBaseServlet.java
Log:
shutdown method in MMBaseContext itself

Modified: 
mmbase/trunk/core/src/main/java/org/mmbase/module/core/MMBaseContext.java
===================================================================
--- mmbase/trunk/core/src/main/java/org/mmbase/module/core/MMBaseContext.java   
2010-01-11 13:33:18 UTC (rev 40459)
+++ mmbase/trunk/core/src/main/java/org/mmbase/module/core/MMBaseContext.java   
2010-01-11 15:11:37 UTC (rev 40460)
@@ -32,6 +32,7 @@
 public class MMBaseContext {
     private static final Logger log = 
Logging.getLoggerInstance(MMBaseContext.class);
     private static boolean initialized = false;
+    private static boolean shutdown = false;
     static boolean htmlRootInitialized = false;
     private static ServletContext sx;
     private static String userDir;
@@ -445,4 +446,20 @@
     public static String getMachineName() {
         return MMBase.machineName;
     }
+
+    /**
+     * @since MMBase-2.0
+     */
+    public static void shutdown() {
+        shutdown = true;
+    }
+
+    /**
+     * @since MMBase-2.0
+     */
+    public static boolean isShutdown() {
+        return shutdown;
+    }
+
+
 }

Modified: mmbase/trunk/core/src/main/java/org/mmbase/servlet/MMBaseServlet.java
===================================================================
--- mmbase/trunk/core/src/main/java/org/mmbase/servlet/MMBaseServlet.java       
2010-01-11 13:33:18 UTC (rev 40459)
+++ mmbase/trunk/core/src/main/java/org/mmbase/servlet/MMBaseServlet.java       
2010-01-11 15:11:37 UTC (rev 40460)
@@ -616,12 +616,16 @@
 
            servletInstanceCount--;
             if (servletInstanceCount == 0) {
+                MMBaseContext.shutdown();
                 try {
                     log.info("Unloaded servlet mappings");
                     associatedServlets.clear();
                     servletMappings.clear();
                     log.info("No MMBase servlets left; modules can be shut 
down");
-                    MMBase.getMMBase().shutdown();
+                    MMBase mmb = (MMBase) MMBase.getModule("mmbaseroot", 
false);
+                    if (mmb != null) {
+                        mmb.shutdown();
+                    }
                     Module.shutdownModules();
                 } catch (Throwable t) {
                     log.error(t.getMessage(), t);

_______________________________________________
Cvs mailing list
Cvs@lists.mmbase.org
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to