diff --git a/src/core/DigitalData.MessagingService.Application/Common/Dto/EmailAccounts/EmailAccountDto.cs b/src/core/DigitalData.MessagingService.Application/Common/Dto/EmailAccounts/EmailAccountDto.cs index 5ab16f6..2a4aa25 100644 --- a/src/core/DigitalData.MessagingService.Application/Common/Dto/EmailAccounts/EmailAccountDto.cs +++ b/src/core/DigitalData.MessagingService.Application/Common/Dto/EmailAccounts/EmailAccountDto.cs @@ -1,3 +1,5 @@ +using DigitalData.MessagingService.Domain.Enums; + namespace DigitalData.MessagingService.Application.Common.Dto.EmailAccounts; /// @@ -53,4 +55,9 @@ public record EmailAccountDto public string? OAuth2ClientId { get; set; } public string? OAuth2TenantId { get; set; } + + /// + /// The protocol used to receive (sync) incoming emails. + /// + public IncomingProtocol IncomingProtocol { get; set; } = IncomingProtocol.None; } \ No newline at end of file diff --git a/src/core/DigitalData.MessagingService.Application/Common/Dto/EmailAccounts/EmailAccountModificationDto.cs b/src/core/DigitalData.MessagingService.Application/Common/Dto/EmailAccounts/EmailAccountModificationDto.cs index 4775dd0..006af07 100644 --- a/src/core/DigitalData.MessagingService.Application/Common/Dto/EmailAccounts/EmailAccountModificationDto.cs +++ b/src/core/DigitalData.MessagingService.Application/Common/Dto/EmailAccounts/EmailAccountModificationDto.cs @@ -1,3 +1,5 @@ +using DigitalData.MessagingService.Domain.Enums; + namespace DigitalData.MessagingService.Application.Common.Dto.EmailAccounts; /// @@ -56,4 +58,9 @@ public record EmailAccountModificationDto public string? OAuth2ClientSecret { get; set; } public string? OAuth2TenantId { get; set; } + + /// + /// The protocol used to receive (sync) incoming emails. + /// + public IncomingProtocol IncomingProtocol { get; set; } = IncomingProtocol.None; } \ No newline at end of file diff --git a/src/core/DigitalData.MessagingService.Domain/Entities/EmailAccount.cs b/src/core/DigitalData.MessagingService.Domain/Entities/EmailAccount.cs index 997fdc5..691229e 100644 --- a/src/core/DigitalData.MessagingService.Domain/Entities/EmailAccount.cs +++ b/src/core/DigitalData.MessagingService.Domain/Entities/EmailAccount.cs @@ -1,5 +1,6 @@ using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; +using DigitalData.MessagingService.Domain.Enums; namespace DigitalData.MessagingService.Domain.Entities; @@ -113,4 +114,12 @@ public class EmailAccount [MaxLength(256)] [Column("OAUTH2_TENANT_ID", TypeName = "nvarchar(256)")] public string? OAuth2TenantId { get; set; } + + /// + /// The protocol used to receive (sync) incoming emails. + /// When set to , this account is send-only and will be skipped by the sync worker. + /// Takes priority over the presence of or . + /// + [Column("INCOMING_PROTOCOL", TypeName = "int")] + public IncomingProtocol IncomingProtocol { get; set; } = IncomingProtocol.None; } \ No newline at end of file