using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; using SurveillanceClient.Core.Configuration; using SurveillanceClient.Core.Services; namespace SurveillanceClient.Core; /// /// DI registration helpers for the SurveillanceClient Core services. /// public static class ServiceCollectionExtensions { /// /// Registers and binds its options from /// configuration. The client is a singleton because RSNet.dll /// holds process-wide global state. /// public static IServiceCollection AddSurveillanceClientCore(this IServiceCollection services) { services.AddOptions().BindConfiguration(RsNetOptions.SectionName); services.AddOptions().BindConfiguration(DeviceOptions.SectionName); services.TryAddSingleton(); return services; } }