diff --git a/src/core/DigitalData.MessagingService.Application/Common/Interfaces/IEmailService.cs b/src/core/DigitalData.MessagingService.Application/Common/Interfaces/IEmailService.cs index e1bc475..f0f7c75 100644 --- a/src/core/DigitalData.MessagingService.Application/Common/Interfaces/IEmailService.cs +++ b/src/core/DigitalData.MessagingService.Application/Common/Interfaces/IEmailService.cs @@ -1,4 +1,4 @@ -using DigitalData.MessagingService.Application.Common.Dtos; +using DigitalData.MessagingService.Publisher.Abstraction; namespace DigitalData.MessagingService.Application.Common.Interfaces; diff --git a/src/core/DigitalData.MessagingService.Application/Common/Options/EmailAccountsOptions.cs b/src/core/DigitalData.MessagingService.Application/Common/Options/EmailAccountsOptions.cs index 79f13b9..3f2e5b9 100644 --- a/src/core/DigitalData.MessagingService.Application/Common/Options/EmailAccountsOptions.cs +++ b/src/core/DigitalData.MessagingService.Application/Common/Options/EmailAccountsOptions.cs @@ -1,4 +1,4 @@ -using DigitalData.MessagingService.Application.Common.Dtos; +using DigitalData.MessagingService.Publisher.Abstraction; namespace DigitalData.MessagingService.Application.Common.Options; diff --git a/src/core/DigitalData.MessagingService.Application/EmailAccount/Queries/GetSenderQuery.cs b/src/core/DigitalData.MessagingService.Application/EmailAccount/Queries/GetSenderQuery.cs index aaf760c..5887584 100644 --- a/src/core/DigitalData.MessagingService.Application/EmailAccount/Queries/GetSenderQuery.cs +++ b/src/core/DigitalData.MessagingService.Application/EmailAccount/Queries/GetSenderQuery.cs @@ -1,5 +1,5 @@ -using DigitalData.MessagingService.Application.Common.Dtos; -using DigitalData.MessagingService.Application.Common.Options; +using DigitalData.MessagingService.Application.Common.Options; +using DigitalData.MessagingService.Publisher.Abstraction; using MediatR; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; diff --git a/src/core/DigitalData.MessagingService.Application/EmailSending/Commands/SendEmailCommand.cs b/src/core/DigitalData.MessagingService.Application/EmailSending/Commands/SendEmailCommand.cs index fc9757b..09ebc79 100644 --- a/src/core/DigitalData.MessagingService.Application/EmailSending/Commands/SendEmailCommand.cs +++ b/src/core/DigitalData.MessagingService.Application/EmailSending/Commands/SendEmailCommand.cs @@ -1,5 +1,4 @@ using AutoMapper; -using DigitalData.MessagingService.Application.Common.Dtos; using DigitalData.MessagingService.Application.EmailAccount.Queries; using DigitalData.MessagingService.Domain.Exceptions; using DigitalData.MessagingService.Publisher.Abstraction; diff --git a/src/core/DigitalData.MessagingService.Publisher.Abstraction/EmailAccountDto.cs b/src/core/DigitalData.MessagingService.Publisher.Abstraction/EmailAccountDto.cs index c27bd8a..9579cc9 100644 --- a/src/core/DigitalData.MessagingService.Publisher.Abstraction/EmailAccountDto.cs +++ b/src/core/DigitalData.MessagingService.Publisher.Abstraction/EmailAccountDto.cs @@ -1,4 +1,4 @@ -namespace DigitalData.MessagingService.Application.Common.Dtos; +namespace DigitalData.MessagingService.Publisher.Abstraction; /// /// DTO for a single email account configuration. diff --git a/src/core/DigitalData.MessagingService.Publisher.Abstraction/OutgoingEmailEvent.cs b/src/core/DigitalData.MessagingService.Publisher.Abstraction/OutgoingEmailEvent.cs index 971800b..c8f10e1 100644 --- a/src/core/DigitalData.MessagingService.Publisher.Abstraction/OutgoingEmailEvent.cs +++ b/src/core/DigitalData.MessagingService.Publisher.Abstraction/OutgoingEmailEvent.cs @@ -1,6 +1,4 @@ -using DigitalData.MessagingService.Application.Common.Dtos; - -namespace DigitalData.MessagingService.Publisher.Abstraction; +namespace DigitalData.MessagingService.Publisher.Abstraction; public record OutgoingEmailEvent { diff --git a/src/infrastructure/DigitalData.MessagingService.Infrastructure/Services/LimilabsEmailService.cs b/src/infrastructure/DigitalData.MessagingService.Infrastructure/Services/LimilabsEmailService.cs index cbd3321..569e119 100644 --- a/src/infrastructure/DigitalData.MessagingService.Infrastructure/Services/LimilabsEmailService.cs +++ b/src/infrastructure/DigitalData.MessagingService.Infrastructure/Services/LimilabsEmailService.cs @@ -1,13 +1,11 @@ using System.Text; -using DigitalData.MessagingService.Application.Common.Dtos; using DigitalData.MessagingService.Application.Common.Interfaces; using DigitalData.MessagingService.Domain.Exceptions; using Limilabs.Client.SMTP; using Limilabs.Mail; using Limilabs.Mail.Headers; -using Microsoft.Extensions.Options; -using DigitalData.MessagingService.Application.Common.Options; using DigitalData.MessagingService.Infrastructure.Services.Extensions; +using DigitalData.MessagingService.Publisher.Abstraction; namespace DigitalData.MessagingService.Infrastructure.Services; diff --git a/src/presentation/DigitalData.MessagingService.API/Program.cs b/src/presentation/DigitalData.MessagingService.API/Program.cs index 07f59dc..e59f69c 100644 --- a/src/presentation/DigitalData.MessagingService.API/Program.cs +++ b/src/presentation/DigitalData.MessagingService.API/Program.cs @@ -1,6 +1,5 @@ using DigitalData.MessagingService.API.Middleware; using DigitalData.MessagingService.Application; -using DigitalData.MessagingService.Application.Common.Dtos; using DigitalData.MessagingService.Infrastructure; using Serilog; using Serilog.Ui.Core.Extensions; diff --git a/src/presentation/DigitalData.MessagingService.Client/Email.cs b/src/presentation/DigitalData.MessagingService.Client/Email.cs index 48eeeeb..a47de18 100644 --- a/src/presentation/DigitalData.MessagingService.Client/Email.cs +++ b/src/presentation/DigitalData.MessagingService.Client/Email.cs @@ -10,7 +10,7 @@ public record Email /// /// Recipient email address /// - public string Recipient { get; set; } = null!; + public IEnumerable Recipients { get; set; } = null!; /// /// Email subject @@ -36,7 +36,7 @@ public record Email return new OutgoingEmailEvent { Id = Guid.NewGuid(), - Recipient = Recipient, + Recipients = Recipients, Subject = Subject, Body = Body, IsHtml = IsHtml, diff --git a/tests/DigitalData.MessagingService.Tests/Integration/EmailSenderTests.cs b/tests/DigitalData.MessagingService.Tests/Integration/EmailSenderTests.cs index 6ba7b36..0d01834 100644 --- a/tests/DigitalData.MessagingService.Tests/Integration/EmailSenderTests.cs +++ b/tests/DigitalData.MessagingService.Tests/Integration/EmailSenderTests.cs @@ -77,7 +77,7 @@ public sealed class EmailSenderTests { var email = new Email { - Recipient = "hakanttek@gmail.com", + Recipients = ["hakanttek@gmail.com"], Subject = "EmailSender.Send Integration Test", Body = "

Sent via EmailSender static client.

", IsHtml = true, @@ -93,7 +93,7 @@ public sealed class EmailSenderTests { var email = new Email { - Recipient = "hakanttek@gmail.com", + Recipients = ["hakanttek@gmail.com"], Subject = "Plain Text Test", Body = "This is a plain text email.", IsHtml = false diff --git a/tests/DigitalData.MessagingService.Tests/Integration/EmailSenderUrlOverloadTests.cs b/tests/DigitalData.MessagingService.Tests/Integration/EmailSenderUrlOverloadTests.cs index 6541a1b..1072470 100644 --- a/tests/DigitalData.MessagingService.Tests/Integration/EmailSenderUrlOverloadTests.cs +++ b/tests/DigitalData.MessagingService.Tests/Integration/EmailSenderUrlOverloadTests.cs @@ -57,7 +57,7 @@ public sealed class EmailSenderUrlOverloadTests { var email = new Email { - Recipient = "url-overload-test@example.com", + Recipients = ["url-overload-test@example.com"], Subject = "URL Overload Integration Test", Body = "

Sent after URL-based connection.

", IsHtml = true diff --git a/tests/DigitalData.MessagingService.Tests/Integration/OutgoingEmailPublisherTests.cs b/tests/DigitalData.MessagingService.Tests/Integration/OutgoingEmailPublisherTests.cs index 0b1f7c9..9d20731 100644 --- a/tests/DigitalData.MessagingService.Tests/Integration/OutgoingEmailPublisherTests.cs +++ b/tests/DigitalData.MessagingService.Tests/Integration/OutgoingEmailPublisherTests.cs @@ -37,7 +37,7 @@ public sealed class OutgoingEmailPublisherTests : IAsyncDisposable var email = new OutgoingEmailEvent { Id = Guid.NewGuid(), - Recipient = "test@example.com", + Recipients = ["test@example.com"], Subject = "Integration Test - EnqueueAsync", Body = "

Hello from integration test.

", IsHtml = true, @@ -62,7 +62,7 @@ public sealed class OutgoingEmailPublisherTests : IAsyncDisposable var emails = Enumerable.Range(1, 3).Select(i => new OutgoingEmailEvent { Id = Guid.NewGuid(), - Recipient = $"recipient{i}@example.com", + Recipients = new List { $"recipient{i}@example.com" }, Subject = $"Integration Test - Batch #{i}", Body = $"Batch message {i}", IsHtml = false, @@ -85,7 +85,7 @@ public sealed class OutgoingEmailPublisherTests : IAsyncDisposable var email = new OutgoingEmailEvent { Id = Guid.NewGuid(), - Recipient = "depth-test@example.com", + Recipients = ["depth-test@example.com"], Subject = "Integration Test - GetQueueDepth", Body = "Queue depth test", IsHtml = false, @@ -108,7 +108,7 @@ public sealed class OutgoingEmailPublisherTests : IAsyncDisposable var email = new OutgoingEmailEvent { Id = id, - Recipient = "serialize@example.com", + Recipients = new List { "serialize@example.com" }, Subject = "Serialization Test", Body = "Bold", IsHtml = true, @@ -123,7 +123,7 @@ public sealed class OutgoingEmailPublisherTests : IAsyncDisposable Assert.NotNull(received); Assert.Equal(id, received.Id); - Assert.Equal("serialize@example.com", received.Recipient); + Assert.Equal(["serialize@example.com"], received.Recipients); Assert.Equal("Serialization Test", received.Subject); Assert.Equal("Bold", received.Body); Assert.True(received.IsHtml);