Unload bootstraping modules after startup

This commit is contained in:
2020-09-30 18:30:19 +02:00
parent 69c91ec86a
commit e0b1514965
6 changed files with 35 additions and 22 deletions
@@ -29,10 +29,13 @@ private fun hikariDataSource(conf: DataSourceConfig): HikariDataSource {
return HikariDataSource(hikariConfig)
}
val migrationModule = module {
single<DbMigrations> { DbMigrationsImpl(get(), get()) }
}
val persistanceModule = module {
single<UserRepository> { UserRepositoryImpl(get()) }
single<NoteRepository> { NoteRepositoryImpl(get()) }
single<DbMigrations> { DbMigrationsImpl(get(), get()) }
single { hikariDataSource(get()) } bind DataSource::class onClose { it?.close() }
single {
get<DbMigrations>().migrate()
@@ -4,6 +4,7 @@ import be.simplenotes.domain.model.*
import be.simplenotes.domain.usecases.repositories.NoteRepository
import be.simplenotes.domain.usecases.repositories.UserRepository
import be.simplenotes.persistance.DbMigrations
import be.simplenotes.persistance.migrationModule
import be.simplenotes.persistance.persistanceModule
import be.simplenotes.shared.config.DataSourceConfig
import me.liuwj.ktorm.database.*
@@ -27,7 +28,7 @@ internal class NoteRepositoryImplTest {
}
private val koinApp = koinApplication {
modules(persistanceModule, testModule)
modules(persistanceModule, migrationModule, testModule)
}
private fun dataSourceConfig() = DataSourceConfig(
@@ -3,6 +3,7 @@ package be.simplenotes.persistance.users
import be.simplenotes.domain.model.User
import be.simplenotes.domain.usecases.repositories.UserRepository
import be.simplenotes.persistance.DbMigrations
import be.simplenotes.persistance.migrationModule
import be.simplenotes.persistance.persistanceModule
import be.simplenotes.shared.config.DataSourceConfig
import me.liuwj.ktorm.database.*
@@ -28,7 +29,7 @@ internal class UserRepositoryImplTest {
}
private val koinApp = koinApplication {
modules(persistanceModule, testModule)
modules(persistanceModule, migrationModule, testModule)
}
private fun dataSourceConfig() = DataSourceConfig(