code: protected Thread createPump(InputStream is, OutputStream os,
                                  boolean closeWhenExhausted) {
          return createPump(is, os, closeWhenExhausted, true);
      }
docs: Creates a stream pumper to copy the given input stream to the
  given output stream.
  
  @param is the input stream to copy from.
  @param os the output stream to copy to.
  @param closeWhenExhausted if true close the inputstream.
  @return a thread object that does the pumping, subclasses
  should return an instance of {@link ThreadWithPumper
  ThreadWithPumper}.