using Microsoft.Extensions.DependencyInjection; namespace MeetingAssistant.Recording; internal static class PortableMeetingAudioRegistration { public static void Add(IServiceCollection services) { Add(services, OperatingSystem.IsMacOS()); } internal static void Add(IServiceCollection services, bool isMacOs) { if (!isMacOs) { services.AddSingleton(); return; } services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(serviceProvider => new CompositeMeetingAudioSource( serviceProvider.GetRequiredService(), serviceProvider.GetRequiredService(), serviceProvider.GetRequiredService(), serviceProvider.GetRequiredService>())); } }