using ModVersionChecker.data.model; using ModVersionChecker.managers.interfaces; using ModVersionChecker.utils; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ModVersionChecker.managers.litedb { public class AppConfigLiteDb : LiteDb, IAppsManager { private string collection = LiteDb.APPS_COLLECTION; public List Load() { var col = _db.GetCollection(collection); return col.FindAll().ToList(); } public void Insert(AppConfig app) { var now = TimeUtils.GetUnixTimeMillis(null); app.CreatedAt = now; app.UpdatedAt = now; var col = _db.GetCollection(collection); col.Insert(app); } public void Update(AppConfig app) { var now = TimeUtils.GetUnixTimeMillis(null); app.UpdatedAt = now; var col = _db.GetCollection(collection); col.Update(app); } //public void Upsert(AppConfig app) //{ // var now = TimeUtils.GetUnixTimeMillis(null); // app.UpdatedAt = now; // var col = _db.GetCollection(collection); // if (string.IsNullOrEmpty(app.Id)) // { // app.CreatedAt = now; // col.Insert(app); // } // col.Update(app); //} public void Delete(string id) { var col = _db.GetCollection(collection); col.Delete(id); } public void Save(List apps) { } public void UpdateStatus(AppConfig app, AppStatus status) { app.LastCheckedAt = TimeUtils.GetUnixTimeMillis(null); app.Status = status; var col = _db.GetCollection(collection); col.Update(app); } } }