فهرست منبع

Add newer methods to StubSource

arkon 2 سال پیش
والد
کامیت
e3f6cfa2df

+ 2 - 2
app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt

@@ -282,7 +282,7 @@ class LibraryUpdateService(
      * @param mangaToUpdate the list to update
      * @return an observable delivering the progress of each update.
      */
-    suspend fun updateChapterList() {
+    private suspend fun updateChapterList() {
         val semaphore = Semaphore(5)
         val progressCount = AtomicInteger(0)
         val currentlyUpdatingManga = CopyOnWriteArrayList<LibraryManga>()
@@ -401,7 +401,7 @@ class LibraryUpdateService(
      * @param manga the manga to update.
      * @return a pair of the inserted and removed chapters.
      */
-    suspend fun updateManga(manga: Manga): Pair<List<Chapter>, List<Chapter>> {
+    private suspend fun updateManga(manga: Manga): Pair<List<Chapter>, List<Chapter>> {
         val source = sourceManager.getOrStub(manga.source)
 
         // Update manga details metadata

+ 15 - 0
app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt

@@ -11,6 +11,8 @@ import kotlinx.coroutines.flow.MutableStateFlow
 import kotlinx.coroutines.flow.map
 import kotlinx.coroutines.flow.update
 import rx.Observable
+import tachiyomi.source.model.ChapterInfo
+import tachiyomi.source.model.MangaInfo
 
 open class SourceManager(private val context: Context) {
 
@@ -65,19 +67,32 @@ open class SourceManager(private val context: Context) {
         LocalSource(context),
     )
 
+    @Suppress("OverridingDeprecatedMember")
     inner class StubSource(override val id: Long) : Source {
 
         override val name: String
             get() = id.toString()
 
+        override suspend fun getMangaDetails(manga: MangaInfo): MangaInfo {
+            throw getSourceNotInstalledException()
+        }
+
         override fun fetchMangaDetails(manga: SManga): Observable<SManga> {
             return Observable.error(getSourceNotInstalledException())
         }
 
+        override suspend fun getChapterList(manga: MangaInfo): List<ChapterInfo> {
+            throw getSourceNotInstalledException()
+        }
+
         override fun fetchChapterList(manga: SManga): Observable<List<SChapter>> {
             return Observable.error(getSourceNotInstalledException())
         }
 
+        override suspend fun getPageList(chapter: ChapterInfo): List<tachiyomi.source.model.Page> {
+            throw getSourceNotInstalledException()
+        }
+
         override fun fetchPageList(chapter: SChapter): Observable<List<Page>> {
             return Observable.error(getSourceNotInstalledException())
         }