From 408ad14c9f70285527e1a5ba51b39ee95a9f94b8 Mon Sep 17 00:00:00 2001 From: TekH Date: Mon, 17 Aug 2026 16:05:02 +0200 Subject: [PATCH] feat(application): add IEmailSyncService interface and ForcedSyncIntervalSeconds option to EmailAccountsOptions --- .../Common/Interfaces/IEmailSyncService.cs | 6 ++++++ .../Common/Options/EmailAccountsOptions.cs | 6 ++++++ 2 files changed, 12 insertions(+) create mode 100644 src/core/DigitalData.MessagingService.Application/Common/Interfaces/IEmailSyncService.cs diff --git a/src/core/DigitalData.MessagingService.Application/Common/Interfaces/IEmailSyncService.cs b/src/core/DigitalData.MessagingService.Application/Common/Interfaces/IEmailSyncService.cs new file mode 100644 index 0000000..f7fb970 --- /dev/null +++ b/src/core/DigitalData.MessagingService.Application/Common/Interfaces/IEmailSyncService.cs @@ -0,0 +1,6 @@ +namespace DigitalData.MessagingService.Application.Common.Interfaces; + +public interface IEmailSyncService +{ + public DateTime ForceTriggerSync(); +} \ No newline at end of file diff --git a/src/core/DigitalData.MessagingService.Application/Common/Options/EmailAccountsOptions.cs b/src/core/DigitalData.MessagingService.Application/Common/Options/EmailAccountsOptions.cs index affc839..5cdd25e 100644 --- a/src/core/DigitalData.MessagingService.Application/Common/Options/EmailAccountsOptions.cs +++ b/src/core/DigitalData.MessagingService.Application/Common/Options/EmailAccountsOptions.cs @@ -24,5 +24,11 @@ public class EmailAccountsOptions /// Defaults to 300 seconds (5 minutes). /// public int SyncIntervalSeconds { get; init; } = 300; + + /// + /// The minimum interval, in seconds, between forced IMAP sync operations regardless of idle state. + /// Defaults to 30 seconds (0.5 minute). + /// + public int ForcedSyncIntervalSeconds { get; init; } = 30; } #endif \ No newline at end of file