Upgrade to SQLDelight 2
(cherry picked from commit 6a558ad119ff35336c2141deefc5da4b49cf4553) # Conflicts: # app/build.gradle.kts # app/src/main/java/eu/kanade/tachiyomi/AppModule.kt # data/src/main/java/tachiyomi/data/manga/MangaMapper.kt # data/src/main/java/tachiyomi/data/manga/MangaRepositoryImpl.kt # data/src/main/sqldelight/tachiyomi/data/mangas.sq
This commit is contained in:
@@ -5,8 +5,10 @@ import android.os.Build
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.sqlite.db.SupportSQLiteDatabase
|
||||
import androidx.sqlite.db.framework.FrameworkSQLiteOpenHelperFactory
|
||||
import com.squareup.sqldelight.android.AndroidSqliteDriver
|
||||
import com.squareup.sqldelight.db.SqlDriver
|
||||
import app.cash.sqldelight.adapter.primitive.FloatColumnAdapter
|
||||
import app.cash.sqldelight.adapter.primitive.IntColumnAdapter
|
||||
import app.cash.sqldelight.db.SqlDriver
|
||||
import app.cash.sqldelight.driver.android.AndroidSqliteDriver
|
||||
import eu.kanade.domain.base.BasePreferences
|
||||
import eu.kanade.domain.source.service.SourcePreferences
|
||||
import eu.kanade.domain.track.service.TrackPreferences
|
||||
@@ -42,13 +44,16 @@ import tachiyomi.core.preference.PreferenceStore
|
||||
import tachiyomi.core.provider.AndroidBackupFolderProvider
|
||||
import tachiyomi.core.provider.AndroidDownloadFolderProvider
|
||||
import tachiyomi.data.AndroidDatabaseHandler
|
||||
import tachiyomi.data.Categories
|
||||
import tachiyomi.data.Chapters
|
||||
import tachiyomi.data.Database
|
||||
import tachiyomi.data.DatabaseHandler
|
||||
import tachiyomi.data.History
|
||||
import tachiyomi.data.Manga_sync
|
||||
import tachiyomi.data.Mangas
|
||||
import tachiyomi.data.Search_metadata
|
||||
import tachiyomi.data.Search_tags
|
||||
import tachiyomi.data.Search_titles
|
||||
import tachiyomi.data.dateAdapter
|
||||
import tachiyomi.data.listOfLongsAdapter
|
||||
import tachiyomi.data.listOfStringsAdapter
|
||||
import tachiyomi.data.listOfStringsAndAdapter
|
||||
import tachiyomi.data.updateStrategyAdapter
|
||||
@@ -122,9 +127,15 @@ class AppModule(val app: Application) : InjektModule {
|
||||
addSingletonFactory {
|
||||
Database(
|
||||
driver = get(),
|
||||
chaptersAdapter = Chapters.Adapter(
|
||||
chapter_numberAdapter = FloatColumnAdapter,
|
||||
),
|
||||
historyAdapter = History.Adapter(
|
||||
last_readAdapter = dateAdapter,
|
||||
),
|
||||
manga_syncAdapter = Manga_sync.Adapter(
|
||||
scoreAdapter = FloatColumnAdapter,
|
||||
),
|
||||
mangasAdapter = Mangas.Adapter(
|
||||
genreAdapter = listOfStringsAdapter,
|
||||
update_strategyAdapter = updateStrategyAdapter,
|
||||
@@ -132,11 +143,15 @@ class AppModule(val app: Application) : InjektModule {
|
||||
filtered_scanlatorsAdapter = listOfStringsAndAdapter,
|
||||
// SY <--
|
||||
),
|
||||
// SY -->
|
||||
categoriesAdapter = Categories.Adapter(
|
||||
manga_orderAdapter = listOfLongsAdapter,
|
||||
search_metadataAdapter = Search_metadata.Adapter(
|
||||
extra_versionAdapter = IntColumnAdapter,
|
||||
),
|
||||
search_tagsAdapter = Search_tags.Adapter(
|
||||
typeAdapter = IntColumnAdapter,
|
||||
),
|
||||
search_titlesAdapter = Search_titles.Adapter(
|
||||
typeAdapter = IntColumnAdapter,
|
||||
),
|
||||
// SY <--
|
||||
)
|
||||
}
|
||||
addSingletonFactory<DatabaseHandler> { AndroidDatabaseHandler(get(), get()) }
|
||||
|
||||
@@ -333,7 +333,7 @@ class BackupManager(
|
||||
}
|
||||
if (!found) {
|
||||
// Let the db assign the id
|
||||
val id = handler.awaitOne {
|
||||
val id = handler.awaitOneExecutable {
|
||||
categoriesQueries.insert(category.name, category.order, category.flags)
|
||||
categoriesQueries.selectLastInsertedRowId()
|
||||
}
|
||||
@@ -557,7 +557,7 @@ class BackupManager(
|
||||
* @return id of [Manga], null if not found
|
||||
*/
|
||||
private suspend fun insertManga(manga: Manga): Long {
|
||||
return handler.awaitOne(true) {
|
||||
return handler.awaitOneExecutable(true) {
|
||||
mangasQueries.insert(
|
||||
source = manga.source,
|
||||
url = manga.url,
|
||||
@@ -598,11 +598,11 @@ class BackupManager(
|
||||
title = manga.title,
|
||||
status = manga.status,
|
||||
thumbnailUrl = manga.thumbnailUrl,
|
||||
favorite = manga.favorite.toLong(),
|
||||
favorite = manga.favorite,
|
||||
lastUpdate = manga.lastUpdate,
|
||||
nextUpdate = null,
|
||||
calculateInterval = null,
|
||||
initialized = manga.initialized.toLong(),
|
||||
initialized = manga.initialized,
|
||||
viewer = manga.viewerFlags,
|
||||
chapterFlags = manga.chapterFlags,
|
||||
coverLastModified = manga.coverLastModified,
|
||||
@@ -651,8 +651,8 @@ class BackupManager(
|
||||
url = null,
|
||||
name = null,
|
||||
scanlator = null,
|
||||
read = chapter.read.toLong(),
|
||||
bookmark = chapter.bookmark.toLong(),
|
||||
read = chapter.read,
|
||||
bookmark = chapter.bookmark,
|
||||
lastPageRead = chapter.lastPageRead,
|
||||
chapterNumber = null,
|
||||
sourceOrder = null,
|
||||
|
||||
Reference in New Issue
Block a user