优化
This commit is contained in:
@@ -64,6 +64,7 @@ open class ChangeBookSourceViewModel(application: Application) : BaseViewModel(a
|
||||
private var searchBookList = arrayListOf<SearchBook>()
|
||||
private val searchBooks = Collections.synchronizedList(arrayListOf<SearchBook>())
|
||||
private val tocMap = ConcurrentHashMap<String, List<BookChapter>>()
|
||||
private var tocMapChapterCount = 0
|
||||
private val contentProcessor by lazy {
|
||||
ContentProcessor.get(oldBook!!)
|
||||
}
|
||||
@@ -176,6 +177,9 @@ open class ChangeBookSourceViewModel(application: Application) : BaseViewModel(a
|
||||
}
|
||||
searchCallback?.upAdapter()
|
||||
bookSourceParts.clear()
|
||||
tocMap.clear()
|
||||
bookMap.clear()
|
||||
tocMapChapterCount = 0
|
||||
val searchGroup = AppConfig.searchGroup
|
||||
if (searchGroup.isBlank()) {
|
||||
bookSourceParts.addAll(appDb.bookSourceDao.allEnabledPart)
|
||||
@@ -197,6 +201,9 @@ open class ChangeBookSourceViewModel(application: Application) : BaseViewModel(a
|
||||
execute {
|
||||
stopSearch()
|
||||
bookSourceParts.clear()
|
||||
tocMap.clear()
|
||||
bookMap.clear()
|
||||
tocMapChapterCount = 0
|
||||
bookSourceParts.add(appDb.bookSourceDao.getBookSourcePart(origin)!!)
|
||||
searchBooks.removeIf { it.origin == origin }
|
||||
initSearchPool()
|
||||
@@ -269,7 +276,10 @@ open class ChangeBookSourceViewModel(application: Application) : BaseViewModel(a
|
||||
for (chapter in chapters) {
|
||||
chapter.internString()
|
||||
}
|
||||
tocMap[book.bookUrl] = chapters
|
||||
if (tocMapChapterCount < 30000) {
|
||||
tocMapChapterCount += chapters.size
|
||||
tocMap[book.bookUrl] = chapters
|
||||
}
|
||||
bookMap[book.bookUrl] = book
|
||||
book.releaseHtmlData()
|
||||
if (AppConfig.changeSourceLoadWordCount) {
|
||||
|
||||
Reference in New Issue
Block a user