private async void FolderChangeWatcher_ItemSavedOrDeletedAsync (ItemSavedEventArgs e)
{
try
{
_pendingOutlookItems.AddOrUpdate (e.EntryId.EntryId, e.EntryId, (key, existingValue) => e.EntryId.Version > existingValue.Version ? e.EntryId : existingValue);
if (s_logger.IsDebugEnabled)
{
s_logger.Debug ($"Partial sync: '{_pendingOutlookItems.Count}' items pending after registering item '{e.EntryId.EntryId}' as pending sync item.");
}
await Task.Delay (_partialSyncDelay);
using (_runLogger.LogStartSynchronizationRun())
{
await RunAllPendingJobs();
}
}
catch (Exception x)
{
s_logger.Error (null, x);
}
}