Optimized configurations loading & saving.

This commit is contained in:
Erik C. Thauvin 2016-08-25 23:58:54 -07:00
parent 6ca0f278e1
commit a7a33d2de2

View file

@ -260,15 +260,16 @@ class MainActivity : AppCompatActivity(), AnkoLogger {
config = it.readObject() as Config config = it.readObject() as Config
} }
} catch (ex: FileNotFoundException) { } catch (ex: FileNotFoundException) {
config = Gson().fromJson(InputStreamReader(resources.openRawResource(R.raw.dks_1802_epd)), val confs = Configurations()
Config::class.java)
saveConfig()
config = Gson().fromJson(InputStreamReader(resources.openRawResource(R.raw.dks_1802)), config = Gson().fromJson(InputStreamReader(resources.openRawResource(R.raw.dks_1802)),
Config::class.java) Config::class.java)
confs.configs.put(config.params.name, config)
config = Gson().fromJson(InputStreamReader(resources.openRawResource(R.raw.dks_1802_epd)),
Config::class.java)
confs.configs.put(config.params.name, config)
saveConfig() saveConfigurations(confs)
saveConfig(false)
} }
} }
@ -278,10 +279,12 @@ class MainActivity : AppCompatActivity(), AnkoLogger {
} }
} }
fun saveConfig() { fun saveConfig(backup: Boolean = true) {
val confs = loadConfigurations() if (backup) {
confs.configs.put(config.params.name, config) val confs = loadConfigurations()
saveConfigurations(confs) confs.configs.put(config.params.name, config)
saveConfigurations(confs)
}
ObjectOutputStream(openFileOutput(current_config_data, Context.MODE_PRIVATE)).use { ObjectOutputStream(openFileOutput(current_config_data, Context.MODE_PRIVATE)).use {
it.writeObject(config) it.writeObject(config)