public async Task Handle(FileProcessedEvent message)
        {
            try
            {
                Log.Logger.Information("Message received in SendEmailWithResults: {@message}", message);

                var body = _mailMessageService.GetTemplateBasedMailBody("ResultsMailTemplate.html", message.DataFolder,
                                                                        "*.*", message.Email);
                var attachmentPaths = Directory.GetFiles(message.DataFolder, "*.Rout");
                var httpStatusCode  = _mailSender.SendMailAsync(
                    message.Email,
                    _appSettings.CcAddress,
                    _appSettings.SenderAddress,
                    _appSettings.SubjectResults + " " + message.Id,
                    body,
                    attachmentPaths)
                                      .Result;

                Log.Logger.Information($"Result of mail sending: {httpStatusCode}");

                await _bus.Bus.PublishAsync(Mapper.Map <FileReadyForCleanupEvent>(message))
                .ConfigureAwait(false);
            }
            catch (Exception e)
            {
                Log.Logger.Error(e, "Error during results sending");
                throw;
            }
        }
예제 #2
0
        public async Task Handle(FileUploadedEvent message)
        {
            try
            {
                Log.Logger.Information("Message received in SendEmailConfirmingUpload: {@message}", message);

                var body = _mailMessageService.GetTemplateBasedMailBody("ConfirmationMailTemplate.html",
                                                                        message.DataFolder, "*.*", message.Email);
                var httpStatusCode = _mailSender.SendMailAsync(
                    message.Email,
                    _appSettings.CcAddress,
                    _appSettings.SenderAddress,
                    _appSettings.SubjectConfirmation + " " + message.Id,
                    body,
                    new string[] { })
                                     .Result;

                Log.Logger.Information($"Result of mail sending: {httpStatusCode}");

                await _bus.Bus.PublishAsync(Mapper.Map <FileReadyForProcessingEvent>(message))
                .ConfigureAwait(false);
            }
            catch (Exception e)
            {
                Log.Logger.Error(e, "Error during email confirmation sending");
                throw;
            }
        }