public Task <bool> Exists(string key) { return(Task.Run(() => { using (var realm = RealmType.GetInstance(Config)) { var result = realm.Find <LocalData>(key); return result != null; } })); }
public Task <T> Get <T>(string key) { return(Task.Run(() => { using (var realm = RealmType.GetInstance(Config)) { var result = realm.Find <LocalData>(key); return result == null ? default(T) : _jsonSerializer.Deserialize <T>(result.Data); } })); }
public Task <DateTimeOffset?> GetExpiration(string key) { return(Task.Run(() => { using (var realm = RealmType.GetInstance(Config)) { var result = realm.Find <LocalData>(key); if (result == null) { return default(DateTimeOffset?); } return DateTimeOffset.Parse(result.Timestamp, CultureInfo.InvariantCulture) as DateTimeOffset?; } })); }
public Task Add(string key, DateTimeOffset date, object obj) { return(Task.Run(() => { var json = _jsonSerializer.Serialize(obj); var localData = new LocalData { Data = json, Timestamp = date.ToString("r"), Key = key }; using (var realm = RealmType.GetInstance(Config)) { realm.Write(() => { realm.Add(localData, true); }); } })); }
public override IDisposable OpenDB() { return(this.realm = RealmType.GetInstance(RealmConfiguration.DefaultConfiguration.ConfigWithPath(this.Path))); }