Exemple #1
0
 private static async Task GetMailboxJobAsync()
 {
     using (var client = new CSMMailServiceClient())
     {
         Task <JobTaskResponse> t      = client.GetMailboxAsync(WebConfig.GetWebUsername(), WebConfig.GetWebPassword());
         JobTaskResponse        result = await t;
     }
 }
Exemple #2
0
        public static void GetMailboxJobAsync()
        {
            try
            {
                Logger.Info("I:--START--");

                Task <JobTaskResponse> task;
                using (var client = new CSMMailServiceClient())
                {
                    task = client.GetMailboxAsync(WebConfig.GetTaskUsername(), WebConfig.GetTaskPassword());
                }

                while (!task.IsCompleted)
                {
                    Thread.Sleep(1000);
                }

                if (task.Exception != null)
                {
                    Logger.InfoFormat("O:--FAILED--:Exception/{0}", task.Exception);
                    Logger.Error("Exception occur:\n", task.Exception);

                    // Send mail to system administrator
                    _mailSender = TaskMailSender.GetTaskMailSender();
                    _mailSender.NotifySyncEmailFailed(WebConfig.GetTaskEmailToAddress(), DateTime.Now, task.Exception);
                    Thread.Sleep(5000);
                }
                //else
                //{
                //    var result = task.GetAwaiter().GetResult();
                //    Logger.InfoFormat("O:--SUCCESS--:Schedule DateTime/{0}:", result.SchedDateTime);

                //    // Send mail to system administrator
                //    SendMailTask(result);
                //}
            }
            catch (Exception ex)
            {
                Logger.InfoFormat("O:--FAILED--:Exception/{0}", ex.Message);
                Logger.Error("Exception occur:\n", ex);

                // Send mail to system administrator
                _mailSender = TaskMailSender.GetTaskMailSender();
                _mailSender.NotifySyncEmailFailed(WebConfig.GetTaskEmailToAddress(), DateTime.Now, new AggregateException(ex));
                Thread.Sleep(5000);
            }
        }