diff --git a/src/server/Controllers/EntityController.cs b/src/server/Controllers/EntityController.cs index da54c7f..7e42b7e 100644 --- a/src/server/Controllers/EntityController.cs +++ b/src/server/Controllers/EntityController.cs @@ -11,9 +11,9 @@ public class EntityController : ControllerBase { private readonly ILogger _logger; private readonly IConfiguration _config; - private SearchomainManager _domainManager; + private SearchdomainManager _domainManager; - public EntityController(ILogger logger, IConfiguration config, SearchomainManager domainManager) + public EntityController(ILogger logger, IConfiguration config, SearchdomainManager domainManager) { _logger = logger; _config = config; diff --git a/src/server/Controllers/SearchdomainController.cs b/src/server/Controllers/SearchdomainController.cs index 414b4ce..2b090bc 100644 --- a/src/server/Controllers/SearchdomainController.cs +++ b/src/server/Controllers/SearchdomainController.cs @@ -10,9 +10,9 @@ public class SearchdomainController : ControllerBase { private readonly ILogger _logger; private readonly IConfiguration _config; - private SearchomainManager _domainManager; + private SearchdomainManager _domainManager; - public SearchdomainController(ILogger logger, IConfiguration config, SearchomainManager domainManager) + public SearchdomainController(ILogger logger, IConfiguration config, SearchdomainManager domainManager) { _logger = logger; _config = config; diff --git a/src/server/Exceptions/ServerExceptions.cs b/src/server/Exceptions/ServerExceptions.cs new file mode 100644 index 0000000..b0688c0 --- /dev/null +++ b/src/server/Exceptions/ServerExceptions.cs @@ -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) + { + } +} \ No newline at end of file diff --git a/src/server/Program.cs b/src/server/Program.cs index d4681c7..e56fd12 100644 --- a/src/server/Program.cs +++ b/src/server/Program.cs @@ -9,7 +9,7 @@ builder.Services.AddControllers(); builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(); -builder.Services.AddSingleton(); +builder.Services.AddSingleton(); var app = builder.Build(); diff --git a/src/server/SearchdomainManager.cs b/src/server/SearchdomainManager.cs index 891760a..1d7ea37 100644 --- a/src/server/SearchdomainManager.cs +++ b/src/server/SearchdomainManager.cs @@ -2,25 +2,31 @@ using embeddingsearch; using MySql.Data.MySqlClient; using System.Data.Common; using OllamaSharp; +using Microsoft.IdentityModel.Tokens; +using server.Exceptions; namespace server; -public class SearchomainManager +public class SearchdomainManager { private Dictionary searchdomains = []; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly IConfiguration _config; private readonly string ollamaURL; private readonly string connectionString; private OllamaApiClient client; private MySqlConnection connection; - public SearchomainManager(ILogger logger, IConfiguration config) + public SearchdomainManager(ILogger logger, IConfiguration config) { _logger = logger; _config = config; ollamaURL = _config.GetSection("Embeddingsearch")["OllamaURL"] ?? ""; 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)); connection = new MySqlConnection(connectionString); connection.Open();