feat: 优化代码

pull/198/head
kunfei 5 years ago
parent 544e64b415
commit b5bdea83eb
  1. 29
      app/src/main/java/io/legado/app/help/BookHelp.kt

@ -11,6 +11,7 @@ import io.legado.app.data.entities.BookChapter
import io.legado.app.data.entities.ReplaceRule
import io.legado.app.model.localBook.AnalyzeTxtFile
import io.legado.app.utils.*
import kotlinx.coroutines.Dispatchers.IO
import kotlinx.coroutines.Dispatchers.Main
import kotlinx.coroutines.withContext
import org.apache.commons.text.similarity.JaccardSimilarity
@ -242,18 +243,9 @@ object BookHelp {
private var replaceRules: List<ReplaceRule> = arrayListOf()
@Synchronized
fun upReplaceRules(name: String? = null, origin: String? = null) {
if (name != null) {
if (bookName != name || bookOrigin != origin) {
replaceRules = if (origin.isNullOrEmpty()) {
App.db.replaceRuleDao().findEnabledByScope(name)
} else {
App.db.replaceRuleDao().findEnabledByScope(name, origin)
}
bookName = name
bookOrigin = origin
}
} else {
suspend fun upReplaceRules() {
withContext(IO) {
synchronized(this) {
val o = bookOrigin
bookName?.let {
replaceRules = if (o.isNullOrEmpty()) {
@ -264,6 +256,7 @@ object BookHelp {
}
}
}
}
suspend fun disposeContent(
title: String,
@ -274,7 +267,17 @@ object BookHelp {
): String {
var c = content
if (enableReplace) {
upReplaceRules(name, origin)
synchronized(this) {
if (bookName != name || bookOrigin != origin) {
bookName = name
bookOrigin = origin
replaceRules = if (origin.isNullOrEmpty()) {
App.db.replaceRuleDao().findEnabledByScope(name)
} else {
App.db.replaceRuleDao().findEnabledByScope(name, origin)
}
}
}
replaceRules.forEach { item ->
item.pattern.let {
if (it.isNotEmpty()) {

Loading…
Cancel
Save