Skip to content

Commit c5a0f92

Browse files
committed
Usings jsonInstance from core module.
createConfigDirs method from StorageBase removed. UseExperimental annotation for StorageBase class removed. Redundant logger messages removed from StorageBase.kt. Signed-off-by: Pavel Erokhin (MairwunNx) <MairwunNx@gmail.com>
1 parent 2af2e54 commit c5a0f92

File tree

1 file changed

+11
-32
lines changed
  • src/main/kotlin/com/mairwunnx/projectessentials/projectessentialshome/storage

1 file changed

+11
-32
lines changed
Lines changed: 11 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,13 @@
11
package com.mairwunnx.projectessentials.projectessentialshome.storage
22

3+
import com.mairwunnx.projectessentials.core.helpers.MOD_CONFIG_FOLDER
4+
import com.mairwunnx.projectessentials.core.helpers.jsonInstance
35
import com.mairwunnx.projectessentials.projectessentialshome.models.HomeModel
4-
import com.mairwunnx.projectessentialscore.helpers.MOD_CONFIG_FOLDER
5-
import kotlinx.serialization.UnstableDefault
6-
import kotlinx.serialization.json.Json
7-
import kotlinx.serialization.json.JsonConfiguration
86
import org.apache.logging.log4j.LogManager
97
import java.io.File
108
import java.io.FileNotFoundException
119
import kotlin.system.measureTimeMillis
1210

13-
@UseExperimental(UnstableDefault::class)
1411
object StorageBase {
1512
private val logger = LogManager.getLogger()
1613
private val userHomeData = hashMapOf<String, HomeModel>()
@@ -32,66 +29,48 @@ object StorageBase {
3229
}
3330

3431
fun loadUserData() {
35-
logger.info(" - loading user home data configuration ...")
32+
logger.info("Loading user home data configuration")
3633

37-
createConfigDirs(userDataFolder)
34+
File(userDataFolder).mkdirs()
3835
val users = File(userDataFolder).list()?.filter {
3936
if (File(it).isFile) return@filter false
4037
return@filter true
4138
}
4239

4340
val elapsedTime = measureTimeMillis {
4441
users?.forEach {
45-
logger.debug(" - processing $it user home data ...")
4642
val userId = it
4743
try {
4844
val userDataRaw = File(
4945
userDataFolder + File.separator + it + File.separator + "home.json"
5046
).readText()
51-
val userHomeClass = Json.parse(HomeModel.serializer(), userDataRaw)
47+
val userHomeClass = jsonInstance.parse(
48+
HomeModel.serializer(), userDataRaw
49+
)
5250
userHomeData[userId] = userHomeClass
5351
} catch (_: FileNotFoundException) {
54-
logger.info(" - loading home data for $it skipped! not found!")
52+
logger.info("Loading home data for $it skipped! not found!")
5553
}
5654
}
5755
}
5856
logger.info("Loading user home data done configurations with ${elapsedTime}ms")
5957
}
6058

6159
fun saveUserData() {
62-
createConfigDirs(userDataFolder)
60+
File(userDataFolder).mkdirs()
6361
userHomeData.keys.forEach {
64-
logger.debug(" - processing $it user home data ...")
65-
6662
val userId = it
6763
val userDataClass = userHomeData[userId]!!
6864
val dataFolder = userDataFolder + File.separator + userId
6965
val dataPath = dataFolder + File.separator + "home.json"
7066

71-
createConfigDirs(dataFolder)
72-
logger.debug(" - setup json configuration for parsing ...")
73-
val json = Json(
74-
JsonConfiguration(
75-
encodeDefaults = true,
76-
strictMode = true,
77-
unquoted = false,
78-
allowStructuredMapKeys = true,
79-
prettyPrint = true,
80-
useArrayPolymorphism = false
81-
)
82-
)
83-
val userDataRaw = json.stringify(HomeModel.serializer(), userDataClass)
67+
File(dataFolder).mkdirs()
68+
val userDataRaw = jsonInstance.stringify(HomeModel.serializer(), userDataClass)
8469
try {
8570
File(dataPath).writeText(userDataRaw)
8671
} catch (ex: SecurityException) {
8772
logger.error("An error occurred while saving home configuration", ex)
8873
}
8974
}
9075
}
91-
92-
private fun createConfigDirs(path: String) {
93-
logger.info(" - creating config directory for user home data ($path)")
94-
val configDirectory = File(path)
95-
if (!configDirectory.exists()) configDirectory.mkdirs()
96-
}
9776
}

0 commit comments

Comments
 (0)