in Mail2Bug/Mail2BugEngine.cs [57:92]
private void ProcessInboxInternal()
{
Logger.DebugFormat("Reading messages from inbox ({0})", _config.EmailSettings.IncomingFolder);
// Retreive the messages from the relevant mail folder
var inboxItemsList = _mailboxManager.ReadMessages().ToList();
if (inboxItemsList.Count == 0)
{
Logger.DebugFormat("No messages found for instance {0}", _config.Name);
return;
}
Logger.InfoFormat("Found {0} messages for Instance {1}. Processing...", inboxItemsList.Count, _config.Name);
foreach (var message in inboxItemsList)
{
var messageProcessedSuccessfully = true;
try
{
Logger.InfoFormat("Processing message {0}", message.Subject);
Logger.DebugFormat("Message sent on {0}", message.SentOn.ToLocalTime());
_messageProcessingStrategy.Value.ProcessInboxMessage(message);
Logger.InfoFormat("Message '{0}' processed successfully, moving to next message", message.Subject);
}
catch (Exception exception)
{
messageProcessedSuccessfully = false;
Logger.Error("Error processing message", exception);
}
finally
{
_mailboxManager.OnProcessingFinished(message, messageProcessedSuccessfully);
}
}
}