@Override\r
public void sendHtmlMail(String subject, String message, String... toAddresses) {\r
}\r
+\r
+ @Override\r
+ public void sendHtmlMail(String from, String subject, String message, Collection<String> toAddresses) {\r
+ }\r
+\r
+ @Override\r
+ public void sendHtmlMail(String from, String subject, String message, String... toAddresses) {\r
+ }\r
}\r
}\r
import java.security.cert.X509Certificate;\r
import java.text.MessageFormat;\r
import java.util.ArrayList;\r
+import java.util.Arrays;\r
import java.util.Calendar;\r
import java.util.Collections;\r
import java.util.Date;\r
// send email\r
try {\r
if (mail.isReady()) {\r
- Message message = mail.createMessage(user.emailAddress);\r
+ Message message = mail.createMessage(Arrays.asList(user.emailAddress));\r
message.setSubject("Your Gitblit client certificate for " + metadata.serverHostname);\r
\r
// body of email\r
notificationManager.sendHtmlMail(subject, message, toAddresses);
}
+ @Override
+ public void sendHtmlMail(String from, String subject, String message, Collection<String> toAddresses) {
+ notificationManager.sendHtmlMail(from, subject, message, toAddresses);
+ }
+
+ @Override
+ public void sendHtmlMail(String from, String subject, String message, String... toAddresses) {
+ notificationManager.sendHtmlMail(from, subject, message, toAddresses);
+ }
+
/*
* SESSION MANAGER
*/
*/
void sendHtmlMail(String subject, String message, String... toAddresses);
+ /**
+ * Notify users by email of something.
+ *
+ * @param from
+ * @param subject
+ * @param message
+ * @param toAddresses
+ */
+ void sendHtmlMail(String from, String subject, String message, Collection<String> toAddresses);
+
+ /**
+ * Notify users by email of something.
+ *
+ * @param from
+ * @param subject
+ * @param message
+ * @param toAddresses
+ */
+ void sendHtmlMail(String from, String subject, String message, String... toAddresses);
+
}
\ No newline at end of file
*/
@Override
public void sendHtmlMail(String subject, String message, Collection<String> toAddresses) {
- this.sendHtmlMail(subject, message, toAddresses.toArray(new String[0]));
+ this.sendHtmlMail(null, subject, message, toAddresses.toArray(new String[0]));
+ }
+
+ /**
+ * Notify users by email of something.
+ *
+ * @param from
+ * @param subject
+ * @param message
+ * @param toAddresses
+ */
+ @Override
+ public void sendHtmlMail(String from, String subject, String message, Collection<String> toAddresses) {
+ this.sendHtmlMail(from, subject, message, toAddresses.toArray(new String[0]));
}
/**
*/
@Override
public void sendHtmlMail(String subject, String message, String... toAddresses) {
+ this.sendHtmlMail(null, message, toAddresses);
+ }
+
+ /**
+ * Notify users by email of something.
+ *
+ * @param from
+ * @param subject
+ * @param message
+ * @param toAddresses
+ */
+ @Override
+ public void sendHtmlMail(String from, String subject, String message, String... toAddresses) {
if (toAddresses == null || toAddresses.length == 0) {
- logger.debug(MessageFormat.format("Dropping message {0} because there are no recipients", subject));
+ logger.debug("Dropping message {} because there are no recipients", subject);
return;
}
try {
- Message mail = mailExecutor.createMessage(toAddresses);
+ Message mail = mailExecutor.createMessage(from, toAddresses);
if (mail != null) {
mail.setSubject(subject);
return session != null;\r
}\r
\r
-\r
/**\r
* Create a message.\r
*\r
* @return a message\r
*/\r
public Message createMessage(String... toAddresses) {\r
- return createMessage(Arrays.asList(toAddresses));\r
+ return createMessage(null, Arrays.asList(toAddresses));\r
}\r
\r
/**\r
* @return a message\r
*/\r
public Message createMessage(List<String> toAddresses) {\r
+ return createMessage(null, toAddresses);\r
+ }\r
+\r
+ /**\r
+ * Create a message.\r
+ *\r
+ * @param fromDisplayName\r
+ * @param toAddresses\r
+ * @return a message\r
+ */\r
+ public Message createMessage(String fromDisplayName, String... toAddresses) {\r
+ return createMessage(fromDisplayName, Arrays.asList(toAddresses));\r
+ }\r
+\r
+ /**\r
+ * Create a message.\r
+ *\r
+ * @param fromDisplayName\r
+ * @param toAddresses\r
+ * @return a message\r
+ */\r
+ public Message createMessage(String fromDisplayName, List<String> toAddresses) {\r
MimeMessage message = new MimeMessage(session);\r
try {\r
String fromAddress = settings.getString(Keys.mail.fromAddress, null);\r
if (StringUtils.isEmpty(fromAddress)) {\r
fromAddress = "gitblit@gitblit.com";\r
}\r
- InternetAddress from = new InternetAddress(fromAddress, "Gitblit");\r
+ InternetAddress from = new InternetAddress(fromAddress, fromDisplayName == null ? "Gitblit" : fromDisplayName);\r
message.setFrom(from);\r
\r
// determine unique set of addresses\r