private void SaveDevices()
{
var container = ApplicationData.Current.LocalSettings.CreateContainer("Devices", ApplicationDataCreateDisposition.Always);
container.Values.Clear();
int i = 0;
foreach (var b in AllJoynDsbServiceManager.Current.Devices)
{
StringBuilder sb = new StringBuilder();
if(b is MockBulbDevice)
{
sb.AppendLine("Lamp");
sb.Append((((MockBulbDevice)b).LightingServiceHandler as MockLightingServiceHandler).ToJson());
}
else if(b is MockCurrentTemperatureDevice)
{
sb.AppendLine("CurrentTemperature");
sb.AppendLine(((MockCurrentTemperatureDevice)b).SerialNumber);
sb.AppendLine(((MockCurrentTemperatureDevice)b).Name);
sb.AppendLine(((MockCurrentTemperatureDevice)b).CurrentValue.ToString(CultureInfo.InvariantCulture));
}
else if(b is MockCurrentHumidityDevice)
{
sb.AppendLine("CurrentHumidity");
sb.AppendLine(((MockCurrentHumidityDevice)b).SerialNumber);
sb.AppendLine(((MockCurrentHumidityDevice)b).Name);
sb.AppendLine(((MockCurrentHumidityDevice)b).CurrentValue.ToString(CultureInfo.InvariantCulture));
}
else if (b is MockOnOffSwitchDevice)
{
sb.AppendLine("OnOffSwitch");
sb.AppendLine(((MockOnOffSwitchDevice)b).SerialNumber);
sb.AppendLine(((MockOnOffSwitchDevice)b).Name);
sb.AppendLine(((MockOnOffSwitchDevice)b).OnOff ? "true" : "false");
}
else
{
continue;
}
container.Values[i++.ToString("0000")] = sb.ToString();
}
}