Split track preferences from PreferencesHelper (#8046)

(cherry picked from commit e568951396)
This commit is contained in:
Andreas
2022-09-21 15:18:53 +02:00
committed by Jobobby04
parent bcc3a40b36
commit bdc45fb8aa
22 changed files with 88 additions and 67 deletions
@@ -1,6 +1,6 @@
package exh.md.handlers
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.domain.track.service.TrackPreferences
import eu.kanade.tachiyomi.data.track.mdlist.MdList
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.asObservableSuccess
@@ -27,7 +27,7 @@ class PageHandler(
private val bilibiliHandler: BilibiliHandler,
private val azukiHandler: AzukiHandler,
private val mangaHotHandler: MangaHotHandler,
private val preferences: PreferencesHelper,
private val preferences: TrackPreferences,
private val mdList: MdList,
) {
@@ -1,6 +1,6 @@
package exh.md.network
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.domain.track.service.TrackPreferences
import eu.kanade.tachiyomi.data.track.mdlist.MdList
import eu.kanade.tachiyomi.util.lang.withIOContext
import exh.log.xLogE
@@ -13,7 +13,7 @@ import kotlinx.coroutines.CancellationException
import kotlinx.coroutines.withTimeoutOrNull
import kotlin.time.Duration.Companion.seconds
class MangaDexLoginHelper(authServiceLazy: Lazy<MangaDexAuthService>, val preferences: PreferencesHelper, val mdList: MdList) {
class MangaDexLoginHelper(authServiceLazy: Lazy<MangaDexAuthService>, val preferences: TrackPreferences, val mdList: MdList) {
private val authService by authServiceLazy
suspend fun isAuthenticated(): Boolean {
return runCatching { authService.checkToken().isAuthenticated }
@@ -1,6 +1,6 @@
package exh.md.service
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.domain.track.service.TrackPreferences
import eu.kanade.tachiyomi.data.track.mdlist.MdList
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.POST
@@ -31,7 +31,7 @@ import okhttp3.Request
class MangaDexAuthService(
private val client: OkHttpClient,
private val headers: Headers,
private val preferences: PreferencesHelper,
private val preferences: TrackPreferences,
private val mdList: MdList,
) {
private val noAuthenticatorClient = client.newBuilder()
+6 -5
View File
@@ -1,6 +1,7 @@
package exh.md.utils
import eu.kanade.domain.source.service.SourcePreferences
import eu.kanade.domain.track.service.TrackPreferences
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.track.mdlist.MdList
import eu.kanade.tachiyomi.source.SourceManager
@@ -312,7 +313,7 @@ class MdUtil {
return "$cdnUrl/covers/$dexId/$fileName"
}
fun getLoginBody(preferences: PreferencesHelper, mdList: MdList) = preferences.trackToken(mdList)
fun getLoginBody(preferences: TrackPreferences, mdList: MdList) = preferences.trackToken(mdList)
.get()
.nullIfBlank()
?.let {
@@ -324,15 +325,15 @@ class MdUtil {
}
}
fun sessionToken(preferences: PreferencesHelper, mdList: MdList) = getLoginBody(preferences, mdList)?.session
fun sessionToken(preferences: TrackPreferences, mdList: MdList) = getLoginBody(preferences, mdList)?.session
fun refreshToken(preferences: PreferencesHelper, mdList: MdList) = getLoginBody(preferences, mdList)?.refresh
fun refreshToken(preferences: TrackPreferences, mdList: MdList) = getLoginBody(preferences, mdList)?.refresh
fun updateLoginToken(token: LoginBodyTokenDto, preferences: PreferencesHelper, mdList: MdList) {
fun updateLoginToken(token: LoginBodyTokenDto, preferences: TrackPreferences, mdList: MdList) {
preferences.trackToken(mdList).set(jsonParser.encodeToString(token))
}
fun getAuthHeaders(headers: Headers, preferences: PreferencesHelper, mdList: MdList) =
fun getAuthHeaders(headers: Headers, preferences: TrackPreferences, mdList: MdList) =
headers.newBuilder().add(
"Authorization",
"Bearer " + (sessionToken(preferences, mdList) ?: throw NoSessionException()),