diff options
Diffstat (limited to 'src/main/kotlin/gui/config/storage')
3 files changed, 16 insertions, 7 deletions
diff --git a/src/main/kotlin/gui/config/storage/ConfigLoadContext.kt b/src/main/kotlin/gui/config/storage/ConfigLoadContext.kt index 59afaa1..59ca71e 100644 --- a/src/main/kotlin/gui/config/storage/ConfigLoadContext.kt +++ b/src/main/kotlin/gui/config/storage/ConfigLoadContext.kt @@ -27,13 +27,15 @@ data class ConfigLoadContext( } fun logInfo(message: String) { - Firmament.logger.info("[ConfigUpgrade] $message") + if (Firmament.DEBUG) + Firmament.logger.info("[ConfigUpgrade] $message") logBuffer.append("[INFO] ").append(message).appendLine() } fun logError(message: String, exception: Throwable) { markShouldSaveLogBuffer() - Firmament.logger.error("[ConfigUpgrade] $message", exception) + if (Firmament.DEBUG) + Firmament.logger.error("[ConfigUpgrade] $message", exception) logBuffer.append("[ERROR] ").append(message).appendLine() PrintWriter(StringBuilderWriter(logBuffer)).use { exception.printStackTrace(it) @@ -51,6 +53,16 @@ data class ConfigLoadContext( path.createParentDirectories() } + fun use(block: (ConfigLoadContext) -> Unit) { + try { + block(this) + } catch (ex: Exception) { + logError("Caught exception on CLC", ex) + } finally { + close() + } + } + override fun close() { logInfo("Closing out config load.") if (shouldSaveLogBuffer) { diff --git a/src/main/kotlin/gui/config/storage/FirmamentConfigLoader.kt b/src/main/kotlin/gui/config/storage/FirmamentConfigLoader.kt index 22cba2c..f8e3104 100644 --- a/src/main/kotlin/gui/config/storage/FirmamentConfigLoader.kt +++ b/src/main/kotlin/gui/config/storage/FirmamentConfigLoader.kt @@ -102,7 +102,7 @@ object FirmamentConfigLoader { } fun saveAll() { - ConfigLoadContext("load-${System.currentTimeMillis()}").use { context -> + ConfigLoadContext("save-${System.currentTimeMillis()}").use { context -> saveStorage( ConfigStorageClass.CONFIG, Unit, @@ -198,7 +198,7 @@ object FirmamentConfigLoader { } fun markDirty(holder: IDataHolder<*>) { - TODO("Not yet implemented") + saveAll() } } diff --git a/src/main/kotlin/gui/config/storage/LegacyImporter.kt b/src/main/kotlin/gui/config/storage/LegacyImporter.kt index 8915c17..942fd2a 100644 --- a/src/main/kotlin/gui/config/storage/LegacyImporter.kt +++ b/src/main/kotlin/gui/config/storage/LegacyImporter.kt @@ -1,10 +1,7 @@ package moe.nea.firmament.gui.config.storage import java.nio.file.Path -import javax.xml.namespace.QName -import kotlin.io.path.Path import kotlin.io.path.copyTo -import kotlin.io.path.copyToRecursively import kotlin.io.path.createDirectories import kotlin.io.path.createParentDirectories import kotlin.io.path.exists |
