docs: public R uploadAndFinish(InputStream in, IOUtil.ProgressListener progressListener) throws X, DbxException, IOException {
          try {
              try {
                  httpUploader.setProgressListener(progressListener);
                  httpUploader.upload(in);
              } catch (IOUtil.ReadException ex) {
                  throw ex.getCause();
              } catch (IOException ex) {
                  // write exceptions and everything else is a Network I/O problem
                  throw new NetworkIOException(ex);
              }
  
              return finish();
          } finally {
              close();
          }
      }