-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathEmailManager.cls
38 lines (33 loc) · 1.33 KB
/
EmailManager.cls
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
public class EmailManager {
// Public method
public void sendMail {String address, String subject, String body) {
// Create an email message subject
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
String[] toAddresses = new String[] {address};
mail.setToAddresses(toAddresses);
mail.setSubject(subject);
mail.setPlainTextBody(body);
// Pass this email message to the built-in sendEmail method of the Messaging class
Messaging.SendEmailResult[] results = Messaging.sendEmail(
new Messaging.SingleEmailMessage[] {mail});
// Call a helper method to inspect the returned results
inspectResults(results);
}
// Helper method
private static Boolean inspectResults(Messaging.SendEmailResult[] results) {
Boolean sendResults = true;
// sendEmail returns an array of result object
// Iterate through the list to inspect results
// in this class, the methods send only one email, so we should have one result.
for (Messaging.SendEmailResult res : results) {
if (res.isSuccess()) {
System.debug('Email sent successfully');
}
else {
sendResult = false;
System.debug('The following errors occured: ' + res.getErrors());
}
}
return sendResult;
}
}