Replace usages of fetchChapterList with 1.x getChapterList API
(cherry picked from commit 54dc01253d419079eaec61333d4c6f4deb5a58f8) # Conflicts: # app/src/main/java/eu/kanade/tachiyomi/data/backup/AbstractBackupManager.kt # app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt # app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt # app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
This commit is contained in:
parent
423983d41a
commit
23ac4b271c
@ -5,12 +5,15 @@ import android.net.Uri
|
|||||||
import eu.kanade.tachiyomi.data.database.DatabaseHelper
|
import eu.kanade.tachiyomi.data.database.DatabaseHelper
|
||||||
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.models.Manga
|
||||||
|
import eu.kanade.tachiyomi.data.database.models.toMangaInfo
|
||||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||||
import eu.kanade.tachiyomi.data.track.TrackManager
|
import eu.kanade.tachiyomi.data.track.TrackManager
|
||||||
import eu.kanade.tachiyomi.source.Source
|
import eu.kanade.tachiyomi.source.Source
|
||||||
import eu.kanade.tachiyomi.source.SourceManager
|
import eu.kanade.tachiyomi.source.SourceManager
|
||||||
|
import eu.kanade.tachiyomi.source.model.toSChapter
|
||||||
import eu.kanade.tachiyomi.source.online.all.EHentai
|
import eu.kanade.tachiyomi.source.online.all.EHentai
|
||||||
import eu.kanade.tachiyomi.util.chapter.syncChaptersWithSource
|
import eu.kanade.tachiyomi.util.chapter.syncChaptersWithSource
|
||||||
|
import eu.kanade.tachiyomi.util.lang.runAsObservable
|
||||||
import exh.eh.EHentaiThrottleManager
|
import exh.eh.EHentaiThrottleManager
|
||||||
import rx.Observable
|
import rx.Observable
|
||||||
import uy.kohesive.injekt.injectLazy
|
import uy.kohesive.injekt.injectLazy
|
||||||
@ -41,13 +44,15 @@ abstract class AbstractBackupManager(protected val context: Context) {
|
|||||||
* @return [Observable] that contains manga
|
* @return [Observable] that contains manga
|
||||||
*/
|
*/
|
||||||
internal open fun restoreChapterFetchObservable(source: Source, manga: Manga, chapters: List<Chapter>, throttleManager: EHentaiThrottleManager): Observable<Pair<List<Chapter>, List<Chapter>>> {
|
internal open fun restoreChapterFetchObservable(source: Source, manga: Manga, chapters: List<Chapter>, throttleManager: EHentaiThrottleManager): Observable<Pair<List<Chapter>, List<Chapter>>> {
|
||||||
return (
|
return runAsObservable({
|
||||||
if (source is EHentai) {
|
if (source is EHentai) {
|
||||||
source.fetchChapterList(manga, throttleManager::throttle)
|
source.getChapterList(manga.toMangaInfo(), throttleManager::throttle)
|
||||||
|
.map { it.toSChapter() }
|
||||||
} else {
|
} else {
|
||||||
source.fetchChapterList(manga)
|
source.getChapterList(manga.toMangaInfo())
|
||||||
|
.map { it.toSChapter() }
|
||||||
}
|
}
|
||||||
).map {
|
}).map {
|
||||||
syncChaptersWithSource(databaseHelper, it, manga, source)
|
syncChaptersWithSource(databaseHelper, it, manga, source)
|
||||||
}
|
}
|
||||||
.doOnNext { (first) ->
|
.doOnNext { (first) ->
|
||||||
|
@ -246,6 +246,7 @@ class FullBackupManager(context: Context) : AbstractBackupManager(context) {
|
|||||||
*/
|
*/
|
||||||
fun restoreMangaFetchObservable(source: Source?, manga: Manga, online: Boolean): Observable<Manga> {
|
fun restoreMangaFetchObservable(source: Source?, manga: Manga, online: Boolean): Observable<Manga> {
|
||||||
return if (online && source != null /* SY --> */ && source !is MergedSource /* SY <-- */) {
|
return if (online && source != null /* SY --> */ && source !is MergedSource /* SY <-- */) {
|
||||||
|
runAsObservable({
|
||||||
val networkManga = source.getMangaDetails(manga.toMangaInfo())
|
val networkManga = source.getMangaDetails(manga.toMangaInfo())
|
||||||
manga.copyFrom(networkManga.toSManga())
|
manga.copyFrom(networkManga.toSManga())
|
||||||
manga.favorite = manga.favorite
|
manga.favorite = manga.favorite
|
||||||
|
@ -25,6 +25,7 @@ import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
|||||||
import eu.kanade.tachiyomi.data.track.TrackManager
|
import eu.kanade.tachiyomi.data.track.TrackManager
|
||||||
import eu.kanade.tachiyomi.source.SourceManager
|
import eu.kanade.tachiyomi.source.SourceManager
|
||||||
import eu.kanade.tachiyomi.source.model.SManga
|
import eu.kanade.tachiyomi.source.model.SManga
|
||||||
|
import eu.kanade.tachiyomi.source.model.toSChapter
|
||||||
import eu.kanade.tachiyomi.source.model.toSManga
|
import eu.kanade.tachiyomi.source.model.toSManga
|
||||||
import eu.kanade.tachiyomi.source.online.all.MangaDex
|
import eu.kanade.tachiyomi.source.online.all.MangaDex
|
||||||
import eu.kanade.tachiyomi.source.online.all.MergedSource
|
import eu.kanade.tachiyomi.source.online.all.MergedSource
|
||||||
@ -456,7 +457,10 @@ class LibraryUpdateService(
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
/* SY --> */ if (source is MergedSource) runAsObservable({ source.fetchChaptersAndSync(manga, false) })
|
/* SY --> */ if (source is MergedSource) runAsObservable({ source.fetchChaptersAndSync(manga, false) })
|
||||||
else /* SY <-- */ source.fetchChapterList(manga)
|
else /* SY <-- */ runAsObservable({
|
||||||
|
source.getChapterList(manga.toMangaInfo())
|
||||||
|
.map { it.toSChapter() }
|
||||||
|
})
|
||||||
.map { syncChaptersWithSource(db, it, manga, source) }
|
.map { syncChaptersWithSource(db, it, manga, source) }
|
||||||
// SY -->
|
// SY -->
|
||||||
)
|
)
|
||||||
|
@ -22,6 +22,7 @@ import eu.kanade.tachiyomi.data.track.TrackManager
|
|||||||
import eu.kanade.tachiyomi.source.LocalSource
|
import eu.kanade.tachiyomi.source.LocalSource
|
||||||
import eu.kanade.tachiyomi.source.Source
|
import eu.kanade.tachiyomi.source.Source
|
||||||
import eu.kanade.tachiyomi.source.SourceManager
|
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.model.toSManga
|
||||||
import eu.kanade.tachiyomi.source.online.MetadataSource
|
import eu.kanade.tachiyomi.source.online.MetadataSource
|
||||||
import eu.kanade.tachiyomi.source.online.all.MangaDex
|
import eu.kanade.tachiyomi.source.online.all.MangaDex
|
||||||
@ -286,15 +287,17 @@ class MangaPresenter(
|
|||||||
*/
|
*/
|
||||||
fun fetchMangaFromSource(manualFetch: Boolean = false) {
|
fun fetchMangaFromSource(manualFetch: Boolean = false) {
|
||||||
if (!fetchMangaSubscription.isNullOrUnsubscribed()) return
|
if (!fetchMangaSubscription.isNullOrUnsubscribed()) return
|
||||||
fetchMangaSubscription = runAsObservable({
|
fetchMangaSubscription = Observable.defer {
|
||||||
val networkManga = source.getMangaDetails(manga.toMangaInfo())
|
runAsObservable({
|
||||||
val sManga = networkManga.toSManga()
|
val networkManga = source.getMangaDetails(manga.toMangaInfo())
|
||||||
manga.prepUpdateCover(coverCache, sManga, manualFetch)
|
val sManga = networkManga.toSManga()
|
||||||
manga.copyFrom(sManga)
|
manga.prepUpdateCover(coverCache, sManga, manualFetch)
|
||||||
manga.initialized = true
|
manga.copyFrom(sManga)
|
||||||
db.insertManga(manga).executeAsBlocking()
|
manga.initialized = true
|
||||||
manga
|
db.insertManga(manga).executeAsBlocking()
|
||||||
})
|
manga
|
||||||
|
})
|
||||||
|
}
|
||||||
.subscribeOn(Schedulers.io())
|
.subscribeOn(Schedulers.io())
|
||||||
.observeOn(AndroidSchedulers.mainThread())
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
.subscribeFirst(
|
.subscribeFirst(
|
||||||
@ -761,7 +764,12 @@ class MangaPresenter(
|
|||||||
if (!fetchChaptersSubscription.isNullOrUnsubscribed()) return
|
if (!fetchChaptersSubscription.isNullOrUnsubscribed()) return
|
||||||
fetchChaptersSubscription = /* SY --> */ if (source !is MergedSource) {
|
fetchChaptersSubscription = /* SY --> */ if (source !is MergedSource) {
|
||||||
// SY <--
|
// SY <--
|
||||||
Observable.defer { source.fetchChapterList(manga) }
|
Observable.defer {
|
||||||
|
runAsObservable({
|
||||||
|
source.getChapterList(manga.toMangaInfo())
|
||||||
|
.map { it.toSChapter() }
|
||||||
|
})
|
||||||
|
}
|
||||||
.subscribeOn(Schedulers.io())
|
.subscribeOn(Schedulers.io())
|
||||||
.map { syncChaptersWithSource(db, it, manga, source) }
|
.map { syncChaptersWithSource(db, it, manga, source) }
|
||||||
.doOnNext {
|
.doOnNext {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user