if (isClosed()) throw new SocketException("socket is closed");
  public synchronized int getSoTimeout () throws SocketException  {    Object timeout = getImpl().getOption(SocketOptions.SO_TIMEOUT);    if (timeout instanceof Integer)      return(((Integer)timeout).intValue());    else      return 0;  }