using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using MyCore.Models; using Microsoft.Extensions.Configuration; using MongoDB.Driver; using MyCore.Models.MyControlPanel; namespace MyCore.Services.MyControlPanel { public class AutomationService { private readonly IMongoCollection _Automations; public AutomationService(IConfiguration config) { var client = new MongoClient(config.GetConnectionString("MyCoreDb")); var database = client.GetDatabase("MyCoreDb"); _Automations = database.GetCollection("Automations"); } public List GetAutomations() { return _Automations.Find(d => true).ToList(); } public Automation GetAutomationById(string id) { return _Automations.Find(a => a.Id == id).FirstOrDefault(); } public Automation CreateAutomation(Automation automation) { _Automations.InsertOne(automation); return automation; } public Automation Update(string id, Automation automationIn) { _Automations.ReplaceOne(automation => automation.Id == id, automationIn); return automationIn; } public void Remove(string id) { _Automations.DeleteOne(automation => automation.Id == id); } } }