36 lines
893 B
C#
36 lines
893 B
C#
using System.IO;
|
|
using Newtonsoft.Json;
|
|
|
|
namespace EveOPreview.Configuration
|
|
{
|
|
public class ConfigurationStorage : IConfigurationStorage
|
|
{
|
|
private const string ConfigurationFileName = "EVE-O Preview.json";
|
|
|
|
private readonly IApplicationConfiguration _configuration;
|
|
|
|
public ConfigurationStorage(IApplicationConfiguration configuration)
|
|
{
|
|
this._configuration = configuration;
|
|
}
|
|
|
|
public void Load()
|
|
{
|
|
if (!File.Exists(ConfigurationStorage.ConfigurationFileName))
|
|
{
|
|
return;
|
|
}
|
|
|
|
string rawData = File.ReadAllText(ConfigurationStorage.ConfigurationFileName);
|
|
|
|
JsonConvert.PopulateObject(rawData, this._configuration);
|
|
}
|
|
|
|
public void Save()
|
|
{
|
|
string rawData = JsonConvert.SerializeObject(this._configuration, Formatting.Indented);
|
|
|
|
File.WriteAllText(ConfigurationStorage.ConfigurationFileName, rawData);
|
|
}
|
|
}
|
|
} |