using System;
using System.Threading;
using Plugin.Settings;
using Plugin.Settings.Abstractions;
namespace Aurora.Services
{
public class SettingsService : BaseService<SettingsService>
private Lazy<ISettings> _appSettings;
private string _usernameKey = "username";
private string _defaultPortKey = "port";
public SettingsService()
}
public ISettings AppSettings
get
if (_appSettings == null)
_appSettings = new Lazy<ISettings>(() => CrossSettings.Current, LazyThreadSafetyMode.PublicationOnly);
return _appSettings.Value;
set
_appSettings = new Lazy<ISettings>(() => value, LazyThreadSafetyMode.PublicationOnly);
public string Username
get { return AppSettings.GetValueOrDefault(_usernameKey, ""); }
AppSettings.AddOrUpdateValue(_usernameKey, value);
public int DefaultPort
get { return AppSettings.GetValueOrDefault(_defaultPortKey, 4005); }
set { AppSettings.AddOrUpdateValue(_defaultPortKey, value); }