Dedupe some code, move over read and bookmarks properly
This commit is contained in:
parent
f4200e2146
commit
d9ce86aca6
@ -54,16 +54,9 @@ import kotlin.math.max
|
|||||||
|
|
||||||
@OptIn(ExperimentalSerializationApi::class)
|
@OptIn(ExperimentalSerializationApi::class)
|
||||||
class FullBackupManager(val context: Context) : AbstractBackupManager() {
|
class FullBackupManager(val context: Context) : AbstractBackupManager() {
|
||||||
|
|
||||||
internal val databaseHelper: DatabaseHelper by injectLazy()
|
|
||||||
internal val sourceManager: SourceManager by injectLazy()
|
|
||||||
internal val trackManager: TrackManager by injectLazy()
|
|
||||||
private val preferences: PreferencesHelper by injectLazy()
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Parser
|
* Parser
|
||||||
*/
|
*/
|
||||||
|
|
||||||
val parser = ProtoBuf
|
val parser = ProtoBuf
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -458,6 +451,15 @@ class FullBackupManager(val context: Context) : AbstractBackupManager() {
|
|||||||
val dbChapter = dbChapters[pos]
|
val dbChapter = dbChapters[pos]
|
||||||
chapter.id = dbChapter.id
|
chapter.id = dbChapter.id
|
||||||
chapter.copyFrom(dbChapter)
|
chapter.copyFrom(dbChapter)
|
||||||
|
if (dbChapter.read && !chapter.read) {
|
||||||
|
chapter.read = dbChapter.read
|
||||||
|
chapter.last_page_read = dbChapter.last_page_read
|
||||||
|
} else if (chapter.last_page_read == 0 && dbChapter.last_page_read != 0) {
|
||||||
|
chapter.last_page_read = dbChapter.last_page_read
|
||||||
|
}
|
||||||
|
if (!chapter.bookmark && dbChapter.bookmark) {
|
||||||
|
chapter.bookmark = dbChapter.bookmark
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Filter the chapters that couldn't be found.
|
// Filter the chapters that couldn't be found.
|
||||||
@ -477,6 +479,15 @@ class FullBackupManager(val context: Context) : AbstractBackupManager() {
|
|||||||
val dbChapter = dbChapters[pos]
|
val dbChapter = dbChapters[pos]
|
||||||
chapter.id = dbChapter.id
|
chapter.id = dbChapter.id
|
||||||
chapter.copyFrom(dbChapter)
|
chapter.copyFrom(dbChapter)
|
||||||
|
if (dbChapter.read && !chapter.read) {
|
||||||
|
chapter.read = dbChapter.read
|
||||||
|
chapter.last_page_read = dbChapter.last_page_read
|
||||||
|
} else if (chapter.last_page_read == 0 && dbChapter.last_page_read != 0) {
|
||||||
|
chapter.last_page_read = dbChapter.last_page_read
|
||||||
|
}
|
||||||
|
if (!chapter.bookmark && dbChapter.bookmark) {
|
||||||
|
chapter.bookmark = dbChapter.bookmark
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
chapters.map { it.manga_id = manga.id }
|
chapters.map { it.manga_id = manga.id }
|
||||||
|
@ -76,12 +76,6 @@ import java.lang.RuntimeException
|
|||||||
import kotlin.math.max
|
import kotlin.math.max
|
||||||
|
|
||||||
class LegacyBackupManager(val context: Context, version: Int = CURRENT_VERSION) : AbstractBackupManager() {
|
class LegacyBackupManager(val context: Context, version: Int = CURRENT_VERSION) : AbstractBackupManager() {
|
||||||
|
|
||||||
internal val databaseHelper: DatabaseHelper by injectLazy()
|
|
||||||
internal val sourceManager: SourceManager by injectLazy()
|
|
||||||
internal val trackManager: TrackManager by injectLazy()
|
|
||||||
private val preferences: PreferencesHelper by injectLazy()
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Version of parser
|
* Version of parser
|
||||||
*/
|
*/
|
||||||
|
@ -1,7 +1,17 @@
|
|||||||
package eu.kanade.tachiyomi.data.backup.models
|
package eu.kanade.tachiyomi.data.backup.models
|
||||||
|
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
|
import eu.kanade.tachiyomi.data.database.DatabaseHelper
|
||||||
|
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||||
|
import eu.kanade.tachiyomi.data.track.TrackManager
|
||||||
|
import eu.kanade.tachiyomi.source.SourceManager
|
||||||
|
import uy.kohesive.injekt.injectLazy
|
||||||
|
|
||||||
abstract class AbstractBackupManager {
|
abstract class AbstractBackupManager {
|
||||||
|
internal val databaseHelper: DatabaseHelper by injectLazy()
|
||||||
|
internal val sourceManager: SourceManager by injectLazy()
|
||||||
|
internal val trackManager: TrackManager by injectLazy()
|
||||||
|
protected val preferences: PreferencesHelper by injectLazy()
|
||||||
|
|
||||||
abstract fun createBackup(uri: Uri, flags: Int, isJob: Boolean): String?
|
abstract fun createBackup(uri: Uri, flags: Int, isJob: Boolean): String?
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user