Open Kilda Java Documentation
MailService.java
Go to the documentation of this file.
1 package org.usermanagement.service;
2 
3 import org.slf4j.Logger;
4 import org.slf4j.LoggerFactory;
5 
6 import org.springframework.beans.factory.annotation.Autowired;
7 import org.springframework.beans.factory.annotation.Value;
8 import org.springframework.mail.javamail.JavaMailSender;
9 import org.springframework.mail.javamail.MimeMessageHelper;
10 import org.springframework.stereotype.Service;
11 
12 import java.util.List;
13 import java.util.Map;
14 
15 import javax.mail.MessagingException;
16 import javax.mail.internet.MimeMessage;
17 
20 
21 
22 
26 @Service
27 public class MailService {
28 
30  private static final Logger LOGGER = LoggerFactory.getLogger(MailService.class);
31 
32  @Autowired
33  private TemplateService templateService;
34 
35  @Autowired
36  private JavaMailSender javaMailSender;
37 
38  @Value("${mail.from}")
39  private String from;
40 
49  public void send(final List<String> receivers, final String subject, final TemplateService.Template template,
50  final Map<String, Object> context) {
51  MimeMessage mimeMessage = javaMailSender.createMimeMessage();
52  MimeMessageHelper msg = new MimeMessageHelper(mimeMessage);
53  if (!CollectionUtils.isNullOrEmpty(receivers)) {
54 
55  try {
56  msg.setFrom(from);
57  msg.setSubject(subject);
58  msg.setTo(receivers.toArray(new String[receivers.size()]));
59  msg.setText(templateService.mergeTemplateToString(template, context), true);
60 
61  javaMailSender.send(mimeMessage);
62  LOGGER.info("Mail sent successfully. Subject: " + subject);
63  } catch (MessagingException e) {
64  LOGGER.error("Failed to send mail. Error: " + e.getMessage(), e);
65  }
66  }
67  }
68 
77  public void send(final String receiver, final String subject, final TemplateService.Template template, final Map<String, Object> context) {
78  MimeMessage mimeMessage = javaMailSender.createMimeMessage();
79  MimeMessageHelper msg = new MimeMessageHelper(mimeMessage);
80  if (!StringUtil.isNullOrEmpty(receiver)) {
81 
82  try {
83  msg.setFrom(from);
84  msg.setSubject(subject);
85  msg.setTo(receiver);
86  msg.setText(templateService.mergeTemplateToString(template, context), true);
87 
88  javaMailSender.send(mimeMessage);
89  LOGGER.info("Mail sent successfully. Subject: " + subject);
90  } catch (MessagingException e) {
91  LOGGER.error("Failed to send mail. Error: " + e.getMessage(), e);
92  }
93  }
94  }
95 }
void send(final List< String > receivers, final String subject, final TemplateService.Template template, final Map< String, Object > context)
void send(final String receiver, final String subject, final TemplateService.Template template, final Map< String, Object > context)
static boolean isNullOrEmpty(final Collection<?> collection)
static boolean isNullOrEmpty(final String data)
Definition: StringUtil.java:34