diff --git a/src/DigitalData.EmailProfiler.API/Workers/EmailSenderWorker.cs b/src/DigitalData.EmailProfiler.API/Workers/EmailSenderWorker.cs index 24549ba..5d8bd01 100644 --- a/src/DigitalData.EmailProfiler.API/Workers/EmailSenderWorker.cs +++ b/src/DigitalData.EmailProfiler.API/Workers/EmailSenderWorker.cs @@ -10,7 +10,7 @@ namespace DigitalData.EmailProfiler.API.Workers; /// NO database operations - email account configuration comes from appsettings. /// public class EmailSenderWorker( - IEmailQueue EmailQueue, + IOutgoingEmailQueue EmailQueue, ILogger Logger, IOptions configuration) : BackgroundService { diff --git a/src/DigitalData.EmailProfiler.Application/Common/Interfaces/IEmailQueue.cs b/src/DigitalData.EmailProfiler.Application/Common/Interfaces/IOutgoingEmailQueue.cs similarity index 95% rename from src/DigitalData.EmailProfiler.Application/Common/Interfaces/IEmailQueue.cs rename to src/DigitalData.EmailProfiler.Application/Common/Interfaces/IOutgoingEmailQueue.cs index d40d08f..e1fec6c 100644 --- a/src/DigitalData.EmailProfiler.Application/Common/Interfaces/IEmailQueue.cs +++ b/src/DigitalData.EmailProfiler.Application/Common/Interfaces/IOutgoingEmailQueue.cs @@ -6,7 +6,7 @@ namespace DigitalData.EmailProfiler.Application.Common.Interfaces; /// /// Email queue interface for outgoing emails. /// -public interface IEmailQueue +public interface IOutgoingEmailQueue { Task EnqueueAsync(OutgoingEmailEvent outgoingEmailEvent, CancellationToken cancellationToken = default); Task DequeueAsync(CancellationToken cancellationToken = default); diff --git a/src/DigitalData.EmailProfiler.Application/EmailSending/Commands/SendEmailCommand.cs b/src/DigitalData.EmailProfiler.Application/EmailSending/Commands/SendEmailCommand.cs index b4ce0bf..2a87957 100644 --- a/src/DigitalData.EmailProfiler.Application/EmailSending/Commands/SendEmailCommand.cs +++ b/src/DigitalData.EmailProfiler.Application/EmailSending/Commands/SendEmailCommand.cs @@ -35,7 +35,7 @@ public record SendEmailCommand : IRequest /// Handler for SendEmailCommand /// Creates EmailOutbox entity via AutoMapper and enqueues to RabbitMQ /// -public class SendEmailCommandHandler(IEmailQueue EmailQueue, IMapper Mapper) : IRequestHandler +public class SendEmailCommandHandler(IOutgoingEmailQueue EmailQueue, IMapper Mapper) : IRequestHandler { public async Task Handle(SendEmailCommand request, CancellationToken cancellationToken) { diff --git a/src/DigitalData.EmailProfiler.Infrastructure/DependencyInjection.cs b/src/DigitalData.EmailProfiler.Infrastructure/DependencyInjection.cs index 48ad61a..e0268f5 100644 --- a/src/DigitalData.EmailProfiler.Infrastructure/DependencyInjection.cs +++ b/src/DigitalData.EmailProfiler.Infrastructure/DependencyInjection.cs @@ -31,7 +31,7 @@ public static class DependencyInjection services.AddSingleton(); // --- Email Queue (RabbitMQ) --- - services.AddSingleton(); + services.AddSingleton(); // --- RabbitMQ Configuration --- services.Configure( diff --git a/src/DigitalData.EmailProfiler.Infrastructure/Queue/OutgoingEmailQueue.cs b/src/DigitalData.EmailProfiler.Infrastructure/Queue/OutgoingEmailQueue.cs index 5377fd4..fcf374f 100644 --- a/src/DigitalData.EmailProfiler.Infrastructure/Queue/OutgoingEmailQueue.cs +++ b/src/DigitalData.EmailProfiler.Infrastructure/Queue/OutgoingEmailQueue.cs @@ -16,7 +16,7 @@ namespace DigitalData.EmailProfiler.Infrastructure.Queue; /// Provides message persistence, scalability, and reliability. /// Uses Lazy initialization pattern to avoid blocking constructor. /// -public class OutgoingEmailQueue : IEmailQueue, IDisposable +public class OutgoingEmailQueue : IOutgoingEmailQueue, IDisposable { private readonly ILogger _logger; private readonly RabbitMqConfiguration _config;