Core.Thalos.BFF/Core.Cerberos.External/GatewayConfigurations/GatewaySettingsConfigurations.cs
Sergio Matias Urquin 44e353e386 Add project files.
2025-04-29 18:55:01 -06:00

49 lines
1.7 KiB
C#

using Core.Blueprint.External;
using Microsoft.Extensions.Configuration;
namespace Core.Cerberos.External.GatewayConfigurations
{
public class GatewaySettingsConfigurations
{
private static GatewayConfiguration GatewayConfigurations { get; set; } = new GatewayConfiguration();
private readonly IConfiguration _configuration;
public GatewaySettingsConfigurations(IConfiguration configuration)
{
_configuration = configuration;
SetDashboardServiceAPIEndpoint();
}
public static CerberosServiceAPI GetCerberosServiceAPIEndpoint()
{
return GatewayConfigurations.CerberosService;
}
private GatewayConfiguration SetDashboardServiceAPIEndpoint()
{
IConfigurationSection source;
var environment = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT") ?? string.Empty;
if (environment == "Local")
source = _configuration.GetSection("LocalGateways");
else
source = _configuration.GetSection("Gateways");
var endpoint = source["CerberosService"] ?? string.Empty;
if (string.IsNullOrEmpty(endpoint)) throw new Exception("Cerberos Service endpoint is empty or null");
GatewayConfigurations.CerberosService = new CerberosServiceAPI()
{
Endpoint = new BaseEndpoint()
{
Uri = new Uri(endpoint),
Url = endpoint,
Token = string.Empty,
APIName = "Cerberos Service"
}
};
return GatewayConfigurations;
}
}
}