ultrasonic-app-subsonic-and.../ultrasonic/src/main/kotlin/org/moire/ultrasonic/di/ApplicationModule.kt

23 lines
856 B
Kotlin
Raw Normal View History

2021-02-05 21:45:50 +01:00
package org.moire.ultrasonic.di
import org.koin.android.ext.koin.androidContext
import org.koin.dsl.module
import org.moire.ultrasonic.data.ActiveServerProvider
import org.moire.ultrasonic.subsonic.ImageLoaderProvider
import org.moire.ultrasonic.util.MediaSessionEventDistributor
import org.moire.ultrasonic.util.MediaSessionHandler
2021-02-08 20:24:20 +01:00
import org.moire.ultrasonic.util.NowPlayingEventDistributor
import org.moire.ultrasonic.util.ThemeChangedEventDistributor
2021-02-05 21:45:50 +01:00
2021-03-01 17:24:25 +01:00
/**
* This Koin module contains the registration of general classes needed for Ultrasonic
*/
2021-02-05 21:45:50 +01:00
val applicationModule = module {
2021-05-09 10:25:04 +02:00
single { ActiveServerProvider(get()) }
2021-02-05 21:45:50 +01:00
single { ImageLoaderProvider(androidContext()) }
2021-02-08 20:24:20 +01:00
single { NowPlayingEventDistributor() }
single { ThemeChangedEventDistributor() }
single { MediaSessionEventDistributor() }
single { MediaSessionHandler() }
2021-02-05 21:45:50 +01:00
}