public Task <byte[]> GetAsync(string key) { return(Task.Run(() => { RealmCache obj = default(RealmCache); using (var realm = Realms.Realm.GetInstance(Config)) using (var trans = realm.BeginWrite()) { try { obj = realm.Find <RealmCache>(key); } catch (Exception e) { Log.Warn("Failed to load cache key '{Key}', {Message}", e.Message); } if (obj != null) { obj.LastAccess = DateTimeOffset.UtcNow; realm.Add(obj, update: true); trans.Commit(); return obj.Value; } return null; } })); }
public Task DeleteAsync(string key) { return(Task.Run(() => { using (var realm = Realms.Realm.GetInstance(Config)) using (var trans = realm.BeginWrite()) { var obj = new RealmCache { Key = key }; realm.Remove(obj); trans.Commit(); } })); }