Fixed typo, improved exception handling

This commit is contained in:
EzFeDezy
2025-05-27 16:26:26 +02:00
parent 1221be150d
commit 99fb750ac0
5 changed files with 28 additions and 8 deletions

View File

@@ -11,9 +11,9 @@ public class EntityController : ControllerBase
{ {
private readonly ILogger<EntityController> _logger; private readonly ILogger<EntityController> _logger;
private readonly IConfiguration _config; private readonly IConfiguration _config;
private SearchomainManager _domainManager; private SearchdomainManager _domainManager;
public EntityController(ILogger<EntityController> logger, IConfiguration config, SearchomainManager domainManager) public EntityController(ILogger<EntityController> logger, IConfiguration config, SearchdomainManager domainManager)
{ {
_logger = logger; _logger = logger;
_config = config; _config = config;

View File

@@ -10,9 +10,9 @@ public class SearchdomainController : ControllerBase
{ {
private readonly ILogger<SearchdomainController> _logger; private readonly ILogger<SearchdomainController> _logger;
private readonly IConfiguration _config; private readonly IConfiguration _config;
private SearchomainManager _domainManager; private SearchdomainManager _domainManager;
public SearchdomainController(ILogger<SearchdomainController> logger, IConfiguration config, SearchomainManager domainManager) public SearchdomainController(ILogger<SearchdomainController> logger, IConfiguration config, SearchdomainManager domainManager)
{ {
_logger = logger; _logger = logger;
_config = config; _config = config;

View File

@@ -0,0 +1,14 @@
namespace server.Exceptions;
public class ServerConfigurationException : Exception
{
public ServerConfigurationException()
: base("Configuration is incomplete or was set up incorrectly")
{
}
public ServerConfigurationException(string message)
: base(message)
{
}
}

View File

@@ -9,7 +9,7 @@ builder.Services.AddControllers();
builder.Services.AddEndpointsApiExplorer(); builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen(); builder.Services.AddSwaggerGen();
builder.Services.AddSingleton<SearchomainManager>(); builder.Services.AddSingleton<SearchdomainManager>();
var app = builder.Build(); var app = builder.Build();

View File

@@ -2,25 +2,31 @@ using embeddingsearch;
using MySql.Data.MySqlClient; using MySql.Data.MySqlClient;
using System.Data.Common; using System.Data.Common;
using OllamaSharp; using OllamaSharp;
using Microsoft.IdentityModel.Tokens;
using server.Exceptions;
namespace server; namespace server;
public class SearchomainManager public class SearchdomainManager
{ {
private Dictionary<string, Searchdomain> searchdomains = []; private Dictionary<string, Searchdomain> searchdomains = [];
private readonly ILogger<SearchomainManager> _logger; private readonly ILogger<SearchdomainManager> _logger;
private readonly IConfiguration _config; private readonly IConfiguration _config;
private readonly string ollamaURL; private readonly string ollamaURL;
private readonly string connectionString; private readonly string connectionString;
private OllamaApiClient client; private OllamaApiClient client;
private MySqlConnection connection; private MySqlConnection connection;
public SearchomainManager(ILogger<SearchomainManager> logger, IConfiguration config) public SearchdomainManager(ILogger<SearchdomainManager> logger, IConfiguration config)
{ {
_logger = logger; _logger = logger;
_config = config; _config = config;
ollamaURL = _config.GetSection("Embeddingsearch")["OllamaURL"] ?? ""; ollamaURL = _config.GetSection("Embeddingsearch")["OllamaURL"] ?? "";
connectionString = _config.GetSection("Embeddingsearch").GetConnectionString("SQL") ?? ""; connectionString = _config.GetSection("Embeddingsearch").GetConnectionString("SQL") ?? "";
if (ollamaURL.IsNullOrEmpty() || connectionString.IsNullOrEmpty())
{
throw new ServerConfigurationException("Ollama URL or connection string is empty");
}
client = new(new Uri(ollamaURL)); client = new(new Uri(ollamaURL));
connection = new MySqlConnection(connectionString); connection = new MySqlConnection(connectionString);
connection.Open(); connection.Open();