aboutsummaryrefslogtreecommitdiff
path: root/ShiftOS.Objects/UserConfig.cs
diff options
context:
space:
mode:
Diffstat (limited to 'ShiftOS.Objects/UserConfig.cs')
-rw-r--r--ShiftOS.Objects/UserConfig.cs21
1 files changed, 12 insertions, 9 deletions
diff --git a/ShiftOS.Objects/UserConfig.cs b/ShiftOS.Objects/UserConfig.cs
index 579ce00..8232230 100644
--- a/ShiftOS.Objects/UserConfig.cs
+++ b/ShiftOS.Objects/UserConfig.cs
@@ -14,24 +14,27 @@ namespace ShiftOS.Objects
public string DigitalSocietyAddress { get; set; }
public int DigitalSocietyPort { get; set; }
- public static UserConfig Get()
- {
- var conf = new UserConfig
+ private static UserConfig def = new UserConfig
{
Language = "english",
DigitalSocietyAddress = "michaeltheshifter.me",
DigitalSocietyPort = 13370
};
- if (!File.Exists("servers.json"))
- {
- File.WriteAllText("servers.json", JsonConvert.SerializeObject(conf, Formatting.Indented));
- }
+ public static UserConfig current = null;
+
+ public static UserConfig Get()
+ {
+ if (current != null)
+ return current;
+ if (File.Exists("servers.json"))
+ current = JsonConvert.DeserializeObject<UserConfig>(File.ReadAllText("servers.json"));
else
{
- conf = JsonConvert.DeserializeObject<UserConfig>(File.ReadAllText("servers.json"));
+ File.WriteAllText("servers.json", JsonConvert.SerializeObject(def, Formatting.Indented));
+ current = def;
}
- return conf;
+ return current;
}
}
}