IDLE implementation, imap synchronization strategies basics and condstore synchronization.

This commit is contained in:
Burak Kaan Köse
2025-01-19 20:35:41 +01:00
parent 46cbf443cf
commit e0f87f1374
38 changed files with 980 additions and 563 deletions

View File

@@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using MailKit.Net.Imap;
using Wino.Core.Domain.Entities.Mail;
using Wino.Core.Domain.Interfaces;
using Wino.Core.Integration;
namespace Wino.Core.Synchronizers.ImapSync
{
/// <summary>
/// Uid based IMAP Synchronization strategy.
/// </summary>
internal class UidBasedSynchronizer : IImapSynchronizerStrategy
{
public Task<List<string>> HandleSynchronizationAsync(IImapClient client, MailItemFolder folder, IImapSynchronizer synchronizer, CancellationToken cancellationToken = default)
{
if (client is not WinoImapClient winoClient)
throw new ArgumentException("Client must be of type WinoImapClient.", nameof(client));
return Task.FromResult(new List<string>());
}
}
}