manager-service/ManagerService/Services/ConfigurationDatabaseService.cs
2025-03-06 17:39:08 +01:00

56 lines
1.7 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Manager.Interfaces.Models;
using ManagerService.Data;
using Microsoft.Extensions.Configuration;
using MongoDB.Driver;
namespace Manager.Services
{
public class ConfigurationDatabaseService
{
private readonly IMongoCollection<Configuration> _Configurations;
public ConfigurationDatabaseService(IConfiguration config)
{
var client = new MongoClient(config.GetConnectionString("TabletDb"));
var database = client.GetDatabase("TabletDb");
_Configurations = database.GetCollection<Configuration>("Configurations");
}
public List<Configuration> GetAll(string instanceId)
{
return _Configurations.Find(d => d.InstanceId == instanceId).ToList();
}
public Configuration GetById(string id)
{
return _Configurations.Find<Configuration>(d => d.Id == id).FirstOrDefault();
}
public bool IsExist(string id)
{
return _Configurations.Find<Configuration>(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);
}
}
}