1
0

Compare commits

...

2 Commits

Author SHA1 Message Date
9365e8f0c5 Add injection dependencies 2020-09-10 17:00:27 +02:00
a4a30d1bea Add tests dependencies 2020-09-10 16:57:12 +02:00
5 changed files with 78 additions and 4 deletions

View File

@ -23,6 +23,26 @@ groupId = "org.http4k"
artifactId = "http4k-core" artifactId = "http4k-core"
version = "3.260.0" version = "3.260.0"
category = "server" category = "server"
default = true
[dependencies.http4k-server-jetty]
groupId = "org.http4k"
artifactId = "http4k-server-jetty"
version = "3.260.0"
category = "server"
default = true
[dependencies.http4k-server-apache]
groupId = "org.http4k"
artifactId = "http4k-server-apache"
version = "3.260.0"
category = "server"
[dependencies.http4k-client-apache]
groupId = "org.http4k"
artifactId = "http4k-server-apache"
version = "3.260.0"
category = "server"
[dependencies.javalin] [dependencies.javalin]
groupId = "io.javalin" groupId = "io.javalin"
@ -34,6 +54,7 @@ category = "server"
groupId = "io.pebbletemplates" groupId = "io.pebbletemplates"
artifactId = "pebble" artifactId = "pebble"
version = "3.1.4" version = "3.1.4"
default = true
[dependencies.logback] [dependencies.logback]
groupId = "ch.qos.logback" groupId = "ch.qos.logback"
@ -75,4 +96,47 @@ category = "database"
groupId = "me.liuwj.ktorm" groupId = "me.liuwj.ktorm"
artifactId = "ktorm-support-mysql" artifactId = "ktorm-support-mysql"
version = "3.0.0" version = "3.0.0"
category = "database" category = "database"
[dependencies.junit]
groupId = "org.junit.jupiter"
artifactId = "junit-jupiter"
version = "5.6.2"
scope = "test"
category = "test"
default = true
[dependencies.junit-params]
groupId = "org.junit.jupiter"
artifactId = "junit-jupiter-params"
version = "5.6.2"
scope = "test"
category = "test"
default = true
[dependencies.mokk]
groupId = "io.mockk"
artifactId = "mockk"
version = "1.10.0"
scope = "test"
category = "test"
[dependencies.hamkrest]
groupId = "com.natpryce"
artifactId = "hamkrest"
version = "1.7.0.3"
scope = "test"
category = "test"
[dependencies.Kodein-DI]
groupId = "org.kodein.di"
artifactId = "kodein-di-jvm"
version = "7.0.0"
category = "injection"
[dependencies.Koin]
groupId = "org.koin"
artifactId = "koin-core"
version = "2.1.6"
category = "injection"
default = true

View File

@ -18,7 +18,8 @@ class Config {
values["artifactId"], values["artifactId"],
values["version"], values["version"],
values.getOrElse("default", false), values.getOrElse("default", false),
values.getEnumOrElse("category", Category.Other) values.getEnumOrElse("category", Category.Other),
values.getEnumOrElse("scope", Scope.Compile),
) )
} }

View File

@ -1,7 +1,11 @@
package starter package starter
enum class Category { enum class Category {
Server, Database, Other Server, Injection, Database, Test, Other
}
enum class Scope {
Compile, Test
} }
data class Dependency( data class Dependency(
@ -11,5 +15,7 @@ data class Dependency(
val version: String, val version: String,
val default: Boolean, val default: Boolean,
val category: Category, val category: Category,
val scope: Scope
) )
data class Input(val name: String, val display: String, val value: String? = null) data class Input(val name: String, val display: String, val value: String? = null)

View File

@ -24,7 +24,7 @@ class Views(private val engine: PebbleEngine) {
fun pom(dependencies: List<Dependency>, inputs: List<Input>): String { fun pom(dependencies: List<Dependency>, inputs: List<Input>): String {
val args: MutableMap<String, Any?> = mutableMapOf( val args: MutableMap<String, Any?> = mutableMapOf(
"dependencies" to dependencies, "dependencies" to dependencies.sortedBy { it.scope },
) )
inputs.forEach { inputs.forEach {

View File

@ -4,6 +4,9 @@
<groupId>{{ dep.groupId }}</groupId> <groupId>{{ dep.groupId }}</groupId>
<artifactId>{{ dep.artifactId }}</artifactId> <artifactId>{{ dep.artifactId }}</artifactId>
<version>{{ dep.version }}</version> <version>{{ dep.version }}</version>
{% if dep.scope.toString == "Test" %}
<scope>test</scope>
{% endif %}
</dependency> </dependency>
{% endfor %} {% endfor %}
</dependencies> </dependencies>