Add categories
This commit is contained in:
@@ -12,7 +12,14 @@ class Config {
|
||||
val dependenciesNode: NightConfig = cfg["dependencies"]
|
||||
@Suppress("UNCHECKED_CAST") val dependenciesMap = dependenciesNode.valueMap() as Map<String, NightConfig>
|
||||
val dependencies = dependenciesMap.map { (name, values) ->
|
||||
Dependency(name, values["groupId"], values["artifactId"], values["version"], values.getOrElse("default", false))
|
||||
Dependency(
|
||||
name,
|
||||
values["groupId"],
|
||||
values["artifactId"],
|
||||
values["version"],
|
||||
values.getOrElse("default", false),
|
||||
values.getEnumOrElse("category", Category.Other)
|
||||
)
|
||||
}
|
||||
|
||||
val inputsNode: NightConfig = cfg["inputs"]
|
||||
|
||||
@@ -1,4 +1,15 @@
|
||||
package starter
|
||||
|
||||
data class Dependency(val name: String, val groupId: String, val artifactId: String, val version: String, val default: Boolean)
|
||||
enum class Category {
|
||||
Server, Database, Other
|
||||
}
|
||||
|
||||
data class Dependency(
|
||||
val name: String,
|
||||
val groupId: String,
|
||||
val artifactId: String,
|
||||
val version: String,
|
||||
val default: Boolean,
|
||||
val category: Category,
|
||||
)
|
||||
data class Input(val name: String, val display: String, val value: String? = null)
|
||||
@@ -14,11 +14,15 @@ private fun PebbleEngine.render(name: String, args: Map<String, Any?> = mapOf())
|
||||
class Views(private val engine: PebbleEngine) {
|
||||
private val logger = LoggerFactory.getLogger(javaClass)
|
||||
|
||||
fun index(dependencies: List<Dependency>, inputs: List<Input>) = engine.render("views/index",
|
||||
mapOf("dependencies" to dependencies, "inputs" to inputs)
|
||||
)
|
||||
fun index(dependencies: List<Dependency>, inputs: List<Input>): String {
|
||||
val dependenciesByCategory = dependencies.groupBy { it.category }.toSortedMap()
|
||||
return engine.render("views/index",
|
||||
mapOf("dependencies" to dependenciesByCategory, "inputs" to inputs)
|
||||
)
|
||||
}
|
||||
|
||||
fun pom(dependencies: List<Dependency>, inputs: List<Input>): String {
|
||||
|
||||
val args: MutableMap<String, Any?> = mutableMapOf(
|
||||
"dependencies" to dependencies,
|
||||
)
|
||||
@@ -27,8 +31,6 @@ class Views(private val engine: PebbleEngine) {
|
||||
args[it.name] = it.value
|
||||
}
|
||||
|
||||
logger.debug(args.toString())
|
||||
|
||||
return engine.render("starter/pom",
|
||||
args
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user