|
|
@ -1,5 +1,6 @@
|
|
|
|
package ru.ulstu.user.service;
|
|
|
|
package ru.ulstu.user.service;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
import org.slf4j.Logger;
|
|
|
|
import org.slf4j.Logger;
|
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
import org.springframework.boot.autoconfigure.mail.MailProperties;
|
|
|
|
import org.springframework.boot.autoconfigure.mail.MailProperties;
|
|
|
@ -21,11 +22,9 @@ import java.util.Map;
|
|
|
|
|
|
|
|
|
|
|
|
@Service
|
|
|
|
@Service
|
|
|
|
public class MailService {
|
|
|
|
public class MailService {
|
|
|
|
private final Logger log = LoggerFactory.getLogger(MailService.class);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static final String USER = "user";
|
|
|
|
private static final String USER = "user";
|
|
|
|
private static final String BASE_URL = "baseUrl";
|
|
|
|
private static final String BASE_URL = "baseUrl";
|
|
|
|
|
|
|
|
private final Logger log = LoggerFactory.getLogger(MailService.class);
|
|
|
|
private final JavaMailSender javaMailSender;
|
|
|
|
private final JavaMailSender javaMailSender;
|
|
|
|
private final SpringTemplateEngine templateEngine;
|
|
|
|
private final SpringTemplateEngine templateEngine;
|
|
|
|
private final MailProperties mailProperties;
|
|
|
|
private final MailProperties mailProperties;
|
|
|
@ -48,10 +47,18 @@ public class MailService {
|
|
|
|
message.setFrom(mailProperties.getUsername());
|
|
|
|
message.setFrom(mailProperties.getUsername());
|
|
|
|
message.setSubject(subject);
|
|
|
|
message.setSubject(subject);
|
|
|
|
message.setText(content, true);
|
|
|
|
message.setText(content, true);
|
|
|
|
|
|
|
|
modifyForDebug(message, subject);
|
|
|
|
javaMailSender.send(mimeMessage);
|
|
|
|
javaMailSender.send(mimeMessage);
|
|
|
|
log.debug("Sent email to User '{}'", to);
|
|
|
|
log.debug("Sent email to User '{}'", to);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void modifyForDebug(MimeMessageHelper message, String originalSubject) throws MessagingException {
|
|
|
|
|
|
|
|
if (!StringUtils.isEmpty(applicationProperties.getDebugEmail())) {
|
|
|
|
|
|
|
|
message.setTo(applicationProperties.getDebugEmail());
|
|
|
|
|
|
|
|
message.setSubject("To " + applicationProperties.getDebugEmail() + "; " + originalSubject);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Async
|
|
|
|
@Async
|
|
|
|
public void sendEmailFromTemplate(User user, String templateName, String subject) {
|
|
|
|
public void sendEmailFromTemplate(User user, String templateName, String subject) {
|
|
|
|
Context context = new Context();
|
|
|
|
Context context = new Context();
|
|
|
|