You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by cw...@apache.org on 2011/03/02 17:49:23 UTC

svn commit: r1076287 - /uima/uima-as/trunk/uimaj-as-jms/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngineCommon_impl.java

Author: cwiklik
Date: Wed Mar  2 16:49:23 2011
New Revision: 1076287

URL: http://svn.apache.org/viewvc?rev=1076287&view=rev
Log:
UIMA-2065 Remove ShutdownHook in stop() method. The hook was added in case the application 'forgets' to call stop().

Modified:
    uima/uima-as/trunk/uimaj-as-jms/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngineCommon_impl.java

Modified: uima/uima-as/trunk/uimaj-as-jms/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngineCommon_impl.java
URL: http://svn.apache.org/viewvc/uima/uima-as/trunk/uimaj-as-jms/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngineCommon_impl.java?rev=1076287&r1=1076286&r2=1076287&view=diff
==============================================================================
--- uima/uima-as/trunk/uimaj-as-jms/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngineCommon_impl.java (original)
+++ uima/uima-as/trunk/uimaj-as-jms/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngineCommon_impl.java Wed Mar  2 16:49:23 2011
@@ -197,6 +197,8 @@ public abstract class BaseUIMAAsynchrono
 
   protected static SharedConnection sharedConnection = null;
 
+  protected Thread shutdownHookThread = null;
+
   private ExecutorService exec = Executors.newFixedThreadPool(1);
   
   abstract public String getEndPointName() throws Exception;
@@ -487,6 +489,13 @@ public abstract class BaseUIMAAsynchrono
                   "stop", UIMAEE_Constants.JMS_LOG_RESOURCE_BUNDLE,
                   "UIMAEE_exception__WARNING", e);
         }
+      } finally {
+        //  Shutdown hook has been previously added in case an epplication 'forgets'
+        //  to call stop. Since we are in the stop() method, the hook is no longer 
+        //  needed.
+        if ( shutdownHookThread != null ) {
+          Runtime.getRuntime().removeShutdownHook(shutdownHookThread);
+        }
       }
     }
   }