You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by ba...@apache.org on 2009/01/16 22:11:01 UTC
svn commit: r735134 -
/webservices/axis2/branches/java/1_5/modules/kernel/src/org/apache/axis2/engine/ListenerManager.java
Author: barrettj
Date: Fri Jan 16 13:11:01 2009
New Revision: 735134
URL: http://svn.apache.org/viewvc?rev=735134&view=rev
Log:
AXIS2-4198
Patch submitted by Rick Slade. Add logic to addListner() similar to start() wrt setting the stopped flag
Modified:
webservices/axis2/branches/java/1_5/modules/kernel/src/org/apache/axis2/engine/ListenerManager.java
Modified: webservices/axis2/branches/java/1_5/modules/kernel/src/org/apache/axis2/engine/ListenerManager.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_5/modules/kernel/src/org/apache/axis2/engine/ListenerManager.java?rev=735134&r1=735133&r2=735134&view=diff
==============================================================================
--- webservices/axis2/branches/java/1_5/modules/kernel/src/org/apache/axis2/engine/ListenerManager.java (original)
+++ webservices/axis2/branches/java/1_5/modules/kernel/src/org/apache/axis2/engine/ListenerManager.java Fri Jan 16 13:11:01 2009
@@ -42,7 +42,7 @@
private static final Log log = LogFactory.getLog(ListenerManager.class);
public static ConfigurationContext defaultConfigurationContext;
- protected ListenerManagerShutdownThread shutdownHookThread;
+ protected ListenerManagerShutdownThread shutdownHookThread = null;
public static ListenerManager getDefaultListenerManager() {
if (defaultConfigurationContext == null) return null;
@@ -131,8 +131,10 @@
}
}
- shutdownHookThread = new ListenerManagerShutdownThread(this);
- Runtime.getRuntime().addShutdownHook(shutdownHookThread);
+ if (shutdownHookThread == null) {
+ shutdownHookThread = new ListenerManagerShutdownThread(this);
+ Runtime.getRuntime().addShutdownHook(shutdownHookThread);
+ }
stopped = false;
}
@@ -149,8 +151,10 @@
}
// Remove the shutdown hook
- Runtime.getRuntime().removeShutdownHook(shutdownHookThread);
- shutdownHookThread = null;
+ if (shutdownHookThread != null) {
+ Runtime.getRuntime().removeShutdownHook(shutdownHookThread);
+ shutdownHookThread = null;
+ }
for (Object o : startedTransports.values()) {
TransportListener transportListener = (TransportListener)o;
@@ -210,6 +214,11 @@
if (!started) {
transportListener.init(configctx, trsIn);
transportListener.start();
+ if (shutdownHookThread == null) {
+ shutdownHookThread = new ListenerManagerShutdownThread(this);
+ Runtime.getRuntime().addShutdownHook(shutdownHookThread);
+ }
+ stopped = false;
}
startedTransports.put(trsIn.getName(), transportListener);
}