From efbc03f9c43f96a46af6a9c820d44bdb6c699d33 Mon Sep 17 00:00:00 2001 From: L_DelOff <51275636+LDelOff@users.noreply.github.com> Date: Wed, 10 May 2023 12:03:23 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A1=D0=B5=D1=80=D0=B2=D0=B8=D1=81=20=D0=BE?= =?UTF-8?q?=D1=82=D0=BF=D1=80=D0=B0=D0=B2=D0=BA=D0=B8=20=D0=BF=D0=BE=D1=87?= =?UTF-8?q?=D1=82=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ldeloff/service/DefaultEmailService.java | 43 +++++++++++++++++++ .../java/ru/ldeloff/service/EmailService.java | 9 ++++ 2 files changed, 52 insertions(+) create mode 100644 src/main/java/ru/ldeloff/service/DefaultEmailService.java create mode 100644 src/main/java/ru/ldeloff/service/EmailService.java diff --git a/src/main/java/ru/ldeloff/service/DefaultEmailService.java b/src/main/java/ru/ldeloff/service/DefaultEmailService.java new file mode 100644 index 0000000..129b479 --- /dev/null +++ b/src/main/java/ru/ldeloff/service/DefaultEmailService.java @@ -0,0 +1,43 @@ +package ru.ldeloff.service; + +import org.springframework.core.io.FileSystemResource; +import org.springframework.mail.SimpleMailMessage; +import org.springframework.mail.javamail.JavaMailSender; +import org.springframework.mail.javamail.MimeMessageHelper; +import org.springframework.stereotype.Service; +import org.springframework.util.ResourceUtils; + +import javax.mail.MessagingException; +import javax.mail.internet.MimeMessage; +import java.io.FileNotFoundException; + +@Service +public class DefaultEmailService implements EmailService { + + public final JavaMailSender emailSender; + + public DefaultEmailService(JavaMailSender emailSender) { + this.emailSender = emailSender; + } + + @Override + public void sendSimpleEmail(String toAddress, String subject, String message) { + SimpleMailMessage simpleMailMessage = new SimpleMailMessage(); + simpleMailMessage.setTo(toAddress); + simpleMailMessage.setSubject(subject); + simpleMailMessage.setText(message); + emailSender.send(simpleMailMessage); + } + + @Override + public void sendEmailWithAttachment(String toAddress, String subject, String message, String attachment) throws MessagingException, FileNotFoundException { + MimeMessage mimeMessage = emailSender.createMimeMessage(); + MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage, true); + messageHelper.setTo(toAddress); + messageHelper.setSubject(subject); + messageHelper.setText(message); + FileSystemResource file = new FileSystemResource(ResourceUtils.getFile(attachment)); + messageHelper.addAttachment("Purchase Order", file); + emailSender.send(mimeMessage); + } +} \ No newline at end of file diff --git a/src/main/java/ru/ldeloff/service/EmailService.java b/src/main/java/ru/ldeloff/service/EmailService.java new file mode 100644 index 0000000..bbc7aef --- /dev/null +++ b/src/main/java/ru/ldeloff/service/EmailService.java @@ -0,0 +1,9 @@ +package ru.ldeloff.service; + +import javax.mail.MessagingException; +import java.io.FileNotFoundException; + +public interface EmailService { + void sendSimpleEmail(final String toAddress, final String subject, final String message); + void sendEmailWithAttachment(final String toAddress, final String subject, final String message, final String attachment) throws MessagingException, FileNotFoundException; +}