You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by ea...@apache.org on 2009/06/23 23:44:53 UTC

svn commit: r787846 - /incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/UimacppServiceController.java

Author: eae
Date: Tue Jun 23 21:44:53 2009
New Revision: 787846

URL: http://svn.apache.org/viewvc?rev=787846&view=rev
Log:
UIMA-1395

Modified:
    incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/UimacppServiceController.java

Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/UimacppServiceController.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/UimacppServiceController.java?rev=787846&r1=787845&r2=787846&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/UimacppServiceController.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/UimacppServiceController.java Tue Jun 23 21:44:53 2009
@@ -43,6 +43,7 @@
 import org.apache.uima.internal.util.JmxMBeanAgent;
 import org.apache.uima.resource.ResourceInitializationException;
 import org.apache.uima.util.Level;
+import org.springframework.beans.factory.DisposableBean;
 
 /**
  * This bean functions as a proxy for a Uima C++ service. It starts the Uima C++
@@ -54,7 +55,7 @@
  * JMX and administrative requests such as shutdown.
  * 
  */
-public class UimacppServiceController implements ControllerLifecycle {
+public class UimacppServiceController implements ControllerLifecycle, DisposableBean {
   protected ServerSocket server;
 
   private int port;
@@ -779,6 +780,21 @@
     }
   }
 
+  /**
+   * 
+   * Runs when spring undeploys this bean.
+   * 
+   */ 
+  public void destroy() {
+    try {
+      shutdown();
+    } catch (IOException e) {
+      e.printStackTrace();
+    } catch (InterruptedException e) {
+      e.printStackTrace();
+    }
+  }
+
   public void addControllerCallbackListener(ControllerCallbackListener aListener) {
     synchronized (this) {
       this.listeners.add(aListener);