@@ -0,0 +1,1118 @@
+package org.csstudio.diag.interconnectionServer.server;%0A%0Aimport org.csstudio.platform.logging.CentralLogger;%0A%0Apublic class ClientWatchdog extends Thread%7B%0A%09private ClientRequest clientID = null;%0A%09private int%09timeout%09= 0;%0A%09%0A%09ClientWatchdog ( ClientRequest clientID, int timeout) %7B%0A%09%09this.clientID = clientID;%0A%09%09this.timeout = timeout;%0A%09%09%0A%09%09this.start();%0A%09%7D%0A%09%0A%09public void run() %7B%0A%09%09/*%0A%09%09 * wait%0A%09%09 */%0A%09%09%0A%09%09try %7B%0A%09%09%09Thread.sleep( this.timeout);%0A%09%09%0A%09%09/*%0A%09%09 * check whether ClientRequest is still running%0A%09%09 * if so -%3E stop it!%0A%09%09 */%0A%09%09if ( this.clientID.isAlive()) %7B%0A%09%09%09/*%0A%09%09%09 * dammed - still running -%3E kill it!%0A%09%09%09 */%0A%09%09%09this.clientID.stop();%0A%09%09%09InterconnectionServer.getInstance().getClientRequestTheadCollector().decrementValue();%0A%09%09%09/*%0A%09%09%09 * another time we had to stop a thread! - countdown%0A%09%09%09 */%0A%09%09%09InterconnectionServer.getInstance().setSuccessfullJmsSentCountdown(false);%0A%09%09%09CentralLogger.getInstance().debug(this, %22InterconnectionServer: Hard STOP for ClientRequest%22);%0A%09%09%09System.out.println(%22#%22);%0A%09%09%7D%0A%09%09%7D catch (InterruptedException e) %7B%0A%09%09%09// TODO: handle exception%0A%09%09%7D%0A%09%09finally %7B%0A%09%09%09//clean up%0A%09%09%7D%0A%09%09%0A%09%7D%0A%0A%7D%0A

Add finallly after try/catch