private void ParseLine(string line, ServerSettings settings) { if (line.StartsWith("server")) settings.ServerIp = StripLabel(line); else if (line.StartsWith("port")) settings.Port = int.Parse(StripLabel(line)); else if (line.StartsWith("timeout")) settings.TimeoutInSeconds = int.Parse(StripLabel(line)); }
public string WriteToString(ServerSettings serverSettings) { var sb = new StringBuilder(); sb.AppendFormatLine(@"server:{0}", serverSettings.ServerIp); sb.AppendFormatLine(@"port:{0}", serverSettings.Port); sb.AppendLine(";Timeout in seconds"); sb.AppendFormatLine(@"timeout:{0}", serverSettings.TimeoutInSeconds); return sb.ToString(); }
public ServerSettings Parse(string fileContents) { var settings = new ServerSettings(); var lines = fileContents.Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries); foreach (var line in lines) { ParseLine(line, settings); } return settings; }
public void Settings_can_be_written_to_disk_and_read_back() { var expectedSettings = new ServerSettings { ServerIp = "192.168.1.2", Port = 123, TimeoutInSeconds = 456 }; var service = new SettingsService(); service.Save(expectedSettings); var actualSettings = service.Load(); Assert.AreEqual(expectedSettings, actualSettings); }
public void Save(ServerSettings serverSettings) { var settingsFilePath = GetSettingsFilePath(); File.WriteAllText(settingsFilePath, WriteToString(serverSettings)); }
public void FromSettings(ServerSettings settings) { ServerIp = settings.ServerIp; Port = settings.Port; TimeoutInSeconds = settings.TimeoutInSeconds; }