[ce6ad22] | 1 | package parkup.configs.email;
|
---|
| 2 |
|
---|
| 3 | import org.slf4j.Logger;
|
---|
| 4 | import org.slf4j.LoggerFactory;
|
---|
| 5 | import org.springframework.mail.javamail.JavaMailSender;
|
---|
| 6 | import org.springframework.mail.javamail.MimeMessageHelper;
|
---|
| 7 | import org.springframework.scheduling.annotation.Async;
|
---|
| 8 | import org.springframework.stereotype.Service;
|
---|
| 9 |
|
---|
| 10 | import javax.mail.MessagingException;
|
---|
| 11 | import javax.mail.internet.MimeMessage;
|
---|
| 12 |
|
---|
| 13 | @Service
|
---|
| 14 | public class EmailService implements EmailSender{
|
---|
| 15 |
|
---|
| 16 | private final static Logger LOGGER = LoggerFactory.getLogger(EmailService.class);
|
---|
| 17 | private final JavaMailSender mailSender;
|
---|
| 18 |
|
---|
| 19 | public EmailService(JavaMailSender mailSender) {
|
---|
| 20 | this.mailSender = mailSender;
|
---|
| 21 | }
|
---|
| 22 |
|
---|
| 23 | @Override
|
---|
| 24 | @Async
|
---|
| 25 | public void send(String to, String email) {
|
---|
| 26 | try {
|
---|
| 27 | MimeMessage mimeMessage = mailSender.createMimeMessage();
|
---|
| 28 | MimeMessageHelper helper =
|
---|
| 29 | new MimeMessageHelper(mimeMessage, "utf-8");
|
---|
| 30 | helper.setText(email, true);
|
---|
| 31 | helper.setTo(to);
|
---|
| 32 | helper.setSubject("Confirm your email");
|
---|
| 33 | helper.setFrom("parkup@gmail.com");
|
---|
| 34 | mailSender.send(mimeMessage);
|
---|
| 35 | } catch (MessagingException e) {
|
---|
| 36 | LOGGER.error("failed to send email", e);
|
---|
| 37 | throw new IllegalStateException("failed to send email");
|
---|
| 38 | }
|
---|
| 39 | }
|
---|
| 40 | }
|
---|
| 41 |
|
---|