diff options
Diffstat (limited to 'src/main/kotlin/com/romangraef/jrconfig/DefaultConfigVariable.kt')
-rw-r--r-- | src/main/kotlin/com/romangraef/jrconfig/DefaultConfigVariable.kt | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/main/kotlin/com/romangraef/jrconfig/DefaultConfigVariable.kt b/src/main/kotlin/com/romangraef/jrconfig/DefaultConfigVariable.kt new file mode 100644 index 0000000..661a0f6 --- /dev/null +++ b/src/main/kotlin/com/romangraef/jrconfig/DefaultConfigVariable.kt @@ -0,0 +1,12 @@ +package com.romangraef.jrconfig + +class DefaultConfigVariable<T>(private val internal: ConfigVariable<T>, private val default: T) : ConfigVariable<T> { + override fun get(): T = try { + internal.get() + } catch (e: Exception) { + default + } + + override fun set(value: T): Unit = internal.set(value) + override fun defaultValue(t: T?): ConfigVariable<T> = internal.defaultValue(t) +}
\ No newline at end of file |