protected abstract void shutdownOutput () throws IOException;
protected void shutdownOutput() throws IOException { throw new IOException("Not implemented in this socket class"); }
  protected abstract void shutdownOutput () throws IOException;