3
3
*
4
4
* @author Abel García de Prada
5
5
* @author Juan Carlos Garrote Gascón
6
+ * @author Jorge Aguado Recio
6
7
*
7
- * Copyright (C) 2023 ownCloud GmbH.
8
+ * Copyright (C) 2024 ownCloud GmbH.
8
9
*
9
10
* This program is free software: you can redistribute it and/or modify
10
11
* it under the terms of the GNU General Public License version 2,
@@ -81,6 +82,7 @@ class UploadFileFromFileSystemWorker(
81
82
private lateinit var behavior: UploadBehavior
82
83
private lateinit var uploadPath: String
83
84
private lateinit var mimetype: String
85
+ private var removeLocal: Boolean = true
84
86
private var uploadIdInStorageManager: Long = - 1
85
87
private lateinit var ocTransfer: OCTransfer
86
88
private var fileSize: Long = 0
@@ -131,6 +133,7 @@ class UploadFileFromFileSystemWorker(
131
133
val paramBehavior = workerParameters.inputData.getString(KEY_PARAM_BEHAVIOR )
132
134
val paramFileSystemUri = workerParameters.inputData.getString(KEY_PARAM_LOCAL_PATH )
133
135
val paramUploadId = workerParameters.inputData.getLong(KEY_PARAM_UPLOAD_ID , - 1 )
136
+ val paramRemoveLocal = workerParameters.inputData.getBoolean(KEY_PARAM_REMOVE_LOCAL , true )
134
137
135
138
account = AccountUtils .getOwnCloudAccountByName(appContext, paramAccountName) ? : return false
136
139
fileSystemPath = paramFileSystemUri.takeUnless { it.isNullOrBlank() } ? : return false
@@ -139,6 +142,7 @@ class UploadFileFromFileSystemWorker(
139
142
lastModified = paramLastModified ? : return false
140
143
uploadIdInStorageManager = paramUploadId.takeUnless { it == - 1L } ? : return false
141
144
ocTransfer = retrieveUploadInfoFromDatabase() ? : return false
145
+ removeLocal = paramRemoveLocal
142
146
143
147
return true
144
148
}
@@ -250,7 +254,7 @@ class UploadFileFromFileSystemWorker(
250
254
251
255
val result = executeRemoteOperation { uploadFileOperation.execute(client) }
252
256
253
- if (result == Unit && behavior == UploadBehavior . MOVE ) {
257
+ if (result == Unit && removeLocal ) {
254
258
removeLocalFile() // Removed file from tmp folder
255
259
}
256
260
}
@@ -289,7 +293,7 @@ class UploadFileFromFileSystemWorker(
289
293
)
290
294
291
295
// Step 4: Remove tmp file folder after uploading
292
- if (result == Unit && behavior == UploadBehavior . MOVE ) {
296
+ if (result == Unit && removeLocal ) {
293
297
removeLocalFile()
294
298
}
295
299
}
@@ -401,5 +405,6 @@ class UploadFileFromFileSystemWorker(
401
405
const val KEY_PARAM_LAST_MODIFIED = " KEY_PARAM_LAST_MODIFIED"
402
406
const val KEY_PARAM_UPLOAD_PATH = " KEY_PARAM_UPLOAD_PATH"
403
407
const val KEY_PARAM_UPLOAD_ID = " KEY_PARAM_UPLOAD_ID"
408
+ const val KEY_PARAM_REMOVE_LOCAL = " KEY_REMOVE_LOCAL"
404
409
}
405
410
}
0 commit comments