forrest-svn mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bd...@apache.org
Subject svn commit: r1098390 - in /forrest/trunk/whiteboard/forrest-osgi/org.apache.forrest.servlet/src/java/org/apache/forrest/http: ForrestServlet.java ForrestServletPlugin.java
Date Sun, 01 May 2011 19:13:40 GMT
Author: bdube
Date: Sun May  1 19:13:39 2011
New Revision: 1098390

URL: http://svn.apache.org/viewvc?rev=1098390&view=rev
Log:
Clean up and unregister main servlet

Modified:
    forrest/trunk/whiteboard/forrest-osgi/org.apache.forrest.servlet/src/java/org/apache/forrest/http/ForrestServlet.java
    forrest/trunk/whiteboard/forrest-osgi/org.apache.forrest.servlet/src/java/org/apache/forrest/http/ForrestServletPlugin.java

Modified: forrest/trunk/whiteboard/forrest-osgi/org.apache.forrest.servlet/src/java/org/apache/forrest/http/ForrestServlet.java
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/forrest-osgi/org.apache.forrest.servlet/src/java/org/apache/forrest/http/ForrestServlet.java?rev=1098390&r1=1098389&r2=1098390&view=diff
==============================================================================
--- forrest/trunk/whiteboard/forrest-osgi/org.apache.forrest.servlet/src/java/org/apache/forrest/http/ForrestServlet.java
(original)
+++ forrest/trunk/whiteboard/forrest-osgi/org.apache.forrest.servlet/src/java/org/apache/forrest/http/ForrestServlet.java
Sun May  1 19:13:39 2011
@@ -282,4 +282,11 @@ public class ForrestServlet extends Http
     return path + (path.endsWith("/") ? "" : "/") + index;
   }
 
+  @Override
+  public void destroy() {
+    mInputPluginTracker.close();
+    mOutputPluginTracker.close();
+    mBundleContext = null;
+  }
+
 }

Modified: forrest/trunk/whiteboard/forrest-osgi/org.apache.forrest.servlet/src/java/org/apache/forrest/http/ForrestServletPlugin.java
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/forrest-osgi/org.apache.forrest.servlet/src/java/org/apache/forrest/http/ForrestServletPlugin.java?rev=1098390&r1=1098389&r2=1098390&view=diff
==============================================================================
--- forrest/trunk/whiteboard/forrest-osgi/org.apache.forrest.servlet/src/java/org/apache/forrest/http/ForrestServletPlugin.java
(original)
+++ forrest/trunk/whiteboard/forrest-osgi/org.apache.forrest.servlet/src/java/org/apache/forrest/http/ForrestServletPlugin.java
Sun May  1 19:13:39 2011
@@ -30,6 +30,8 @@ import org.apache.forrest.log.LogPlugin.
 
 public class ForrestServletPlugin implements BundleActivator {
 
+  private static final String SERVLET_ALIAS = "/";
+
   private ServiceTracker mHttpTracker;
   private ForrestServlet mServlet;
 
@@ -57,7 +59,7 @@ public class ForrestServletPlugin implem
 
       if (null != service) {
         try {
-          service.registerServlet("/", mServlet, null, null);
+          service.registerServlet(SERVLET_ALIAS, mServlet, null, null);
         } catch (ServletException e) {
           e.printStackTrace();
         } catch (NamespaceException e) {
@@ -72,6 +74,19 @@ public class ForrestServletPlugin implem
   // @Override
   public void stop(BundleContext context) throws Exception {
     LOG.debug("Servlet plugin stopping");
+
+    /*
+     * Clean up our servlet registration
+     * Without this, the framework would still unregister for us
+     * but this is the only way to have destroy() called on our
+     * servlet
+     */
+    HttpService service = (HttpService) mHttpTracker.getService();
+
+    if (null != service) {
+      service.unregister(SERVLET_ALIAS);
+    }
+
     mHttpTracker.close();
   }
 



Mime
View raw message