forked from Kohi-den/extensions-source
perf: remove custom coroutine scope
This commit is contained in:
parent
ae982dcfd5
commit
fc7e6bee65
2 changed files with 8 additions and 8 deletions
|
@ -17,8 +17,9 @@ import eu.kanade.tachiyomi.network.GET
|
||||||
import eu.kanade.tachiyomi.network.awaitSuccess
|
import eu.kanade.tachiyomi.network.awaitSuccess
|
||||||
import eu.kanade.tachiyomi.util.asJsoup
|
import eu.kanade.tachiyomi.util.asJsoup
|
||||||
import kotlinx.coroutines.CoroutineExceptionHandler
|
import kotlinx.coroutines.CoroutineExceptionHandler
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.DelicateCoroutinesApi
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
|
import kotlinx.coroutines.GlobalScope
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
import kotlinx.coroutines.runBlocking
|
import kotlinx.coroutines.runBlocking
|
||||||
import kotlinx.serialization.encodeToString
|
import kotlinx.serialization.encodeToString
|
||||||
|
@ -237,11 +238,12 @@ class Hanime1 : AnimeHttpSource(), ConfigurableAnimeSource {
|
||||||
return chain.proceed(chain.request())
|
return chain.proceed(chain.request())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@OptIn(DelicateCoroutinesApi::class)
|
||||||
private fun updateFilters() {
|
private fun updateFilters() {
|
||||||
filterUpdateState = FilterUpdateState.UPDATING
|
filterUpdateState = FilterUpdateState.UPDATING
|
||||||
val exceptionHandler =
|
val exceptionHandler =
|
||||||
CoroutineExceptionHandler { _, _ -> filterUpdateState = FilterUpdateState.FAILED }
|
CoroutineExceptionHandler { _, _ -> filterUpdateState = FilterUpdateState.FAILED }
|
||||||
CoroutineScope(Dispatchers.IO + exceptionHandler).launch {
|
GlobalScope.launch(Dispatchers.IO + exceptionHandler) {
|
||||||
val jsoup = client.newCall(GET("$baseUrl/search")).awaitSuccess().asJsoup()
|
val jsoup = client.newCall(GET("$baseUrl/search")).awaitSuccess().asJsoup()
|
||||||
val genreList = jsoup.select("div.genre-option div.hentai-sort-options").eachText()
|
val genreList = jsoup.select("div.genre-option div.hentai-sort-options").eachText()
|
||||||
val sortList =
|
val sortList =
|
||||||
|
|
|
@ -20,8 +20,9 @@ import eu.kanade.tachiyomi.network.POST
|
||||||
import eu.kanade.tachiyomi.network.awaitSuccess
|
import eu.kanade.tachiyomi.network.awaitSuccess
|
||||||
import eu.kanade.tachiyomi.util.asJsoup
|
import eu.kanade.tachiyomi.util.asJsoup
|
||||||
import kotlinx.coroutines.CoroutineExceptionHandler
|
import kotlinx.coroutines.CoroutineExceptionHandler
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.DelicateCoroutinesApi
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
|
import kotlinx.coroutines.GlobalScope
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
import kotlinx.serialization.json.Json
|
import kotlinx.serialization.json.Json
|
||||||
import kotlinx.serialization.json.jsonObject
|
import kotlinx.serialization.json.jsonObject
|
||||||
|
@ -259,12 +260,13 @@ class Xfani : AnimeHttpSource(), ConfigurableAnimeSource {
|
||||||
return numbers.size == 2 && numbers[0] != numbers[1]
|
return numbers.size == 2 && numbers[0] != numbers[1]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@OptIn(DelicateCoroutinesApi::class)
|
||||||
private fun updateFilter() {
|
private fun updateFilter() {
|
||||||
filterState = FilterUpdateState.UPDATING
|
filterState = FilterUpdateState.UPDATING
|
||||||
val handler = CoroutineExceptionHandler { _, _ ->
|
val handler = CoroutineExceptionHandler { _, _ ->
|
||||||
filterState = FilterUpdateState.FAILED
|
filterState = FilterUpdateState.FAILED
|
||||||
}
|
}
|
||||||
CoroutineScope(Dispatchers.IO + handler).launch {
|
GlobalScope.launch(Dispatchers.IO + handler) {
|
||||||
val jsoup = client.newCall(GET("$baseUrl/show/1/html")).awaitSuccess().asJsoup()
|
val jsoup = client.newCall(GET("$baseUrl/show/1/html")).awaitSuccess().asJsoup()
|
||||||
// update class and year filter type
|
// update class and year filter type
|
||||||
val classList = jsoup.select("li[data-type=class]").eachAttr("data-val")
|
val classList = jsoup.select("li[data-type=class]").eachAttr("data-val")
|
||||||
|
@ -393,9 +395,5 @@ class Xfani : AnimeHttpSource(), ConfigurableAnimeSource {
|
||||||
const val PREF_KEY_FILTER_YEAR = "PREF_KEY_FILTER_YEAR"
|
const val PREF_KEY_FILTER_YEAR = "PREF_KEY_FILTER_YEAR"
|
||||||
|
|
||||||
const val DEFAULT_VIDEO_SOURCE = "0"
|
const val DEFAULT_VIDEO_SOURCE = "0"
|
||||||
|
|
||||||
val STATUS_STR_MAPPING = mapOf(
|
|
||||||
"已完结" to SAnime.COMPLETED,
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue