docs: public long getByteCount(long timeout) throws InterruptedException, IOException {
          waitForCompletion(timeout);
          if (this.exception != null) {
              throwException();
          }
          return this.byteCount;
      }