public static void SendQueuedEmails(int failureInterval, int maxNumberOfTries, SiteSettings settings) { if (settings != null) { HiConfiguration config = HiConfiguration.GetConfig(); Dictionary <Guid, MailMessage> dictionary = new EmailQueueDao().DequeueEmail(); IList <Guid> list = new List <Guid>(); EmailSender sender = Messenger.CreateEmailSender(settings); if (sender != null) { int num = 0; short smtpServerConnectionLimit = config.SmtpServerConnectionLimit; foreach (Guid guid in dictionary.Keys) { if (Messenger.SendMail(dictionary[guid], sender)) { new EmailQueueDao().DeleteQueuedEmail(guid); if ((smtpServerConnectionLimit != -1) && (++num >= smtpServerConnectionLimit)) { Thread.Sleep(new TimeSpan(0, 0, 0, 15, 0)); num = 0; } } else { list.Add(guid); } } if (list.Count > 0) { new EmailQueueDao().QueueSendingFailure(list, failureInterval, maxNumberOfTries); } } } }
public static void SendQueuedEmails(int failureInterval, int maxNumberOfTries, SiteSettings settings) { if (settings != null) { HiConfiguration config = HiConfiguration.GetConfig(); Dictionary<Guid, MailMessage> dictionary = new EmailQueueDao().DequeueEmail(); IList<Guid> list = new List<Guid>(); EmailSender sender = Messenger.CreateEmailSender(settings); if (sender != null) { int num = 0; short smtpServerConnectionLimit = config.SmtpServerConnectionLimit; foreach (Guid guid in dictionary.Keys) { if (Messenger.SendMail(dictionary[guid], sender)) { new EmailQueueDao().DeleteQueuedEmail(guid); if ((smtpServerConnectionLimit != -1) && (++num >= smtpServerConnectionLimit)) { Thread.Sleep(new TimeSpan(0, 0, 0, 15, 0)); num = 0; } } else { list.Add(guid); } } if (list.Count > 0) { new EmailQueueDao().QueueSendingFailure(list, failureInterval, maxNumberOfTries); } } } }
public static void SendQueuedEmails(int failureInterval, int maxNumberOfTries, SiteSettings settings) { if (settings != null) { EmailQueueDao emailQueueDao = new EmailQueueDao(); HiConfiguration config = HiConfiguration.GetConfig(); Dictionary <Guid, MailMessage> dictionary = emailQueueDao.DequeueEmail(); IList <Guid> list = new List <Guid>(); EmailSender emailSender = Messenger.CreateEmailSender(settings); if (emailSender != null) { int num = 0; short smtpServerConnectionLimit = config.SmtpServerConnectionLimit; foreach (Guid key in dictionary.Keys) { if (Messenger.SendMail(dictionary[key], emailSender)) { emailQueueDao.DeleteQueuedEmail(key); if (smtpServerConnectionLimit != -1 && ++num >= smtpServerConnectionLimit) { Thread.Sleep(new TimeSpan(0, 0, 0, 15, 0)); num = 0; } } else { int num2 = emailQueueDao.GetMailMessage(key) + 1; if (num2 <= maxNumberOfTries) { emailQueueDao.QueueSendingFailure(key, failureInterval, maxNumberOfTries); } else { emailQueueDao.DeleteQueuedEmail(key); } } } } } }
public static void SendQueuedEmails(int failureInterval, int maxNumberOfTries, SiteSettings settings) { if (settings != null) { HiConfiguration config = HiConfiguration.GetConfig(); System.Collections.Generic.Dictionary <System.Guid, System.Net.Mail.MailMessage> dictionary = new EmailQueueDao().DequeueEmail(); System.Collections.Generic.IList <System.Guid> list = new System.Collections.Generic.List <System.Guid>(); EmailSender emailSender = Messenger.CreateEmailSender(settings); if (emailSender != null) { int num = 0; short smtpServerConnectionLimit = config.SmtpServerConnectionLimit; foreach (System.Guid current in dictionary.Keys) { if (Messenger.SendMail(dictionary[current], emailSender)) { new EmailQueueDao().DeleteQueuedEmail(current); if (smtpServerConnectionLimit != -1 && ++num >= (int)smtpServerConnectionLimit) { System.Threading.Thread.Sleep(new System.TimeSpan(0, 0, 0, 15, 0)); num = 0; } } else { list.Add(current); } } if (list.Count > 0) { new EmailQueueDao().QueueSendingFailure(list, failureInterval, maxNumberOfTries); } } } }