Example #1
0
        /// <summary>
        /// Initial syncing of emails in the database.
        /// </summary>
        /// <returns>Task which syncs the emails.</returns>
        public async Task InitialEmailsSyncAsync()
        {
            IEnumerable <Email> emails;

            if (_lastEmail != null)
            {
                Console.WriteLine($"Getting emails from {_lastEmail.DateRetrieved.UtcDateTime.ToString("O")}");
                emails = await _emailRetriever.GetEmailsFromDate(_lastEmail.DateRetrieved);
            }
            else
            {
                emails = await _emailRetriever.GetAllEmails();
            }

            if (emails != null)
            {
                await _emailStorage.SaveEmails(emails);
            }
            else
            {
                Console.WriteLine("Error retrieving emails.");
            }
        }