docs: private void transfer(Socket sourceSocket, Source source, Sink sink) {
      try {
        Buffer buffer = new Buffer();
        for (long byteCount; (byteCount = source.read(buffer, 8192L)) != -1; ) {
          sink.write(buffer, byteCount);
          sink.flush();
        }
      } catch (IOException e) {
        System.out.println("transfer failed from " + sourceSocket + ": " + e);
      } finally {
        closeQuietly(sink);
        closeQuietly(source);
        closeQuietly(sourceSocket);
        openSockets.remove(sourceSocket);
      }
    }