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