rcdbquery/src/commonMain/kotlin/de/pheerai/rcdbquery/dataMappings/Vendor.kt
Oliver Rümpelein cc703d5554 First semi-proper DSL-like syntax
- Native builds to compile now
 - Add Arvm 32 bit target
 - Add Jvm main class for test runs
2020-04-08 16:28:31 +02:00

35 lines
1.2 KiB
Kotlin

package de.pheerai.rcdbquery.dataMappings
enum class Vendor(
override val prettyName: String,
override val fullName: String,
override val paramId: Int
) : RcdbParamOption {
INTAMIN("Intamin", "Intamin Amusement Rides", 6837),
VEKOMA("Vekoma", 6836),
MACK("Mack Rides", "Mack Rides GmbH & Co KG", 6856),
GERSTLAUER("Gerstlauer", "Gerstlauer Amusement Rides GmbH", 6948),
ZIERER("Zierer", 6861),
MAURER("Maurer", "Maurer Rides GmbH", 6905),
B_AND_M("B&M", "Bolliger & Mabillard", 6831),
SBF_VISA("SBF Visa", "SBF Visa Group", 7028),
ZAMPERLA("Zamperla", 6892),
GCI("GCI", "Great Coasters International", 6860),
RMC("RMC", "Rocky Mountain Construction", 10583)
;
constructor(name: String, paramId: Int) : this(name, name, paramId)
companion object {
const val staticParamName = "mk"
fun getByName(name: String): Vendor? = values().firstOrNull { it.prettyName == name }
fun searchByName(name: String): List<Vendor> {
val searchName = name.toLowerCase()
return values().filter {
it.prettyName.toLowerCase().contains(searchName)
}.toList()
}
}
}