Author: jmarino
Date: Mon May 8 17:53:15 2006
New Revision: 405249
URL: http://svn.apache.org/viewcvs?rev=405249&view=rev
Log:
Fix related to TUSCANY-247 when shutting down system services from
TuscanyRuntime and Tomcat
Modified:
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyContextListener.java
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java
Modified:
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java?rev=405249&r1=405248&r2=405249&view=diff
==============================================================================
---
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java
(original)
+++
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java
Mon May 8 17:53:15 2006
@@ -141,6 +141,7 @@
* Shut down the Tuscany runtime.
*/
public void shutdown() {
+ runtime.getSystemContext().publish(new ModuleStop(this));
runtime.stop();
}
Modified:
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyContextListener.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyContextListener.java?rev=405249&r1=405248&r2=405249&view=diff
==============================================================================
---
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyContextListener.java
(original)
+++
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyContextListener.java
Mon May 8 17:53:15 2006
@@ -23,11 +23,9 @@
import org.apache.catalina.LifecycleEvent;
import org.apache.catalina.LifecycleListener;
import org.apache.catalina.Valve;
-import org.apache.catalina.core.StandardWrapper;
import org.apache.catalina.util.StringManager;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.tuscany.binding.axis2.entrypoint.WebServiceEntryPointServlet;
import org.apache.tuscany.common.resource.ResourceLoader;
import org.apache.tuscany.common.resource.impl.ResourceLoaderImpl;
import org.apache.tuscany.core.client.BootstrapHelper;
@@ -36,6 +34,7 @@
import org.apache.tuscany.core.context.CompositeContext;
import org.apache.tuscany.core.context.EventException;
import org.apache.tuscany.core.context.event.ModuleStart;
+import org.apache.tuscany.core.context.event.ModuleStop;
import org.apache.tuscany.core.runtime.RuntimeContext;
import org.apache.tuscany.model.assembly.AssemblyFactory;
import org.apache.tuscany.model.assembly.ModuleComponent;
@@ -111,7 +110,7 @@
private void loadContext(Context ctx) throws ConfigurationException {
ResourceLoader resourceLoader = new
ResourceLoaderImpl(ctx.getLoader().getClassLoader());
- ClassLoader oldCl = Thread.currentThread().getContextClassLoader();
+ ClassLoader oldCl = Thread.currentThread().getContextClassLoader();
Thread.currentThread().setContextClassLoader(getClass().getClassLoader());
try {
AssemblyContextImpl modelContext = new
AssemblyContextImpl(modelFactory, modelLoader, resourceLoader, ctx.getName());
@@ -124,15 +123,15 @@
// Register it under the root application context
CompositeContext rootContext = runtime.getRootContext();
rootContext.registerModelObject(moduleComponent);
- moduleContext =
(CompositeContext)rootContext.getContext(moduleComponent.getName());
+ moduleContext = (CompositeContext)
rootContext.getContext(moduleComponent.getName());
} finally {
Thread.currentThread().setContextClassLoader(oldCl);
}
}
private void stopContext(Context ctx) {
- if (moduleContext!=null) {
- moduleContext.publish(new ModuleStart(this));
+ if (moduleContext != null) {
+ moduleContext.publish(new ModuleStop(this));
}
// todo unload module component from runtime
}
Modified:
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java?rev=405249&r1=405248&r2=405249&view=diff
==============================================================================
---
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java
(original)
+++
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java
Mon May 8 17:53:15 2006
@@ -37,6 +37,7 @@
import org.apache.tuscany.core.context.CompositeContext;
import org.apache.tuscany.core.context.SystemCompositeContext;
import org.apache.tuscany.core.context.event.ModuleStart;
+import org.apache.tuscany.core.context.event.ModuleStop;
import org.apache.tuscany.core.runtime.RuntimeContext;
import org.apache.tuscany.core.runtime.RuntimeContextImpl;
import org.apache.tuscany.core.webapp.ServletHost;
@@ -116,7 +117,8 @@
if (runtime == null) {
return;
}
-
+ runtime.getSystemContext().publish(new ModuleStop(this));
+
runtime.stop();
runtime = null;
getLogger().info(sm.getString("runtime.stopped"));