Return success/failure result for backup job

This commit is contained in:
arkon 2020-04-25 14:55:55 -04:00
parent 81b2dfd9d0
commit 19507d1837
2 changed files with 8 additions and 3 deletions

View file

@ -20,8 +20,11 @@ class BackupCreatorJob(private val context: Context, workerParams: WorkerParamet
val backupManager = BackupManager(context)
val uri = Uri.parse(preferences.backupsDirectory().get())
val flags = BackupCreateService.BACKUP_ALL
backupManager.createBackup(uri, flags, true)
return Result.success()
return if (backupManager.createBackup(uri, flags, true)) {
Result.success()
} else {
Result.failure()
}
}
companion object {

View file

@ -102,7 +102,7 @@ class BackupManager(val context: Context, version: Int = CURRENT_VERSION) {
* @param uri path of Uri
* @param isJob backup called from job
*/
fun createBackup(uri: Uri, flags: Int, isJob: Boolean) {
fun createBackup(uri: Uri, flags: Int, isJob: Boolean): Boolean {
// Create root object
val root = JsonObject()
@ -169,6 +169,7 @@ class BackupManager(val context: Context, version: Int = CURRENT_VERSION) {
}
context.sendLocalBroadcast(intent)
}
return true
} catch (e: Exception) {
Timber.e(e)
if (!isJob) {
@ -179,6 +180,7 @@ class BackupManager(val context: Context, version: Int = CURRENT_VERSION) {
}
context.sendLocalBroadcast(intent)
}
return false
}
}