private void SetReplyFlag(IMailItem mail, IMailItem response, Verb verb) { if (!UpdateOutgoing) { return; } string id = (string)mail.GetProperty(OutlookConstants.PR_ZPUSH_MESSAGE_ID); using (IFolder folder = mail.Parent) { string folderId = (string)folder.GetProperty(OutlookConstants.PR_ZPUSH_SYNC_ID); string value = ReplyFlags.VerbToExchange(verb) + "/" + id + "/" + folderId; Logger.Instance.Trace(this, "Reply header: {0}", value); response.SetProperty(Constants.ZPUSH_REPLY_HEADER, value); } }
private void UpdateReplyStatus(IMailItem mail) { if (!ParseIncoming) { return; } bool update = UpdateIncoming; // See if the categories contain a reply flag ReplyFlags flags = ReplyFlags.FromCategory(mail, update); if (flags != null) { if (update) { Logger.Instance.Debug(this, "Updating flags: {0}", mail.Subject); // Update the mail item. This will also save the changed category list flags.UpdateLocal(); } } }