feat(infrastructure): inject IServiceScopeFactory into consumer pool for scoped IMAP access and register new services (OAuth2, POP3)

This commit is contained in:
2026-08-17 10:15:52 +02:00
parent 1d7f269fe1
commit 7782e86db3
3 changed files with 21 additions and 12 deletions

View File

@@ -29,13 +29,17 @@ public static class DependencyInjection
IConfiguration configuration)
{
// --- External Services ---
// Email Service - SMTP outbound (Limilabs Mail.dll)
services.AddSingleton<IEmailService, LimilabsEmailService>();
// Email Service - SMTP outbound (Limilabs Mail.dll) - OAuth2 aware
services.AddSingleton<IOAuth2TokenService, MicrosoftOAuth2TokenService>();
services.AddSingleton<LimilabsEmailService>();
services.AddSingleton<IEmailService>(sp => sp.GetRequiredService<LimilabsEmailService>());
// Email Service - IMAP inbound (Limilabs Mail.dll)
// Fresh connection per call — stateless and thread-safe.
services.AddScoped<IImapEmailService, LimilabsImapEmailService>();
// Email Service - POP3 inbound (Limilabs Mail.dll)
services.AddScoped<IPop3EmailService, LimilabsPop3EmailService>();
// PDF Processing Service (using DevExpress.Pdf)
services.AddScoped<IPdfProcessingService, DevExpressPdfProcessingService>();