瀏覽代碼

Merge pull request #12911 from nextcloud/improve-retry-failed-uploads-function

Improve retry failed uploads function
Alper Öztürk 1 年之前
父節點
當前提交
becdbd6fbe
共有 1 個文件被更改,包括 7 次插入5 次删除
  1. 7 5
      app/src/main/java/com/nextcloud/client/jobs/upload/FileUploadHelper.kt

+ 7 - 5
app/src/main/java/com/nextcloud/client/jobs/upload/FileUploadHelper.kt

@@ -124,10 +124,6 @@ class FileUploadHelper {
         var uploadUser = Optional.empty<User>()
 
         for (failedUpload in failedUploads) {
-            // 1. extract failed upload owner account and cache it between loops (expensive query)
-            if (!uploadUser.isPresent || !uploadUser.get().nameEquals(failedUpload.accountName)) {
-                uploadUser = accountManager.getUser(failedUpload.accountName)
-            }
             val isDeleted = !File(failedUpload.localPath).exists()
             if (isDeleted) {
                 showNotExistMessage = true
@@ -141,10 +137,16 @@ class FileUploadHelper {
                 canUploadBeRetried(failedUpload, gotWifi, charging) && !connectivityService.isInternetWalled
             ) {
                 // 2B. for existing local files, try restarting it if possible
-                retryUpload(failedUpload, uploadUser.get())
+                failedUpload.uploadStatus = UploadStatus.UPLOAD_IN_PROGRESS
+                uploadsStorageManager.updateUpload(failedUpload)
             }
         }
 
+        accountManager.accounts.forEach {
+            val user = accountManager.getUser(it.name)
+            if (user.isPresent) backgroundJobManager.startFilesUploadJob(user.get())
+        }
+
         return showNotExistMessage
     }