using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Manager.Interfaces.Models; using Microsoft.Extensions.Configuration; using MongoDB.Driver; namespace Manager.Services { public class ConfigurationDatabaseService { private readonly IMongoCollection _Configurations; public ConfigurationDatabaseService(IConfiguration config) { var client = new MongoClient(config.GetConnectionString("TabletDb")); var database = client.GetDatabase("TabletDb"); _Configurations = database.GetCollection("Configurations"); } public List GetAll(string instanceId) { return _Configurations.Find(d => d.InstanceId == instanceId).ToList(); } public Configuration GetById(string id) { return _Configurations.Find(d => d.Id == id).FirstOrDefault(); } public bool IsExist(string id) { return _Configurations.Find(d => d.Id == id).FirstOrDefault() != null ? true : false; } public Configuration Create(Configuration configuration) { _Configurations.InsertOne(configuration); return configuration; } public Configuration Update(string id, Configuration configurationIn) { _Configurations.ReplaceOne(d => d.Id == id, configurationIn); return configurationIn; } public void Remove(string id) { _Configurations.DeleteOne(d => d.Id == id); } } }