@Override public void run(){
  try {
    while (!isClosed() && _is.read() > 0 && _in.readMessage(_is)) {
      ServiceRef.flushOutbox();
    }
  }
 catch (  EOFException e) {
    log.finer(this + " end of file");
    if (log.isLoggable(Level.ALL)) {
      log.log(Level.ALL,e.toString(),e);
    }
  }
catch (  SocketException e) {
    e.printStackTrace();
    log.finer(this + " socket closed:" + e);
    if (log.isLoggable(Level.ALL)) {
      log.log(Level.ALL,e.toString(),e);
    }
  }
catch (  IOException e) {
    e.printStackTrace();
    throw new RuntimeException(e);
  }
catch (  Throwable e) {
    e.printStackTrace();
    throw e;
  }
 finally {
    close();
  }
}

@ Override public void run ( ) { try { while ( ! isClosed ( ) && _is . read ( ) > 0 && _in . readMessage ( _is ) ) { ServiceRef . flushOutbox ( ) ; } } catch ( EOFException e ) { log . finer ( this + " end of file" ) ; if ( log . isLoggable ( Level . ALL ) ) { log . log ( Level . ALL , e . toString ( ) , e ) ; } } catch ( SocketException e ) { e . printStackTrace ( ) ; log . finer ( this + " socket closed:" + e ) ; if ( log . isLoggable ( Level . ALL ) ) { log . log ( Level . ALL , e . toString ( ) , e ) ; } } catch ( IOException e ) { e . printStackTrace ( ) ; throw new RuntimeException ( e ) ; } catch ( Throwable e ) { e . printStackTrace ( ) ; throw e ; } finally { close ( ) ; } }
receive messages from the client
