Update SY fetchMangaInfo and getchChapterList to use the new 1.x functions
This commit is contained in:
@@ -7,12 +7,14 @@ import eu.kanade.tachiyomi.R
|
||||
import eu.kanade.tachiyomi.data.database.DatabaseHelper
|
||||
import eu.kanade.tachiyomi.data.database.models.Chapter
|
||||
import eu.kanade.tachiyomi.data.database.models.Manga
|
||||
import eu.kanade.tachiyomi.data.database.models.toMangaInfo
|
||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||
import eu.kanade.tachiyomi.source.SourceManager
|
||||
import eu.kanade.tachiyomi.source.model.toSChapter
|
||||
import eu.kanade.tachiyomi.source.model.toSManga
|
||||
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
||||
import eu.kanade.tachiyomi.source.online.all.EHentai
|
||||
import eu.kanade.tachiyomi.util.chapter.syncChaptersWithSource
|
||||
import eu.kanade.tachiyomi.util.lang.awaitSingle
|
||||
import exh.source.getMainSource
|
||||
import exh.util.executeOnIO
|
||||
import uy.kohesive.injekt.Injekt
|
||||
@@ -131,8 +133,8 @@ class GalleryAdder {
|
||||
}
|
||||
|
||||
// Fetch and copy details
|
||||
val newManga = source.fetchMangaDetails(manga).awaitSingle()
|
||||
manga.copyFrom(newManga)
|
||||
val newManga = source.getMangaDetails(manga.toMangaInfo())
|
||||
manga.copyFrom(newManga.toSManga())
|
||||
manga.initialized = true
|
||||
|
||||
if (fav) {
|
||||
@@ -144,16 +146,15 @@ class GalleryAdder {
|
||||
|
||||
// Fetch and copy chapters
|
||||
try {
|
||||
val chapterListObs = if (source is EHentai) {
|
||||
source.fetchChapterList(manga, throttleFunc)
|
||||
val chapterList = if (source is EHentai) {
|
||||
source.getChapterList(manga.toMangaInfo(), throttleFunc)
|
||||
} else {
|
||||
source.fetchChapterList(manga)
|
||||
source.getChapterList(manga.toMangaInfo())
|
||||
}.map { it.toSChapter() }
|
||||
|
||||
if (chapterList.isNotEmpty()) {
|
||||
syncChaptersWithSource(db, chapterList, manga, source)
|
||||
}
|
||||
chapterListObs.map {
|
||||
if (it.isNotEmpty()) {
|
||||
syncChaptersWithSource(db, it, manga, source)
|
||||
} else emptyList<Chapter>() to emptyList()
|
||||
}.awaitSingle()
|
||||
} catch (e: Exception) {
|
||||
logger.w(context.getString(R.string.gallery_adder_chapter_fetch_error, manga.title), e)
|
||||
return GalleryAddEvent.Fail.Error(url, context.getString(R.string.gallery_adder_chapter_fetch_error, url))
|
||||
|
||||
@@ -4,10 +4,12 @@ import android.app.Application
|
||||
import com.elvishew.xlog.XLog
|
||||
import com.pushtorefresh.storio.sqlite.queries.RawQuery
|
||||
import eu.kanade.tachiyomi.data.database.DatabaseHelper
|
||||
import eu.kanade.tachiyomi.data.database.models.toMangaInfo
|
||||
import eu.kanade.tachiyomi.data.database.tables.MangaTable
|
||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||
import eu.kanade.tachiyomi.source.CatalogueSource
|
||||
import eu.kanade.tachiyomi.source.SourceManager
|
||||
import eu.kanade.tachiyomi.source.model.toSManga
|
||||
import eu.kanade.tachiyomi.util.lang.await
|
||||
import exh.EH_SOURCE_ID
|
||||
import exh.EXHMigrations
|
||||
@@ -90,8 +92,8 @@ object DebugFunctions {
|
||||
EXH_SOURCE_ID -> ex
|
||||
else -> return@forEach
|
||||
}
|
||||
)?.fetchMangaDetails(manga)?.map { networkManga ->
|
||||
manga.copyFrom(networkManga)
|
||||
)?.getMangaDetails(manga.toMangaInfo())?.let { networkManga ->
|
||||
manga.copyFrom(networkManga.toSManga())
|
||||
manga.initialized = true
|
||||
db.insertManga(manga).executeAsBlocking()
|
||||
}
|
||||
|
||||
@@ -11,13 +11,15 @@ import com.elvishew.xlog.XLog
|
||||
import eu.kanade.tachiyomi.data.database.DatabaseHelper
|
||||
import eu.kanade.tachiyomi.data.database.models.Chapter
|
||||
import eu.kanade.tachiyomi.data.database.models.Manga
|
||||
import eu.kanade.tachiyomi.data.database.models.toMangaInfo
|
||||
import eu.kanade.tachiyomi.data.library.LibraryUpdateNotifier
|
||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||
import eu.kanade.tachiyomi.source.SourceManager
|
||||
import eu.kanade.tachiyomi.source.model.toSChapter
|
||||
import eu.kanade.tachiyomi.source.model.toSManga
|
||||
import eu.kanade.tachiyomi.source.online.all.EHentai
|
||||
import eu.kanade.tachiyomi.util.chapter.syncChaptersWithSource
|
||||
import eu.kanade.tachiyomi.util.lang.await
|
||||
import eu.kanade.tachiyomi.util.lang.awaitSingle
|
||||
import exh.EH_SOURCE_ID
|
||||
import exh.EXH_SOURCE_ID
|
||||
import exh.debug.DebugToggles
|
||||
@@ -261,11 +263,12 @@ class EHentaiUpdateWorker : JobService(), CoroutineScope {
|
||||
?: throw GalleryNotUpdatedException(false, IllegalStateException("Missing EH-based source (${manga.source})!"))
|
||||
|
||||
try {
|
||||
val updatedManga = source.fetchMangaDetails(manga).awaitSingle()
|
||||
manga.copyFrom(updatedManga)
|
||||
val updatedManga = source.getMangaDetails(manga.toMangaInfo())
|
||||
manga.copyFrom(updatedManga.toSManga())
|
||||
db.insertManga(manga).await()
|
||||
|
||||
val newChapters = source.fetchChapterList(manga).awaitSingle()
|
||||
val newChapters = source.getChapterList(manga.toMangaInfo())
|
||||
.map { it.toSChapter() }
|
||||
|
||||
val (new, _) = syncChaptersWithSource(db, newChapters, manga, source) // Not suspending, but does block, maybe fix this?
|
||||
return new to db.getChapters(manga).await()
|
||||
|
||||
Reference in New Issue
Block a user