using SmallSoftwareContracts.Infrastructure; namespace SmallSoftwareWebApi.Infrastructure; public class ConfigurationSalary(IConfiguration configuration) : IConfigurationSalary { private readonly Lazy _salarySettings = new(() => { return configuration.GetValue("SalarySettings") ?? throw new InvalidDataException(nameof(SalarySettings)); }); public double ExtraSaleSum => _salarySettings.Value.ExtraSaleSum; public int MaxConcurrentThreads => _salarySettings.Value.MaxConcurrentThreads; }