mirror of
https://git.mihon.tech/mihonapp/mihon
synced 2024-11-26 15:16:04 +03:00
Remove more unused StorIO code
This commit is contained in:
parent
05085fe57f
commit
2dfbfd0958
16 changed files with 8 additions and 347 deletions
|
@ -4,16 +4,12 @@ import androidx.sqlite.db.SupportSQLiteOpenHelper
|
||||||
import com.pushtorefresh.storio.sqlite.impl.DefaultStorIOSQLite
|
import com.pushtorefresh.storio.sqlite.impl.DefaultStorIOSQLite
|
||||||
import eu.kanade.tachiyomi.data.database.mappers.CategoryTypeMapping
|
import eu.kanade.tachiyomi.data.database.mappers.CategoryTypeMapping
|
||||||
import eu.kanade.tachiyomi.data.database.mappers.ChapterTypeMapping
|
import eu.kanade.tachiyomi.data.database.mappers.ChapterTypeMapping
|
||||||
import eu.kanade.tachiyomi.data.database.mappers.HistoryTypeMapping
|
|
||||||
import eu.kanade.tachiyomi.data.database.mappers.MangaCategoryTypeMapping
|
import eu.kanade.tachiyomi.data.database.mappers.MangaCategoryTypeMapping
|
||||||
import eu.kanade.tachiyomi.data.database.mappers.MangaTypeMapping
|
import eu.kanade.tachiyomi.data.database.mappers.MangaTypeMapping
|
||||||
import eu.kanade.tachiyomi.data.database.mappers.TrackTypeMapping
|
|
||||||
import eu.kanade.tachiyomi.data.database.models.Category
|
import eu.kanade.tachiyomi.data.database.models.Category
|
||||||
import eu.kanade.tachiyomi.data.database.models.Chapter
|
import eu.kanade.tachiyomi.data.database.models.Chapter
|
||||||
import eu.kanade.tachiyomi.data.database.models.History
|
|
||||||
import eu.kanade.tachiyomi.data.database.models.Manga
|
import eu.kanade.tachiyomi.data.database.models.Manga
|
||||||
import eu.kanade.tachiyomi.data.database.models.MangaCategory
|
import eu.kanade.tachiyomi.data.database.models.MangaCategory
|
||||||
import eu.kanade.tachiyomi.data.database.models.Track
|
|
||||||
import eu.kanade.tachiyomi.data.database.queries.CategoryQueries
|
import eu.kanade.tachiyomi.data.database.queries.CategoryQueries
|
||||||
import eu.kanade.tachiyomi.data.database.queries.ChapterQueries
|
import eu.kanade.tachiyomi.data.database.queries.ChapterQueries
|
||||||
import eu.kanade.tachiyomi.data.database.queries.MangaCategoryQueries
|
import eu.kanade.tachiyomi.data.database.queries.MangaCategoryQueries
|
||||||
|
@ -31,11 +27,7 @@ class DatabaseHelper(
|
||||||
.sqliteOpenHelper(openHelper)
|
.sqliteOpenHelper(openHelper)
|
||||||
.addTypeMapping(Manga::class.java, MangaTypeMapping())
|
.addTypeMapping(Manga::class.java, MangaTypeMapping())
|
||||||
.addTypeMapping(Chapter::class.java, ChapterTypeMapping())
|
.addTypeMapping(Chapter::class.java, ChapterTypeMapping())
|
||||||
.addTypeMapping(Track::class.java, TrackTypeMapping())
|
|
||||||
.addTypeMapping(Category::class.java, CategoryTypeMapping())
|
.addTypeMapping(Category::class.java, CategoryTypeMapping())
|
||||||
.addTypeMapping(MangaCategory::class.java, MangaCategoryTypeMapping())
|
.addTypeMapping(MangaCategory::class.java, MangaCategoryTypeMapping())
|
||||||
.addTypeMapping(History::class.java, HistoryTypeMapping())
|
|
||||||
.build()
|
.build()
|
||||||
|
|
||||||
inline fun inTransaction(block: () -> Unit) = db.inTransaction(block)
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,64 +0,0 @@
|
||||||
package eu.kanade.tachiyomi.data.database.mappers
|
|
||||||
|
|
||||||
import android.database.Cursor
|
|
||||||
import androidx.core.content.contentValuesOf
|
|
||||||
import com.pushtorefresh.storio.sqlite.SQLiteTypeMapping
|
|
||||||
import com.pushtorefresh.storio.sqlite.operations.delete.DefaultDeleteResolver
|
|
||||||
import com.pushtorefresh.storio.sqlite.operations.get.DefaultGetResolver
|
|
||||||
import com.pushtorefresh.storio.sqlite.operations.put.DefaultPutResolver
|
|
||||||
import com.pushtorefresh.storio.sqlite.queries.DeleteQuery
|
|
||||||
import com.pushtorefresh.storio.sqlite.queries.InsertQuery
|
|
||||||
import com.pushtorefresh.storio.sqlite.queries.UpdateQuery
|
|
||||||
import eu.kanade.tachiyomi.data.database.models.History
|
|
||||||
import eu.kanade.tachiyomi.data.database.models.HistoryImpl
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.HistoryTable.COL_CHAPTER_ID
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.HistoryTable.COL_ID
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.HistoryTable.COL_LAST_READ
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.HistoryTable.COL_TIME_READ
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.HistoryTable.TABLE
|
|
||||||
|
|
||||||
class HistoryTypeMapping : SQLiteTypeMapping<History>(
|
|
||||||
HistoryPutResolver(),
|
|
||||||
HistoryGetResolver(),
|
|
||||||
HistoryDeleteResolver(),
|
|
||||||
)
|
|
||||||
|
|
||||||
open class HistoryPutResolver : DefaultPutResolver<History>() {
|
|
||||||
|
|
||||||
override fun mapToInsertQuery(obj: History) = InsertQuery.builder()
|
|
||||||
.table(TABLE)
|
|
||||||
.build()
|
|
||||||
|
|
||||||
override fun mapToUpdateQuery(obj: History) = UpdateQuery.builder()
|
|
||||||
.table(TABLE)
|
|
||||||
.where("$COL_ID = ?")
|
|
||||||
.whereArgs(obj.id)
|
|
||||||
.build()
|
|
||||||
|
|
||||||
override fun mapToContentValues(obj: History) =
|
|
||||||
contentValuesOf(
|
|
||||||
COL_ID to obj.id,
|
|
||||||
COL_CHAPTER_ID to obj.chapter_id,
|
|
||||||
COL_LAST_READ to obj.last_read,
|
|
||||||
COL_TIME_READ to obj.time_read,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
class HistoryGetResolver : DefaultGetResolver<History>() {
|
|
||||||
|
|
||||||
override fun mapFromCursor(cursor: Cursor): History = HistoryImpl().apply {
|
|
||||||
id = cursor.getLong(cursor.getColumnIndexOrThrow(COL_ID))
|
|
||||||
chapter_id = cursor.getLong(cursor.getColumnIndexOrThrow(COL_CHAPTER_ID))
|
|
||||||
last_read = cursor.getLong(cursor.getColumnIndexOrThrow(COL_LAST_READ))
|
|
||||||
time_read = cursor.getLong(cursor.getColumnIndexOrThrow(COL_TIME_READ))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
class HistoryDeleteResolver : DefaultDeleteResolver<History>() {
|
|
||||||
|
|
||||||
override fun mapToDeleteQuery(obj: History) = DeleteQuery.builder()
|
|
||||||
.table(TABLE)
|
|
||||||
.where("$COL_ID = ?")
|
|
||||||
.whereArgs(obj.id)
|
|
||||||
.build()
|
|
||||||
}
|
|
|
@ -1,91 +0,0 @@
|
||||||
package eu.kanade.tachiyomi.data.database.mappers
|
|
||||||
|
|
||||||
import android.database.Cursor
|
|
||||||
import androidx.core.content.contentValuesOf
|
|
||||||
import com.pushtorefresh.storio.sqlite.SQLiteTypeMapping
|
|
||||||
import com.pushtorefresh.storio.sqlite.operations.delete.DefaultDeleteResolver
|
|
||||||
import com.pushtorefresh.storio.sqlite.operations.get.DefaultGetResolver
|
|
||||||
import com.pushtorefresh.storio.sqlite.operations.put.DefaultPutResolver
|
|
||||||
import com.pushtorefresh.storio.sqlite.queries.DeleteQuery
|
|
||||||
import com.pushtorefresh.storio.sqlite.queries.InsertQuery
|
|
||||||
import com.pushtorefresh.storio.sqlite.queries.UpdateQuery
|
|
||||||
import eu.kanade.tachiyomi.data.database.models.Track
|
|
||||||
import eu.kanade.tachiyomi.data.database.models.TrackImpl
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.COL_FINISH_DATE
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.COL_ID
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.COL_LAST_CHAPTER_READ
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.COL_LIBRARY_ID
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.COL_MANGA_ID
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.COL_MEDIA_ID
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.COL_SCORE
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.COL_START_DATE
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.COL_STATUS
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.COL_SYNC_ID
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.COL_TITLE
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.COL_TOTAL_CHAPTERS
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.COL_TRACKING_URL
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.TrackTable.TABLE
|
|
||||||
|
|
||||||
class TrackTypeMapping : SQLiteTypeMapping<Track>(
|
|
||||||
TrackPutResolver(),
|
|
||||||
TrackGetResolver(),
|
|
||||||
TrackDeleteResolver(),
|
|
||||||
)
|
|
||||||
|
|
||||||
class TrackPutResolver : DefaultPutResolver<Track>() {
|
|
||||||
|
|
||||||
override fun mapToInsertQuery(obj: Track) = InsertQuery.builder()
|
|
||||||
.table(TABLE)
|
|
||||||
.build()
|
|
||||||
|
|
||||||
override fun mapToUpdateQuery(obj: Track) = UpdateQuery.builder()
|
|
||||||
.table(TABLE)
|
|
||||||
.where("$COL_ID = ?")
|
|
||||||
.whereArgs(obj.id)
|
|
||||||
.build()
|
|
||||||
|
|
||||||
override fun mapToContentValues(obj: Track) =
|
|
||||||
contentValuesOf(
|
|
||||||
COL_ID to obj.id,
|
|
||||||
COL_MANGA_ID to obj.manga_id,
|
|
||||||
COL_SYNC_ID to obj.sync_id,
|
|
||||||
COL_MEDIA_ID to obj.media_id,
|
|
||||||
COL_LIBRARY_ID to obj.library_id,
|
|
||||||
COL_TITLE to obj.title,
|
|
||||||
COL_LAST_CHAPTER_READ to obj.last_chapter_read,
|
|
||||||
COL_TOTAL_CHAPTERS to obj.total_chapters,
|
|
||||||
COL_STATUS to obj.status,
|
|
||||||
COL_TRACKING_URL to obj.tracking_url,
|
|
||||||
COL_SCORE to obj.score,
|
|
||||||
COL_START_DATE to obj.started_reading_date,
|
|
||||||
COL_FINISH_DATE to obj.finished_reading_date,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
class TrackGetResolver : DefaultGetResolver<Track>() {
|
|
||||||
|
|
||||||
override fun mapFromCursor(cursor: Cursor): Track = TrackImpl().apply {
|
|
||||||
id = cursor.getLong(cursor.getColumnIndexOrThrow(COL_ID))
|
|
||||||
manga_id = cursor.getLong(cursor.getColumnIndexOrThrow(COL_MANGA_ID))
|
|
||||||
sync_id = cursor.getInt(cursor.getColumnIndexOrThrow(COL_SYNC_ID))
|
|
||||||
media_id = cursor.getLong(cursor.getColumnIndexOrThrow(COL_MEDIA_ID))
|
|
||||||
library_id = cursor.getLong(cursor.getColumnIndexOrThrow(COL_LIBRARY_ID))
|
|
||||||
title = cursor.getString(cursor.getColumnIndexOrThrow(COL_TITLE))
|
|
||||||
last_chapter_read = cursor.getFloat(cursor.getColumnIndexOrThrow(COL_LAST_CHAPTER_READ))
|
|
||||||
total_chapters = cursor.getInt(cursor.getColumnIndexOrThrow(COL_TOTAL_CHAPTERS))
|
|
||||||
status = cursor.getInt(cursor.getColumnIndexOrThrow(COL_STATUS))
|
|
||||||
score = cursor.getFloat(cursor.getColumnIndexOrThrow(COL_SCORE))
|
|
||||||
tracking_url = cursor.getString(cursor.getColumnIndexOrThrow(COL_TRACKING_URL))
|
|
||||||
started_reading_date = cursor.getLong(cursor.getColumnIndexOrThrow(COL_START_DATE))
|
|
||||||
finished_reading_date = cursor.getLong(cursor.getColumnIndexOrThrow(COL_FINISH_DATE))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
class TrackDeleteResolver : DefaultDeleteResolver<Track>() {
|
|
||||||
|
|
||||||
override fun mapToDeleteQuery(obj: Track) = DeleteQuery.builder()
|
|
||||||
.table(TABLE)
|
|
||||||
.where("$COL_ID = ?")
|
|
||||||
.whereArgs(obj.id)
|
|
||||||
.build()
|
|
||||||
}
|
|
|
@ -1,42 +0,0 @@
|
||||||
package eu.kanade.tachiyomi.data.database.models
|
|
||||||
|
|
||||||
import java.io.Serializable
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Object containing the history statistics of a chapter
|
|
||||||
*/
|
|
||||||
interface History : Serializable {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Id of history object.
|
|
||||||
*/
|
|
||||||
var id: Long?
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Chapter id of history object.
|
|
||||||
*/
|
|
||||||
var chapter_id: Long
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Last time chapter was read in time long format
|
|
||||||
*/
|
|
||||||
var last_read: Long
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Total time chapter was read
|
|
||||||
*/
|
|
||||||
var time_read: Long
|
|
||||||
|
|
||||||
companion object {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* History constructor
|
|
||||||
*
|
|
||||||
* @param chapter chapter object
|
|
||||||
* @return history object
|
|
||||||
*/
|
|
||||||
fun create(chapter: Chapter): History = HistoryImpl().apply {
|
|
||||||
this.chapter_id = chapter.id!!
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,27 +0,0 @@
|
||||||
package eu.kanade.tachiyomi.data.database.models
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Object containing the history statistics of a chapter
|
|
||||||
*/
|
|
||||||
class HistoryImpl : History {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Id of history object.
|
|
||||||
*/
|
|
||||||
override var id: Long? = null
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Chapter id of history object.
|
|
||||||
*/
|
|
||||||
override var chapter_id: Long = 0
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Last time chapter was read in time long format
|
|
||||||
*/
|
|
||||||
override var last_read: Long = 0
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Total time chapter was read
|
|
||||||
*/
|
|
||||||
override var time_read: Long = 0
|
|
||||||
}
|
|
|
@ -1,7 +1,5 @@
|
||||||
package eu.kanade.tachiyomi.data.database.models
|
package eu.kanade.tachiyomi.data.database.models
|
||||||
|
|
||||||
import data.GetCategories
|
|
||||||
|
|
||||||
class MangaCategory {
|
class MangaCategory {
|
||||||
|
|
||||||
var id: Long? = null
|
var id: Long? = null
|
||||||
|
@ -18,12 +16,5 @@ class MangaCategory {
|
||||||
mc.category_id = category.id!!
|
mc.category_id = category.id!!
|
||||||
return mc
|
return mc
|
||||||
}
|
}
|
||||||
|
|
||||||
fun create(manga: Manga, category: GetCategories): MangaCategory {
|
|
||||||
val mc = MangaCategory()
|
|
||||||
mc.manga_id = manga.id!!
|
|
||||||
mc.category_id = category.id.toInt()
|
|
||||||
return mc
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
package eu.kanade.tachiyomi.data.database.models
|
|
||||||
|
|
||||||
class MangaChapter(val manga: Manga, val chapter: Chapter)
|
|
|
@ -4,7 +4,6 @@ import com.pushtorefresh.storio.sqlite.queries.Query
|
||||||
import com.pushtorefresh.storio.sqlite.queries.RawQuery
|
import com.pushtorefresh.storio.sqlite.queries.RawQuery
|
||||||
import eu.kanade.tachiyomi.data.database.DbProvider
|
import eu.kanade.tachiyomi.data.database.DbProvider
|
||||||
import eu.kanade.tachiyomi.data.database.models.Category
|
import eu.kanade.tachiyomi.data.database.models.Category
|
||||||
import eu.kanade.tachiyomi.data.database.models.Manga
|
|
||||||
import eu.kanade.tachiyomi.data.database.tables.CategoryTable
|
import eu.kanade.tachiyomi.data.database.tables.CategoryTable
|
||||||
|
|
||||||
interface CategoryQueries : DbProvider {
|
interface CategoryQueries : DbProvider {
|
||||||
|
@ -19,12 +18,12 @@ interface CategoryQueries : DbProvider {
|
||||||
)
|
)
|
||||||
.prepare()
|
.prepare()
|
||||||
|
|
||||||
fun getCategoriesForManga(manga: Manga) = db.get()
|
fun getCategoriesForManga(mangaId: Long) = db.get()
|
||||||
.listOfObjects(Category::class.java)
|
.listOfObjects(Category::class.java)
|
||||||
.withQuery(
|
.withQuery(
|
||||||
RawQuery.builder()
|
RawQuery.builder()
|
||||||
.query(getCategoriesForMangaQuery())
|
.query(getCategoriesForMangaQuery())
|
||||||
.args(manga.id)
|
.args(mangaId)
|
||||||
.build(),
|
.build(),
|
||||||
)
|
)
|
||||||
.prepare()
|
.prepare()
|
||||||
|
|
|
@ -3,19 +3,18 @@ package eu.kanade.tachiyomi.data.database.queries
|
||||||
import com.pushtorefresh.storio.sqlite.queries.Query
|
import com.pushtorefresh.storio.sqlite.queries.Query
|
||||||
import eu.kanade.tachiyomi.data.database.DbProvider
|
import eu.kanade.tachiyomi.data.database.DbProvider
|
||||||
import eu.kanade.tachiyomi.data.database.models.Chapter
|
import eu.kanade.tachiyomi.data.database.models.Chapter
|
||||||
import eu.kanade.tachiyomi.data.database.models.Manga
|
|
||||||
import eu.kanade.tachiyomi.data.database.resolvers.ChapterProgressPutResolver
|
import eu.kanade.tachiyomi.data.database.resolvers.ChapterProgressPutResolver
|
||||||
import eu.kanade.tachiyomi.data.database.tables.ChapterTable
|
import eu.kanade.tachiyomi.data.database.tables.ChapterTable
|
||||||
|
|
||||||
interface ChapterQueries : DbProvider {
|
interface ChapterQueries : DbProvider {
|
||||||
|
|
||||||
fun getChapters(manga: Manga) = db.get()
|
fun getChapters(mangaId: Long) = db.get()
|
||||||
.listOfObjects(Chapter::class.java)
|
.listOfObjects(Chapter::class.java)
|
||||||
.withQuery(
|
.withQuery(
|
||||||
Query.builder()
|
Query.builder()
|
||||||
.table(ChapterTable.TABLE)
|
.table(ChapterTable.TABLE)
|
||||||
.where("${ChapterTable.COL_MANGA_ID} = ?")
|
.where("${ChapterTable.COL_MANGA_ID} = ?")
|
||||||
.whereArgs(manga.id)
|
.whereArgs(mangaId)
|
||||||
.build(),
|
.build(),
|
||||||
)
|
)
|
||||||
.prepare()
|
.prepare()
|
||||||
|
@ -46,9 +45,4 @@ interface ChapterQueries : DbProvider {
|
||||||
.`object`(chapter)
|
.`object`(chapter)
|
||||||
.withPutResolver(ChapterProgressPutResolver())
|
.withPutResolver(ChapterProgressPutResolver())
|
||||||
.prepare()
|
.prepare()
|
||||||
|
|
||||||
fun updateChaptersProgress(chapters: List<Chapter>) = db.put()
|
|
||||||
.objects(chapters)
|
|
||||||
.withPutResolver(ChapterProgressPutResolver())
|
|
||||||
.prepare()
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,27 +0,0 @@
|
||||||
package eu.kanade.tachiyomi.data.database.resolvers
|
|
||||||
|
|
||||||
import android.database.Cursor
|
|
||||||
import com.pushtorefresh.storio.sqlite.operations.get.DefaultGetResolver
|
|
||||||
import eu.kanade.tachiyomi.data.database.mappers.ChapterGetResolver
|
|
||||||
import eu.kanade.tachiyomi.data.database.mappers.MangaGetResolver
|
|
||||||
import eu.kanade.tachiyomi.data.database.models.MangaChapter
|
|
||||||
|
|
||||||
class MangaChapterGetResolver : DefaultGetResolver<MangaChapter>() {
|
|
||||||
|
|
||||||
companion object {
|
|
||||||
val INSTANCE = MangaChapterGetResolver()
|
|
||||||
}
|
|
||||||
|
|
||||||
private val mangaGetResolver = MangaGetResolver()
|
|
||||||
|
|
||||||
private val chapterGetResolver = ChapterGetResolver()
|
|
||||||
|
|
||||||
override fun mapFromCursor(cursor: Cursor): MangaChapter {
|
|
||||||
val manga = mangaGetResolver.mapFromCursor(cursor)
|
|
||||||
val chapter = chapterGetResolver.mapFromCursor(cursor)
|
|
||||||
manga.id = chapter.manga_id
|
|
||||||
manga.url = cursor.getString(cursor.getColumnIndexOrThrow("mangaUrl"))
|
|
||||||
|
|
||||||
return MangaChapter(manga, chapter)
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,29 +0,0 @@
|
||||||
package eu.kanade.tachiyomi.data.database.tables
|
|
||||||
|
|
||||||
object HistoryTable {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Table name
|
|
||||||
*/
|
|
||||||
const val TABLE = "history"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Id column name
|
|
||||||
*/
|
|
||||||
const val COL_ID = "_id"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Chapter id column name
|
|
||||||
*/
|
|
||||||
const val COL_CHAPTER_ID = "chapter_id"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Last read column name
|
|
||||||
*/
|
|
||||||
const val COL_LAST_READ = "last_read"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Time read column name
|
|
||||||
*/
|
|
||||||
const val COL_TIME_READ = "time_read"
|
|
||||||
}
|
|
|
@ -1,32 +0,0 @@
|
||||||
package eu.kanade.tachiyomi.data.database.tables
|
|
||||||
|
|
||||||
object TrackTable {
|
|
||||||
|
|
||||||
const val TABLE = "manga_sync"
|
|
||||||
|
|
||||||
const val COL_ID = "_id"
|
|
||||||
|
|
||||||
const val COL_MANGA_ID = "manga_id"
|
|
||||||
|
|
||||||
const val COL_SYNC_ID = "sync_id"
|
|
||||||
|
|
||||||
const val COL_MEDIA_ID = "remote_id"
|
|
||||||
|
|
||||||
const val COL_LIBRARY_ID = "library_id"
|
|
||||||
|
|
||||||
const val COL_TITLE = "title"
|
|
||||||
|
|
||||||
const val COL_LAST_CHAPTER_READ = "last_chapter_read"
|
|
||||||
|
|
||||||
const val COL_STATUS = "status"
|
|
||||||
|
|
||||||
const val COL_SCORE = "score"
|
|
||||||
|
|
||||||
const val COL_TOTAL_CHAPTERS = "total_chapters"
|
|
||||||
|
|
||||||
const val COL_TRACKING_URL = "remote_url"
|
|
||||||
|
|
||||||
const val COL_START_DATE = "start_date"
|
|
||||||
|
|
||||||
const val COL_FINISH_DATE = "finish_date"
|
|
||||||
}
|
|
|
@ -362,7 +362,7 @@ class DownloadManager(
|
||||||
private fun getChaptersToDelete(chapters: List<Chapter>, manga: Manga): List<Chapter> {
|
private fun getChaptersToDelete(chapters: List<Chapter>, manga: Manga): List<Chapter> {
|
||||||
// Retrieve the categories that are set to exclude from being deleted on read
|
// Retrieve the categories that are set to exclude from being deleted on read
|
||||||
val categoriesToExclude = preferences.removeExcludeCategories().get().map(String::toInt)
|
val categoriesToExclude = preferences.removeExcludeCategories().get().map(String::toInt)
|
||||||
val categoriesForManga = db.getCategoriesForManga(manga).executeAsBlocking()
|
val categoriesForManga = db.getCategoriesForManga(manga.id!!).executeAsBlocking()
|
||||||
.mapNotNull { it.id }
|
.mapNotNull { it.id }
|
||||||
.takeUnless { it.isEmpty() }
|
.takeUnless { it.isEmpty() }
|
||||||
?: listOf(0)
|
?: listOf(0)
|
||||||
|
|
|
@ -373,7 +373,7 @@ open class BrowseSourcePresenter(
|
||||||
* @return Array of category ids the manga is in, if none returns default id
|
* @return Array of category ids the manga is in, if none returns default id
|
||||||
*/
|
*/
|
||||||
fun getMangaCategoryIds(manga: Manga): Array<Long?> {
|
fun getMangaCategoryIds(manga: Manga): Array<Long?> {
|
||||||
val categories = db.getCategoriesForManga(manga).executeAsBlocking()
|
val categories = db.getCategoriesForManga(manga.id!!).executeAsBlocking()
|
||||||
return categories.mapNotNull { it?.id?.toLong() }.toTypedArray()
|
return categories.mapNotNull { it?.id?.toLong() }.toTypedArray()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -118,7 +118,7 @@ class ReaderPresenter(
|
||||||
*/
|
*/
|
||||||
private val chapterList by lazy {
|
private val chapterList by lazy {
|
||||||
val manga = manga!!
|
val manga = manga!!
|
||||||
val dbChapters = db.getChapters(manga).executeAsBlocking()
|
val dbChapters = db.getChapters(manga.id!!).executeAsBlocking()
|
||||||
|
|
||||||
val selectedChapter = dbChapters.find { it.id == chapterId }
|
val selectedChapter = dbChapters.find { it.id == chapterId }
|
||||||
?: error("Requested chapter of id $chapterId not found in chapter list")
|
?: error("Requested chapter of id $chapterId not found in chapter list")
|
||||||
|
|
|
@ -75,7 +75,7 @@ fun DomainManga.shouldDownloadNewChapters(db: DatabaseHelper, prefs: Preferences
|
||||||
|
|
||||||
// Get all categories, else default category (0)
|
// Get all categories, else default category (0)
|
||||||
val categoriesForManga =
|
val categoriesForManga =
|
||||||
db.getCategoriesForManga(toDbManga()).executeAsBlocking()
|
db.getCategoriesForManga(id).executeAsBlocking()
|
||||||
.mapNotNull { it.id }
|
.mapNotNull { it.id }
|
||||||
.takeUnless { it.isEmpty() } ?: listOf(0)
|
.takeUnless { it.isEmpty() } ?: listOf(0)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue