diff --git a/api/pom.xml b/api/pom.xml
index 87e64aa..899e856 100644
--- a/api/pom.xml
+++ b/api/pom.xml
@@ -14,7 +14,7 @@
5.6.2
3.0.0
2.6.0
- 6.5.4
+ 7.0.0
6.3.3
3.10.2
0.4
@@ -99,7 +99,7 @@
org.kodein.di
- kodein-di-generic-jvm
+ kodein-di-jvm
${kodein_version}
@@ -216,6 +216,14 @@
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.0.0
+
+ ${main.class}
+
+
org.apache.maven.plugins
maven-surefire-plugin
diff --git a/api/src/Dependencies.kt b/api/src/Dependencies.kt
index ab863f9..bd1ce81 100644
--- a/api/src/Dependencies.kt
+++ b/api/src/Dependencies.kt
@@ -14,11 +14,11 @@ import be.vandewalleh.routing.TagRoutes
import be.vandewalleh.routing.UserRoutes
import be.vandewalleh.services.NoteService
import be.vandewalleh.services.UserService
-import org.kodein.di.Kodein
-import org.kodein.di.generic.*
+import org.kodein.di.*
+import org.kodein.di.DI
import org.slf4j.LoggerFactory
-val mainModule = Kodein.Module("main") {
+val mainModule = DI.Module("main") {
bind() from singleton { NoteService(instance()) }
bind() from singleton { UserService(instance(), instance()) }
diff --git a/api/src/NotesApplication.kt b/api/src/NotesApplication.kt
index 0b27dbb..4996848 100644
--- a/api/src/NotesApplication.kt
+++ b/api/src/NotesApplication.kt
@@ -6,32 +6,28 @@ import io.ktor.application.*
import io.ktor.routing.*
import io.ktor.server.engine.*
import io.ktor.server.netty.*
-import org.kodein.di.Kodein
+import org.kodein.di.DI
import org.kodein.di.description
-import org.kodein.di.generic.instance
+import org.kodein.di.instance
import org.slf4j.Logger
import java.util.concurrent.TimeUnit
fun main() {
- val kodein = Kodein {
- import(mainModule)
- }
-
- val config by kodein.instance()
- val logger by kodein.instance()
+ val di = DI { import(mainModule) }
+ val config by di.instance()
+ val logger by di.instance()
logger.info("Running application with configuration $config")
- logger.debug("Kodein bindings\n${kodein.container.tree.bindings.description()}")
-
- serve(kodein)
+ logger.debug("Kodein bindings\n${di.container.tree.bindings.description()}")
+ serve(di)
}
-fun serve(kodein: Kodein) {
- val config by kodein.instance()
- val logger by kodein.instance()
+fun serve(di: DI) {
+ val config by di.instance()
+ val logger by di.instance()
val env = applicationEngineEnvironment {
module {
- module(kodein)
+ module(di)
}
log = logger
connector {
@@ -46,14 +42,14 @@ fun serve(kodein: Kodein) {
}
-fun Application.module(kodein: Kodein) {
- val builders: Set by kodein.instance()
+fun Application.module(di: DI) {
+ val builders: Set by di.instance()
builders.forEach {
it.builder(this)
}
- val routingBuilders: Set by kodein.instance()
+ val routingBuilders: Set by di.instance()
routingBuilders.forEach {
routing(it.builder)
}
diff --git a/api/src/routing/TagRoutes.kt b/api/src/routing/TagRoutes.kt
index 91a65d8..e4eb673 100644
--- a/api/src/routing/TagRoutes.kt
+++ b/api/src/routing/TagRoutes.kt
@@ -7,8 +7,6 @@ import io.ktor.application.*
import io.ktor.auth.*
import io.ktor.response.*
import io.ktor.routing.*
-import org.kodein.di.Kodein
-import org.kodein.di.generic.instance
class TagRoutes(noteService: NoteService) : RoutingBuilder({
authenticate {
diff --git a/api/test/integration/routing/AuthControllerKtTest.kt b/api/test/integration/routing/AuthControllerKtTest.kt
index dec46af..0de74f4 100644
--- a/api/test/integration/routing/AuthControllerKtTest.kt
+++ b/api/test/integration/routing/AuthControllerKtTest.kt
@@ -17,9 +17,9 @@ import io.mockk.mockk
import org.amshove.kluent.*
import org.json.JSONObject
import org.junit.jupiter.api.*
-import org.kodein.di.Kodein
-import org.kodein.di.generic.bind
-import org.kodein.di.generic.instance
+import org.kodein.di.DI
+import org.kodein.di.bind
+import org.kodein.di.instance
import utils.*
import java.util.*
@@ -28,7 +28,7 @@ class AuthControllerKtTest {
private val userService = mockk()
- private val kodein = Kodein {
+ private val kodein = DI {
import(mainModule, allowOverride = true)
bind(overrides = true) with instance(userService)
}
diff --git a/api/test/integration/routing/UserControllerKtTest.kt b/api/test/integration/routing/UserControllerKtTest.kt
index 9615dff..797dfc8 100644
--- a/api/test/integration/routing/UserControllerKtTest.kt
+++ b/api/test/integration/routing/UserControllerKtTest.kt
@@ -11,9 +11,9 @@ import io.mockk.coEvery
import io.mockk.mockk
import org.amshove.kluent.*
import org.junit.jupiter.api.*
-import org.kodein.di.Kodein
-import org.kodein.di.generic.bind
-import org.kodein.di.generic.instance
+import org.kodein.di.DI
+import org.kodein.di.bind
+import org.kodein.di.instance
import utils.*
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
@@ -42,7 +42,7 @@ class UserControllerKtTest {
}
- private val kodein = Kodein {
+ private val kodein = DI {
import(mainModule, allowOverride = true)
bind(overrides = true) with instance(userService)
}
diff --git a/api/test/integration/services/NoteServiceTest.kt b/api/test/integration/services/NoteServiceTest.kt
index 7dbc0df..583f5c9 100644
--- a/api/test/integration/services/NoteServiceTest.kt
+++ b/api/test/integration/services/NoteServiceTest.kt
@@ -18,12 +18,11 @@ import kotlinx.coroutines.runBlocking
import me.liuwj.ktorm.jackson.*
import org.amshove.kluent.*
import org.junit.jupiter.api.*
-import org.kodein.di.Kodein
-import org.kodein.di.generic.bind
-import org.kodein.di.generic.instance
-import org.kodein.di.generic.singleton
+import org.kodein.di.DI
+import org.kodein.di.bind
+import org.kodein.di.instance
+import org.kodein.di.singleton
import utils.KMariadbContainer
-import javax.sql.DataSource
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
class NoteServiceTest {
@@ -32,7 +31,7 @@ class NoteServiceTest {
inner class DB {
private val mariadb = KMariadbContainer().apply { start() }
- private val kodein = Kodein {
+ private val kodein = DI {
import(mainModule, allowOverride = true)
bind(overrides = true) from singleton { mariadb.datasource() }
}
diff --git a/api/test/integration/services/UserServiceTest.kt b/api/test/integration/services/UserServiceTest.kt
index 86543e4..57905ab 100644
--- a/api/test/integration/services/UserServiceTest.kt
+++ b/api/test/integration/services/UserServiceTest.kt
@@ -3,16 +3,14 @@ package integration.services
import be.vandewalleh.features.Migration
import be.vandewalleh.mainModule
import be.vandewalleh.services.UserService
-import com.zaxxer.hikari.HikariDataSource
import kotlinx.coroutines.runBlocking
import org.amshove.kluent.*
import org.junit.jupiter.api.*
-import org.kodein.di.Kodein
-import org.kodein.di.generic.bind
-import org.kodein.di.generic.instance
-import org.kodein.di.generic.singleton
+import org.kodein.di.DI
+import org.kodein.di.bind
+import org.kodein.di.instance
+import org.kodein.di.singleton
import utils.KMariadbContainer
-import javax.sql.DataSource
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
@@ -21,9 +19,9 @@ class UserServiceTest {
private val mariadb = KMariadbContainer().apply { start() }
- private val kodein = Kodein {
+ private val kodein = DI {
import(mainModule, allowOverride = true)
- bind(overrides = true) from singleton { mariadb.datasource() }
+ bind( overrides = true) from singleton { mariadb.datasource() }
}
private val userService by kodein.instance()