|
@@ -202,25 +202,25 @@ object CacheBook {
|
|
|
* 从待下载列表内取第一条下载
|
|
* 从待下载列表内取第一条下载
|
|
|
*/
|
|
*/
|
|
|
@Synchronized
|
|
@Synchronized
|
|
|
- fun download(scope: CoroutineScope, context: CoroutineContext): Boolean {
|
|
|
|
|
|
|
+ fun download(scope: CoroutineScope, context: CoroutineContext) {
|
|
|
val chapterIndex = waitDownloadSet.firstOrNull()
|
|
val chapterIndex = waitDownloadSet.firstOrNull()
|
|
|
if (chapterIndex == null) {
|
|
if (chapterIndex == null) {
|
|
|
if (onDownloadSet.isEmpty()) {
|
|
if (onDownloadSet.isEmpty()) {
|
|
|
cacheBookMap.remove(book.bookUrl)
|
|
cacheBookMap.remove(book.bookUrl)
|
|
|
}
|
|
}
|
|
|
- return false
|
|
|
|
|
|
|
+ return
|
|
|
}
|
|
}
|
|
|
if (onDownloadSet.contains(chapterIndex)) {
|
|
if (onDownloadSet.contains(chapterIndex)) {
|
|
|
waitDownloadSet.remove(chapterIndex)
|
|
waitDownloadSet.remove(chapterIndex)
|
|
|
- return download(scope, context)
|
|
|
|
|
|
|
+ return
|
|
|
}
|
|
}
|
|
|
val chapter = appDb.bookChapterDao.getChapter(book.bookUrl, chapterIndex) ?: let {
|
|
val chapter = appDb.bookChapterDao.getChapter(book.bookUrl, chapterIndex) ?: let {
|
|
|
waitDownloadSet.remove(chapterIndex)
|
|
waitDownloadSet.remove(chapterIndex)
|
|
|
- return download(scope, context)
|
|
|
|
|
|
|
+ return
|
|
|
}
|
|
}
|
|
|
if (BookHelp.hasContent(book, chapter)) {
|
|
if (BookHelp.hasContent(book, chapter)) {
|
|
|
waitDownloadSet.remove(chapterIndex)
|
|
waitDownloadSet.remove(chapterIndex)
|
|
|
- return download(scope, context)
|
|
|
|
|
|
|
+ return
|
|
|
}
|
|
}
|
|
|
waitDownloadSet.remove(chapterIndex)
|
|
waitDownloadSet.remove(chapterIndex)
|
|
|
onDownloadSet.add(chapterIndex)
|
|
onDownloadSet.add(chapterIndex)
|
|
@@ -243,7 +243,6 @@ object CacheBook {
|
|
|
}.onFinally {
|
|
}.onFinally {
|
|
|
onFinally()
|
|
onFinally()
|
|
|
}
|
|
}
|
|
|
- return true
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Synchronized
|
|
@Synchronized
|