Move DB transaction blocks to only the DB portions of restore logic

This commit is contained in:
arkon 2020-05-09 09:57:03 -04:00
parent 6b3b98cf57
commit 63f3180dff

View File

@ -230,14 +230,13 @@ class BackupRestoreService : Service() {
private fun restoreCategories(categoriesJson: JsonElement) { private fun restoreCategories(categoriesJson: JsonElement) {
db.inTransaction { db.inTransaction {
backupManager.restoreCategories(categoriesJson.asJsonArray) backupManager.restoreCategories(categoriesJson.asJsonArray)
}
restoreProgress += 1 restoreProgress += 1
showRestoreProgress(restoreProgress, restoreAmount, getString(R.string.categories)) showRestoreProgress(restoreProgress, restoreAmount, getString(R.string.categories))
} }
}
private fun restoreManga(mangaJson: JsonObject) { private fun restoreManga(mangaJson: JsonObject) {
db.inTransaction {
val manga = backupManager.parser.fromJson<MangaImpl>(mangaJson.get(MANGA)) val manga = backupManager.parser.fromJson<MangaImpl>(mangaJson.get(MANGA))
val chapters = backupManager.parser.fromJson<List<ChapterImpl>>( val chapters = backupManager.parser.fromJson<List<ChapterImpl>>(
mangaJson.get(CHAPTERS) mangaJson.get(CHAPTERS)
@ -265,7 +264,6 @@ class BackupRestoreService : Service() {
restoreProgress += 1 restoreProgress += 1
showRestoreProgress(restoreProgress, restoreAmount, manga.title) showRestoreProgress(restoreProgress, restoreAmount, manga.title)
} }
}
/** /**
* Returns a manga restore observable * Returns a manga restore observable
@ -287,6 +285,7 @@ class BackupRestoreService : Service() {
val source = backupManager.sourceManager.getOrStub(manga.source) val source = backupManager.sourceManager.getOrStub(manga.source)
val dbManga = backupManager.getMangaFromDatabase(manga) val dbManga = backupManager.getMangaFromDatabase(manga)
db.inTransaction {
if (dbManga == null) { if (dbManga == null) {
// Manga not in database // Manga not in database
restoreMangaFetch(source, manga, chapters, categories, history, tracks) restoreMangaFetch(source, manga, chapters, categories, history, tracks)
@ -297,6 +296,7 @@ class BackupRestoreService : Service() {
restoreMangaNoFetch(source, manga, chapters, categories, history, tracks) restoreMangaNoFetch(source, manga, chapters, categories, history, tracks)
} }
} }
}
/** /**
* [Observable] that fetches manga information * [Observable] that fetches manga information