mgr.unregisterConnection(connection.getJmsClientVMId(), connection.getRemotingClientSessionId());
mgr.handleClientFailure(connection.getRemotingClientSessionId());
   public void run()   {      try      {         if (trace) { log.trace("handing " + this.msg + " over to the remoting layer"); }                  MessagingMarshallable mm = new MessagingMarshallable(connection.getUsingVersion(), this);                  connection.getCallbackClient().invoke(mm);               }      catch(Throwable t)      {         log.warn("Failed to deliver the message to the client, clearing up connection resources", t);                  ConnectionManager mgr = connection.getServerPeer().getConnectionManager();                  mgr.unregisterConnection(connection.getJmsClientVMId(), connection.getRemotingClientSessionId());      }   }