Java AWS SDK V2 «GetObject» отслеживать прогресс

#java #download #progress #aws-java-sdk-2.x

#java #Скачать #прогресс #aws-java-sdk-2.x

Вопрос:

Я написал код с использованием Swing для интерфейса GUI и Swingworker, который обрабатывает загрузку с помощью клиента синхронизации.

это то, что метод doInBackground() рабочего должен:

1) подтвердите метку с текущим файлом для загрузки 2) загрузите этот файл.

    for (HashMap.Entry<String, Long> s: DCPFiles.entrySet()) {


          jLabel5.setText("Download file "   Integer.toString(directory.listFiles().length   1)   " di "   Integer.toString(nFilesDCP)   " del DCP    "  DCPname); 


s3.getObject(GetObjectRequest.builder().bucket(bucketName)
.key(s.getKey()).build(),
ResponseTransformer.toFile(Paths.get(path.getPath()  "\"   s.getKey())));     




           }
  

У меня также есть панель прогресса в интерфейсе GUI, которую я бы подтвердил прогрессом. Поскольку в aws-java-sdk-v2 еще нет progresslistener, я мог бы опросить размер частично загруженного файла и разделить на ожидаемый размер, чтобы обновить progressbar. Но как это сделать? цикл While на s3.GetObject? И при каком условии?

Заранее спасибо-