using Deal.Modules.Discovery.Application.Abstractions; using Deal.Modules.Discovery.Application.Services; using Deal.Modules.Settings.Application.Abstractions; using Microsoft.Extensions.DependencyInjection; namespace Deal.Modules.Discovery.Application.Registrars; /// /// DI-регистрация модуля Discovery. /// public static class DiscoveryModuleRegistrar { /// /// Регистрирует сервисы модуля Discovery в контейнере. /// public static IServiceCollection AddDiscoveryModule(this IServiceCollection services) { services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddSingleton(); services.AddScoped(); services.AddScoped(); services.AddScoped(sp => new DiscoveryBanGuard( sp.GetRequiredService(), sp.GetRequiredService())); services.AddScoped(); return services; } }