|
|
|
@ -14,7 +14,11 @@ import org.koitharu.kotatsu.core.backup.BackupZipInput
|
|
|
|
import org.koitharu.kotatsu.core.backup.BackupZipOutput
|
|
|
|
import org.koitharu.kotatsu.core.backup.BackupZipOutput
|
|
|
|
import org.koitharu.kotatsu.core.db.MangaDatabase
|
|
|
|
import org.koitharu.kotatsu.core.db.MangaDatabase
|
|
|
|
import org.koitharu.kotatsu.core.prefs.AppSettings
|
|
|
|
import org.koitharu.kotatsu.core.prefs.AppSettings
|
|
|
|
import java.io.*
|
|
|
|
import java.io.File
|
|
|
|
|
|
|
|
import java.io.FileDescriptor
|
|
|
|
|
|
|
|
import java.io.FileInputStream
|
|
|
|
|
|
|
|
import java.io.InputStream
|
|
|
|
|
|
|
|
import java.io.OutputStream
|
|
|
|
|
|
|
|
|
|
|
|
class AppBackupAgent : BackupAgent() {
|
|
|
|
class AppBackupAgent : BackupAgent() {
|
|
|
|
|
|
|
|
|
|
|
|
@ -81,10 +85,10 @@ class AppBackupAgent : BackupAgent() {
|
|
|
|
val backup = BackupZipInput(tempFile)
|
|
|
|
val backup = BackupZipInput(tempFile)
|
|
|
|
try {
|
|
|
|
try {
|
|
|
|
runBlocking {
|
|
|
|
runBlocking {
|
|
|
|
repository.restoreHistory(backup.getEntry(BackupEntry.HISTORY))
|
|
|
|
backup.getEntry(BackupEntry.HISTORY)?.let { repository.restoreHistory(it) }
|
|
|
|
repository.restoreCategories(backup.getEntry(BackupEntry.CATEGORIES))
|
|
|
|
backup.getEntry(BackupEntry.CATEGORIES)?.let { repository.restoreCategories(it) }
|
|
|
|
repository.restoreFavourites(backup.getEntry(BackupEntry.FAVOURITES))
|
|
|
|
backup.getEntry(BackupEntry.FAVOURITES)?.let { repository.restoreFavourites(it) }
|
|
|
|
repository.restoreSettings(backup.getEntry(BackupEntry.SETTINGS))
|
|
|
|
backup.getEntry(BackupEntry.SETTINGS)?.let { repository.restoreSettings(it) }
|
|
|
|
}
|
|
|
|
}
|
|
|
|
} finally {
|
|
|
|
} finally {
|
|
|
|
backup.close()
|
|
|
|
backup.close()
|
|
|
|
|