mirror of
https://github.com/Suwayomi/Suwayomi-Server.git
synced 2026-06-30 17:34:39 -05:00
Minor fixes
This commit is contained in:
@@ -8,6 +8,8 @@ package suwayomi.tachidesk.manga.impl.backup.proto.handlers
|
|||||||
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
||||||
|
|
||||||
import eu.kanade.tachiyomi.source.model.UpdateStrategy
|
import eu.kanade.tachiyomi.source.model.UpdateStrategy
|
||||||
|
import kotlinx.serialization.json.Json
|
||||||
|
import kotlinx.serialization.json.JsonObject
|
||||||
import org.jetbrains.exposed.v1.core.ResultRow
|
import org.jetbrains.exposed.v1.core.ResultRow
|
||||||
import org.jetbrains.exposed.v1.core.SortOrder
|
import org.jetbrains.exposed.v1.core.SortOrder
|
||||||
import org.jetbrains.exposed.v1.core.and
|
import org.jetbrains.exposed.v1.core.and
|
||||||
@@ -76,6 +78,8 @@ object BackupMangaHandler {
|
|||||||
updateStrategy = UpdateStrategy.valueOf(mangaRow[MangaTable.updateStrategy]),
|
updateStrategy = UpdateStrategy.valueOf(mangaRow[MangaTable.updateStrategy]),
|
||||||
lastModifiedAt = mangaRow[MangaTable.lastModifiedAt],
|
lastModifiedAt = mangaRow[MangaTable.lastModifiedAt],
|
||||||
version = mangaRow[MangaTable.version],
|
version = mangaRow[MangaTable.version],
|
||||||
|
initialized = mangaRow[MangaTable.initialized],
|
||||||
|
memo = Json.encodeToString(mangaRow[MangaTable.memo]).encodeToByteArray()
|
||||||
)
|
)
|
||||||
|
|
||||||
val mangaId = mangaRow[MangaTable.id].value
|
val mangaId = mangaRow[MangaTable.id].value
|
||||||
@@ -238,6 +242,7 @@ object BackupMangaHandler {
|
|||||||
|
|
||||||
it[lastModifiedAt] = manga.lastModifiedAt
|
it[lastModifiedAt] = manga.lastModifiedAt
|
||||||
it[version] = manga.version
|
it[version] = manga.version
|
||||||
|
it[memo] = Json.decodeFromString<JsonObject>(manga.memo.decodeToString())
|
||||||
}.value
|
}.value
|
||||||
} else {
|
} else {
|
||||||
val dbMangaId = dbManga[MangaTable.id].value
|
val dbMangaId = dbManga[MangaTable.id].value
|
||||||
@@ -260,6 +265,7 @@ object BackupMangaHandler {
|
|||||||
|
|
||||||
it[lastModifiedAt] = manga.lastModifiedAt
|
it[lastModifiedAt] = manga.lastModifiedAt
|
||||||
it[version] = manga.version
|
it[version] = manga.version
|
||||||
|
it[memo] = Json.decodeFromString<JsonObject>(manga.memo.decodeToString())
|
||||||
}
|
}
|
||||||
|
|
||||||
dbMangaId
|
dbMangaId
|
||||||
@@ -351,6 +357,7 @@ object BackupMangaHandler {
|
|||||||
|
|
||||||
this[ChapterTable.lastModifiedAt] = chapter.lastModifiedAt
|
this[ChapterTable.lastModifiedAt] = chapter.lastModifiedAt
|
||||||
this[ChapterTable.version] = chapter.version
|
this[ChapterTable.version] = chapter.version
|
||||||
|
this[ChapterTable.memo] = Json.decodeFromString<JsonObject>(chapter.memo.decodeToString())
|
||||||
}.map { it[ChapterTable.id].value }
|
}.map { it[ChapterTable.id].value }
|
||||||
} else {
|
} else {
|
||||||
emptyList()
|
emptyList()
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package suwayomi.tachidesk.manga.impl.backup.proto.models
|
|||||||
|
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
import kotlinx.serialization.protobuf.ProtoNumber
|
import kotlinx.serialization.protobuf.ProtoNumber
|
||||||
|
import suwayomi.tachidesk.manga.impl.util.lang.JsonObjectEmptyBytes
|
||||||
|
|
||||||
@Serializable
|
@Serializable
|
||||||
data class BackupChapter(
|
data class BackupChapter(
|
||||||
@@ -22,6 +23,7 @@ data class BackupChapter(
|
|||||||
// syncyomi
|
// syncyomi
|
||||||
@ProtoNumber(11) var lastModifiedAt: Long = 0,
|
@ProtoNumber(11) var lastModifiedAt: Long = 0,
|
||||||
@ProtoNumber(12) var version: Long = 0,
|
@ProtoNumber(12) var version: Long = 0,
|
||||||
|
@ProtoNumber(13) var memo: ByteArray = JsonObjectEmptyBytes,
|
||||||
// suwayomi
|
// suwayomi
|
||||||
@ProtoNumber(9000) var meta: Map<String, String> = emptyMap(),
|
@ProtoNumber(9000) var meta: Map<String, String> = emptyMap(),
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package suwayomi.tachidesk.manga.impl.backup.proto.models
|
|||||||
import eu.kanade.tachiyomi.source.model.UpdateStrategy
|
import eu.kanade.tachiyomi.source.model.UpdateStrategy
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
import kotlinx.serialization.protobuf.ProtoNumber
|
import kotlinx.serialization.protobuf.ProtoNumber
|
||||||
|
import suwayomi.tachidesk.manga.impl.util.lang.JsonObjectEmptyBytes
|
||||||
|
|
||||||
@Serializable
|
@Serializable
|
||||||
data class BackupManga(
|
data class BackupManga(
|
||||||
@@ -37,6 +38,8 @@ data class BackupManga(
|
|||||||
// syncyomi
|
// syncyomi
|
||||||
@ProtoNumber(106) var lastModifiedAt: Long = 0,
|
@ProtoNumber(106) var lastModifiedAt: Long = 0,
|
||||||
@ProtoNumber(109) var version: Long = 0,
|
@ProtoNumber(109) var version: Long = 0,
|
||||||
|
@ProtoNumber(111) var initialized: Boolean = false,
|
||||||
|
@ProtoNumber(13) var memo: ByteArray = JsonObjectEmptyBytes,
|
||||||
// suwayomi
|
// suwayomi
|
||||||
@ProtoNumber(9000) var meta: Map<String, String> = emptyMap(),
|
@ProtoNumber(9000) var meta: Map<String, String> = emptyMap(),
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -0,0 +1,10 @@
|
|||||||
|
package suwayomi.tachidesk.manga.impl.util.lang
|
||||||
|
|
||||||
|
import kotlinx.serialization.json.JsonObject
|
||||||
|
|
||||||
|
val JsonObjectEmpty = JsonObject(emptyMap())
|
||||||
|
|
||||||
|
val JsonObjectEmptyBytes = byteArrayOf(0x7B, 0x7D)
|
||||||
|
|
||||||
|
val JsonObject.Companion.EMPTY: JsonObject
|
||||||
|
inline get() = JsonObjectEmpty
|
||||||
@@ -7,6 +7,7 @@ import org.jetbrains.exposed.v1.core.eq
|
|||||||
import org.jetbrains.exposed.v1.jdbc.selectAll
|
import org.jetbrains.exposed.v1.jdbc.selectAll
|
||||||
import org.jetbrains.exposed.v1.jdbc.transactions.transaction
|
import org.jetbrains.exposed.v1.jdbc.transactions.transaction
|
||||||
import suwayomi.tachidesk.manga.impl.Chapter.getChapterMetaMap
|
import suwayomi.tachidesk.manga.impl.Chapter.getChapterMetaMap
|
||||||
|
import suwayomi.tachidesk.manga.impl.util.lang.EMPTY
|
||||||
import suwayomi.tachidesk.manga.model.table.ChapterTable
|
import suwayomi.tachidesk.manga.model.table.ChapterTable
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -46,7 +47,7 @@ data class ChapterDataClass(
|
|||||||
val lastModifiedAt: Long = 0,
|
val lastModifiedAt: Long = 0,
|
||||||
val version: Long = 0,
|
val version: Long = 0,
|
||||||
@JsonIgnore
|
@JsonIgnore
|
||||||
val memo: JsonObject = JsonObject(emptyMap()),
|
val memo: JsonObject = JsonObject.EMPTY,
|
||||||
) {
|
) {
|
||||||
companion object {
|
companion object {
|
||||||
fun fromSChapter(
|
fun fromSChapter(
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore
|
|||||||
import eu.kanade.tachiyomi.source.model.UpdateStrategy
|
import eu.kanade.tachiyomi.source.model.UpdateStrategy
|
||||||
import kotlinx.serialization.json.JsonObject
|
import kotlinx.serialization.json.JsonObject
|
||||||
import suwayomi.tachidesk.manga.impl.Manga.getMangaMetaMap
|
import suwayomi.tachidesk.manga.impl.Manga.getMangaMetaMap
|
||||||
|
import suwayomi.tachidesk.manga.impl.util.lang.EMPTY
|
||||||
import suwayomi.tachidesk.manga.impl.util.lang.trimAll
|
import suwayomi.tachidesk.manga.impl.util.lang.trimAll
|
||||||
import suwayomi.tachidesk.manga.model.table.MangaStatus
|
import suwayomi.tachidesk.manga.model.table.MangaStatus
|
||||||
import java.time.Instant
|
import java.time.Instant
|
||||||
@@ -47,7 +48,7 @@ data class MangaDataClass(
|
|||||||
val lastModifiedAt: Long = 0,
|
val lastModifiedAt: Long = 0,
|
||||||
val version: Long = 0,
|
val version: Long = 0,
|
||||||
@JsonIgnore
|
@JsonIgnore
|
||||||
val memo: JsonObject = JsonObject(emptyMap()),
|
val memo: JsonObject = JsonObject.EMPTY,
|
||||||
) {
|
) {
|
||||||
override fun toString(): String = "\"$title\" (id= $id) (sourceId= $sourceId)"
|
override fun toString(): String = "\"$title\" (id= $id) (sourceId= $sourceId)"
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ import de.neonew.exposed.migrations.helpers.SQLMigration
|
|||||||
class M0057_AddMangaChapterMemoFields : SQLMigration() {
|
class M0057_AddMangaChapterMemoFields : SQLMigration() {
|
||||||
override val sql =
|
override val sql =
|
||||||
"""
|
"""
|
||||||
ALTER TABLE MANGA ADD COLUMN memo JSON DEFAULT '{}';
|
ALTER TABLE manga ADD COLUMN memo JSON DEFAULT '{}';
|
||||||
ALTER TABLE CHAPTER ADD COLUMN memo JSON DEFAULT '{}';
|
ALTER TABLE chapter ADD COLUMN memo JSON DEFAULT '{}';
|
||||||
""".trimIndent()
|
""".trimIndent()
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user