using OI.Metrology.Server.Models; using OI.Metrology.Shared.Models.Stateless; using System.Net; namespace OI.Metrology.Server.Repository; public class ClientSettingsRepository : IClientSettingsRepository { private readonly AppSettings _AppSettings; public ClientSettingsRepository(AppSettings appSettings) => _AppSettings = appSettings; internal List GetClientSettings(IPAddress? remoteIpAddress) { List results = new() { remoteIpAddress is null ? nameof(remoteIpAddress) : remoteIpAddress.ToString() }; if (!_AppSettings.IsDevelopment) throw new Exception("Shouldn't expose!"); return results; } internal static string GetIpAddress(IPAddress? remoteIpAddress) { string result = remoteIpAddress is null ? string.Empty : remoteIpAddress.ToString(); return result; } List IClientSettingsRepository.GetClientSettings(IPAddress? remoteIpAddress) => GetClientSettings(remoteIpAddress); string IClientSettingsRepository.GetIpAddress(IPAddress? remoteIpAddress) => GetIpAddress(remoteIpAddress); }