Switch from Kodein to Koin (#1112)

* Switch from Kodein to Koin

* Ktlint
This commit is contained in:
Mitchell Syer
2024-11-14 18:08:19 -05:00
committed by GitHub
parent aa1e98544b
commit 0670f298cd
51 changed files with 341 additions and 465 deletions

View File

@@ -9,15 +9,10 @@ package eu.kanade.tachiyomi
import android.app.Application
import android.content.Context
import org.koin.core.context.startKoin
open class App : Application() {
override fun onCreate() {
super.onCreate()
startKoin {
modules(createAppModule(this@App))
}
// if (BuildConfig.DEBUG) Timber.plant(Timber.DebugTree())
}

View File

@@ -20,10 +20,9 @@ import eu.kanade.tachiyomi.network.JavaScriptEngine
import eu.kanade.tachiyomi.network.NetworkHelper
import kotlinx.serialization.json.Json
import kotlinx.serialization.protobuf.ProtoBuf
import nl.adaptivity.xmlutil.XmlDeclMode
import nl.adaptivity.xmlutil.core.XmlVersion
import nl.adaptivity.xmlutil.serialization.XML
import org.kodein.di.DI
import org.kodein.di.conf.global
import org.kodein.di.instance
import org.koin.core.module.Module
import org.koin.dsl.module
@@ -54,18 +53,26 @@ fun createAppModule(app: Application): Module {
// addSingletonFactory { LibrarySyncManager(app) }
single {
val json by DI.global.instance<Json>()
json
Json {
ignoreUnknownKeys = true
explicitNulls = false
}
}
single {
val xml by DI.global.instance<XML>()
xml
XML {
defaultPolicy {
ignoreUnknownChildren()
}
autoPolymorphic = true
xmlDeclMode = XmlDeclMode.Charset
indent = 2
xmlVersion = XmlVersion.XML10
}
}
single {
val protobuf by DI.global.instance<ProtoBuf>()
protobuf
ProtoBuf
}
}

View File

@@ -40,9 +40,6 @@ import org.jetbrains.exposed.sql.insert
import org.jetbrains.exposed.sql.insertAndGetId
import org.jetbrains.exposed.sql.select
import org.jetbrains.exposed.sql.transactions.transaction
import org.kodein.di.DI
import org.kodein.di.conf.global
import org.kodein.di.instance
import suwayomi.tachidesk.manga.impl.util.source.GetCatalogueSource.registerCatalogueSource
import suwayomi.tachidesk.manga.impl.util.storage.ImageUtil
import suwayomi.tachidesk.manga.model.table.ExtensionTable
@@ -441,7 +438,7 @@ class LocalSource(
private val logger = KotlinLogging.logger {}
private val applicationDirs by DI.global.instance<ApplicationDirs>()
private val applicationDirs: ApplicationDirs by injectLazy()
val pageCache: MutableMap<String, List<() -> InputStream>> = mutableMapOf()