From d4153b5d432199341b992e930f7fe6cf69504a3e Mon Sep 17 00:00:00 2001 From: kunfei Date: Fri, 19 Jul 2019 22:37:14 +0800 Subject: [PATCH] up --- .../app/model/webbook/BookChapterList.kt | 44 ++++++++++++++++++- .../legado/app/model/webbook/ChapterData.kt | 8 ++++ 2 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 app/src/main/java/io/legado/app/model/webbook/ChapterData.kt diff --git a/app/src/main/java/io/legado/app/model/webbook/BookChapterList.kt b/app/src/main/java/io/legado/app/model/webbook/BookChapterList.kt index fd4f601ef..64e9a1ca3 100644 --- a/app/src/main/java/io/legado/app/model/webbook/BookChapterList.kt +++ b/app/src/main/java/io/legado/app/model/webbook/BookChapterList.kt @@ -1,5 +1,47 @@ package io.legado.app.model.webbook -object BookChapterList { +import io.legado.app.App +import io.legado.app.R +import io.legado.app.data.entities.Book +import io.legado.app.data.entities.BookChapter +import io.legado.app.data.entities.BookSource +import io.legado.app.data.entities.rule.TocRule +import io.legado.app.model.analyzeRule.AnalyzeUrl +import io.legado.app.utils.NetworkUtils +import retrofit2.Response + +class BookChapterList { + + fun analyzeChapterList( + book: Book, + response: Response, + bookSource: BookSource, + analyzeUrl: AnalyzeUrl + ): List { + val chapterList = arrayListOf() + val baseUrl: String = NetworkUtils.getUrl(response) + val body: String? = response.body() + body ?: throw Exception( + App.INSTANCE.getString( + R.string.get_web_content_error, + baseUrl + ) + ) + val tocRule = bookSource.getTocRule() + val nextUrlList = arrayListOf(baseUrl) + val chapterData = analyzeChapterList(body, tocRule) + chapterList.addAll(chapterData.chapterList) + + + return chapterList + } + + private fun analyzeChapterList(body: String, tocRule: TocRule): ChapterData { + val chapterList = arrayListOf() + val nextUrlList = arrayListOf() + + + return ChapterData(chapterList, nextUrlList) + } } \ No newline at end of file diff --git a/app/src/main/java/io/legado/app/model/webbook/ChapterData.kt b/app/src/main/java/io/legado/app/model/webbook/ChapterData.kt new file mode 100644 index 000000000..f6ddf6b66 --- /dev/null +++ b/app/src/main/java/io/legado/app/model/webbook/ChapterData.kt @@ -0,0 +1,8 @@ +package io.legado.app.model.webbook + +import io.legado.app.data.entities.BookChapter + +data class ChapterData( + var chapterList: List, + var nextUrlList: List +) \ No newline at end of file