refactor: simplify Koin module definitions with DSL
This commit is contained in:
+4
-2
@@ -5,9 +5,11 @@ import fr.ajaury.gwenedeg.player.data.AndroidAudioSessionManager
|
||||
import fr.ajaury.gwenedeg.player.domain.AudioPlayer
|
||||
import fr.ajaury.gwenedeg.player.domain.AudioSessionManager
|
||||
import org.koin.core.module.Module
|
||||
import org.koin.core.module.dsl.bind
|
||||
import org.koin.core.module.dsl.singleOf
|
||||
import org.koin.dsl.module
|
||||
|
||||
actual val audioPlayerModule: Module = module {
|
||||
single<AudioPlayer> { AndroidAudioPlayer(context = get()) }
|
||||
single<AudioSessionManager> { AndroidAudioSessionManager() }
|
||||
singleOf(::AndroidAudioPlayer) { bind<AudioPlayer>() }
|
||||
singleOf(::AndroidAudioSessionManager) { bind<AudioSessionManager>() }
|
||||
}
|
||||
|
||||
+6
-2
@@ -1,13 +1,17 @@
|
||||
package fr.ajaury.gwenedeg.player.di
|
||||
|
||||
import fr.ajaury.gwenedeg.core.logging.di.loggingModule
|
||||
import fr.ajaury.gwenedeg.player.data.IosAudioPlayer
|
||||
import fr.ajaury.gwenedeg.player.data.IosAudioSessionManager
|
||||
import fr.ajaury.gwenedeg.player.domain.AudioPlayer
|
||||
import fr.ajaury.gwenedeg.player.domain.AudioSessionManager
|
||||
import org.koin.core.module.Module
|
||||
import org.koin.core.module.dsl.bind
|
||||
import org.koin.core.module.dsl.singleOf
|
||||
import org.koin.dsl.module
|
||||
|
||||
actual val audioPlayerModule: Module = module {
|
||||
single<AudioPlayer> { IosAudioPlayer() }
|
||||
single<AudioSessionManager> { IosAudioSessionManager() }
|
||||
includes(loggingModule)
|
||||
singleOf(::IosAudioPlayer) { bind<AudioPlayer>() }
|
||||
singleOf(::IosAudioSessionManager) { bind<AudioSessionManager>() }
|
||||
}
|
||||
|
||||
+4
-2
@@ -5,9 +5,11 @@ import fr.ajaury.gwenedeg.player.data.JvmAudioSessionManager
|
||||
import fr.ajaury.gwenedeg.player.domain.AudioPlayer
|
||||
import fr.ajaury.gwenedeg.player.domain.AudioSessionManager
|
||||
import org.koin.core.module.Module
|
||||
import org.koin.core.module.dsl.bind
|
||||
import org.koin.core.module.dsl.singleOf
|
||||
import org.koin.dsl.module
|
||||
|
||||
actual val audioPlayerModule: Module = module {
|
||||
single<AudioPlayer> { JvmAudioPlayer() }
|
||||
single<AudioSessionManager> { JvmAudioSessionManager() }
|
||||
singleOf(::JvmAudioPlayer) { bind<AudioPlayer>() }
|
||||
singleOf(::JvmAudioSessionManager) { bind<AudioSessionManager>() }
|
||||
}
|
||||
|
||||
+4
-2
@@ -5,9 +5,11 @@ import fr.ajaury.gwenedeg.player.data.WebAudioSessionManager
|
||||
import fr.ajaury.gwenedeg.player.domain.AudioPlayer
|
||||
import fr.ajaury.gwenedeg.player.domain.AudioSessionManager
|
||||
import org.koin.core.module.Module
|
||||
import org.koin.core.module.dsl.bind
|
||||
import org.koin.core.module.dsl.singleOf
|
||||
import org.koin.dsl.module
|
||||
|
||||
actual val audioPlayerModule: Module = module {
|
||||
single<AudioPlayer> { WebAudioPlayer() }
|
||||
single<AudioSessionManager> { WebAudioSessionManager() }
|
||||
singleOf(::WebAudioPlayer) { bind<AudioPlayer>() }
|
||||
singleOf(::WebAudioSessionManager) { bind<AudioSessionManager>() }
|
||||
}
|
||||
|
||||
+3
-1
@@ -3,8 +3,10 @@ package fr.ajaury.gwenedeg.core.coroutines.di
|
||||
import fr.ajaury.gwenedeg.core.coroutines.data.DefaultDispatcherProvider
|
||||
import fr.ajaury.gwenedeg.core.coroutines.domain.DispatcherProvider
|
||||
import org.koin.core.module.Module
|
||||
import org.koin.core.module.dsl.bind
|
||||
import org.koin.core.module.dsl.singleOf
|
||||
import org.koin.dsl.module
|
||||
|
||||
val coroutinesModule: Module = module {
|
||||
single<DispatcherProvider> { DefaultDispatcherProvider() }
|
||||
singleOf(::DefaultDispatcherProvider) { bind<DispatcherProvider>() }
|
||||
}
|
||||
|
||||
+3
-3
@@ -2,9 +2,9 @@ package fr.ajaury.gwenedeg.core.logging.data
|
||||
|
||||
import fr.ajaury.gwenedeg.core.logging.domain.Logger
|
||||
|
||||
internal class KermitLogger(
|
||||
private val tag: String = "Gwenedeg",
|
||||
) : Logger {
|
||||
internal class KermitLogger : Logger {
|
||||
private val tag: String = "Gwenedeg"
|
||||
|
||||
override fun debug(
|
||||
message: String,
|
||||
throwable: Throwable?,
|
||||
|
||||
+3
-1
@@ -3,8 +3,10 @@ package fr.ajaury.gwenedeg.core.logging.di
|
||||
import fr.ajaury.gwenedeg.core.logging.data.KermitLogger
|
||||
import fr.ajaury.gwenedeg.core.logging.domain.Logger
|
||||
import org.koin.core.module.Module
|
||||
import org.koin.core.module.dsl.bind
|
||||
import org.koin.core.module.dsl.singleOf
|
||||
import org.koin.dsl.module
|
||||
|
||||
val loggingModule: Module = module {
|
||||
single<Logger> { KermitLogger() }
|
||||
singleOf(::KermitLogger) { bind<Logger>() }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user