aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/com/romangraef/jrconfig/variables
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/kotlin/com/romangraef/jrconfig/variables')
-rw-r--r--src/main/kotlin/com/romangraef/jrconfig/variables/DoubleVariable.kt15
-rw-r--r--src/main/kotlin/com/romangraef/jrconfig/variables/EnumVariable.kt15
-rw-r--r--src/main/kotlin/com/romangraef/jrconfig/variables/FloatVariable.kt15
-rw-r--r--src/main/kotlin/com/romangraef/jrconfig/variables/IntegerVariable.kt4
-rw-r--r--src/main/kotlin/com/romangraef/jrconfig/variables/LongVariable.kt15
-rw-r--r--src/main/kotlin/com/romangraef/jrconfig/variables/StringVariable.kt4
6 files changed, 64 insertions, 4 deletions
diff --git a/src/main/kotlin/com/romangraef/jrconfig/variables/DoubleVariable.kt b/src/main/kotlin/com/romangraef/jrconfig/variables/DoubleVariable.kt
new file mode 100644
index 0000000..db0dbce
--- /dev/null
+++ b/src/main/kotlin/com/romangraef/jrconfig/variables/DoubleVariable.kt
@@ -0,0 +1,15 @@
+package com.romangraef.jrconfig.variables
+
+import com.romangraef.jrconfig.ConfigSaveLoadProvider
+import com.romangraef.jrconfig.TransformerConfigVariable
+
+class DoubleVariable(provider: ConfigSaveLoadProvider, point: String) :
+ TransformerConfigVariable<Double>(provider, point) {
+ override fun transform(value: String): Double {
+ return value.toDouble()
+ }
+
+ override fun serialize(data: Double): String {
+ return data.toString()
+ }
+} \ No newline at end of file
diff --git a/src/main/kotlin/com/romangraef/jrconfig/variables/EnumVariable.kt b/src/main/kotlin/com/romangraef/jrconfig/variables/EnumVariable.kt
new file mode 100644
index 0000000..2a65177
--- /dev/null
+++ b/src/main/kotlin/com/romangraef/jrconfig/variables/EnumVariable.kt
@@ -0,0 +1,15 @@
+package com.romangraef.jrconfig.variables
+
+import com.romangraef.jrconfig.ConfigSaveLoadProvider
+import com.romangraef.jrconfig.TransformerConfigVariable
+
+class EnumVariable<T : Enum<T>>(val enumClass: Class<T>, provider: ConfigSaveLoadProvider, point: String) :
+ TransformerConfigVariable<T>(provider, point) {
+ override fun transform(value: String): T {
+ return java.lang.Enum.valueOf(enumClass, value)
+ }
+
+ override fun serialize(data: T): String {
+ return data.name
+ }
+} \ No newline at end of file
diff --git a/src/main/kotlin/com/romangraef/jrconfig/variables/FloatVariable.kt b/src/main/kotlin/com/romangraef/jrconfig/variables/FloatVariable.kt
new file mode 100644
index 0000000..6a8bb61
--- /dev/null
+++ b/src/main/kotlin/com/romangraef/jrconfig/variables/FloatVariable.kt
@@ -0,0 +1,15 @@
+package com.romangraef.jrconfig.variables
+
+import com.romangraef.jrconfig.ConfigSaveLoadProvider
+import com.romangraef.jrconfig.TransformerConfigVariable
+
+class FloatVariable(provider: ConfigSaveLoadProvider, point: String) :
+ TransformerConfigVariable<Float>(provider, point) {
+ override fun transform(value: String): Float {
+ return value.toFloat()
+ }
+
+ override fun serialize(data: Float): String {
+ return data.toString()
+ }
+} \ No newline at end of file
diff --git a/src/main/kotlin/com/romangraef/jrconfig/variables/IntegerVariable.kt b/src/main/kotlin/com/romangraef/jrconfig/variables/IntegerVariable.kt
index 97cd719..0d9c11e 100644
--- a/src/main/kotlin/com/romangraef/jrconfig/variables/IntegerVariable.kt
+++ b/src/main/kotlin/com/romangraef/jrconfig/variables/IntegerVariable.kt
@@ -1,9 +1,9 @@
package com.romangraef.jrconfig.variables
-import com.romangraef.jrconfig.ConfigProvider
+import com.romangraef.jrconfig.ConfigSaveLoadProvider
import com.romangraef.jrconfig.TransformerConfigVariable
-class IntegerVariable(provider: ConfigProvider, point: String) :
+class IntegerVariable(provider: ConfigSaveLoadProvider, point: String) :
TransformerConfigVariable<Int>(provider, point) {
override fun transform(value: String): Int {
return value.toInt()
diff --git a/src/main/kotlin/com/romangraef/jrconfig/variables/LongVariable.kt b/src/main/kotlin/com/romangraef/jrconfig/variables/LongVariable.kt
new file mode 100644
index 0000000..90c8601
--- /dev/null
+++ b/src/main/kotlin/com/romangraef/jrconfig/variables/LongVariable.kt
@@ -0,0 +1,15 @@
+package com.romangraef.jrconfig.variables
+
+import com.romangraef.jrconfig.ConfigSaveLoadProvider
+import com.romangraef.jrconfig.TransformerConfigVariable
+
+class LongVariable(provider: ConfigSaveLoadProvider, point: String) :
+ TransformerConfigVariable<Long>(provider, point) {
+ override fun transform(value: String): Long {
+ return value.toLong()
+ }
+
+ override fun serialize(data: Long): String {
+ return data.toString()
+ }
+} \ No newline at end of file
diff --git a/src/main/kotlin/com/romangraef/jrconfig/variables/StringVariable.kt b/src/main/kotlin/com/romangraef/jrconfig/variables/StringVariable.kt
index 62ee801..9ec92e2 100644
--- a/src/main/kotlin/com/romangraef/jrconfig/variables/StringVariable.kt
+++ b/src/main/kotlin/com/romangraef/jrconfig/variables/StringVariable.kt
@@ -1,9 +1,9 @@
package com.romangraef.jrconfig.variables
-import com.romangraef.jrconfig.ConfigProvider
+import com.romangraef.jrconfig.ConfigSaveLoadProvider
import com.romangraef.jrconfig.TransformerConfigVariable
-class StringVariable(provider: ConfigProvider, point: String) :
+class StringVariable(provider: ConfigSaveLoadProvider, point: String) :
TransformerConfigVariable<String>(provider, point) {
override fun transform(value: String): String {
return value