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>() }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user