This commit is contained in:
kunfei
2022-01-31 23:42:26 +08:00
parent 0319db2697
commit f5a696b96d
2 changed files with 9 additions and 6 deletions
@@ -136,7 +136,7 @@ data class BookSource(
fun hasGroup(group: String): Boolean { fun hasGroup(group: String): Boolean {
bookSourceGroup?.splitNotBlank(AppPattern.splitGroupRegex)?.toHashSet()?.let { bookSourceGroup?.splitNotBlank(AppPattern.splitGroupRegex)?.toHashSet()?.let {
return if (it.indexOf(group) != -1) true else false return it.indexOf(group) != -1
} }
return false return false
} }
@@ -7,6 +7,7 @@ import io.legado.app.constant.BookType
import io.legado.app.data.entities.BookSource import io.legado.app.data.entities.BookSource
import io.legado.app.data.entities.rule.* import io.legado.app.data.entities.rule.*
import io.legado.app.utils.* import io.legado.app.utils.*
import splitties.init.appCtx
import timber.log.Timber import timber.log.Timber
import java.util.regex.Pattern import java.util.regex.Pattern
@@ -17,11 +18,13 @@ object SourceAnalyzer {
fun jsonToBookSources(json: String): List<BookSource> { fun jsonToBookSources(json: String): List<BookSource> {
val bookSources = mutableListOf<BookSource>() val bookSources = mutableListOf<BookSource>()
val items: List<Map<String, Any>> = jsonPath.parse(json).read("$") if (json.isJsonArray()) {
for (item in items) { val items: List<Map<String, Any>> = jsonPath.parse(json).read("$")
val jsonItem = jsonPath.parse(item) for (item in items) {
jsonToBookSource(jsonItem.jsonString())?.let { val jsonItem = jsonPath.parse(item)
bookSources.add(it) jsonToBookSource(jsonItem.jsonString())?.let {
bookSources.add(it)
}
} }
} }
return bookSources return bookSources