refactoring
diff --git a/org.eclipse.osbp.utils.email.feature/feature.xml b/org.eclipse.osbp.utils.email.feature/feature.xml
index 4252f17..2d2adc0 100644
--- a/org.eclipse.osbp.utils.email.feature/feature.xml
+++ b/org.eclipse.osbp.utils.email.feature/feature.xml
@@ -3,7 +3,8 @@
id="org.eclipse.osbp.utils.email.feature"
label="%featureName"
version="0.9.0.qualifier"
- provider-name="%providerName">
+ provider-name="%providerName"
+ plugin="org.eclipse.osbp.license">
<description>
%description
diff --git a/org.eclipse.osbp.utils.email/src/org/eclipse/osbp/utils/email/common/Email.java b/org.eclipse.osbp.utils.email/src/org/eclipse/osbp/utils/email/common/Email.java
index f2ae505..7334386 100644
--- a/org.eclipse.osbp.utils.email/src/org/eclipse/osbp/utils/email/common/Email.java
+++ b/org.eclipse.osbp.utils.email/src/org/eclipse/osbp/utils/email/common/Email.java
@@ -32,7 +32,7 @@
private static Logger log = LoggerFactory.getLogger(Email.class);
- private MultiPartEmail email;
+ private MultiPartEmail mail;
private List<String> toAddresses;
private String from;
@@ -40,27 +40,27 @@
public Email() {
log.debug("Instantiate Email");
- email = new MultiPartEmail();
- email.setDebug(log.isDebugEnabled());
+ mail = new MultiPartEmail();
+ mail.setDebug(log.isDebugEnabled());
- email.setHostName(ProductConfiguration.getEmailServerIp());
+ mail.setHostName(ProductConfiguration.getEmailServerIp());
if (ProductConfiguration.isEmailUseSslOnConnect()) {
Integer port = ProductConfiguration.getEmailSmtpPort();
- email.setSslSmtpPort(port.toString());
- email.setSSLOnConnect(true);
+ mail.setSslSmtpPort(port.toString());
+ mail.setSSLOnConnect(true);
} else {
- email.setSmtpPort(ProductConfiguration.getEmailSmtpPort());
- email.setSSLOnConnect(false);
+ mail.setSmtpPort(ProductConfiguration.getEmailSmtpPort());
+ mail.setSSLOnConnect(false);
}
if (!ProductConfiguration.getAdminEmailUsername().isEmpty()) {
- email.setAuthenticator(new DefaultAuthenticator(ProductConfiguration.getAdminEmailUsername(),
+ mail.setAuthenticator(new DefaultAuthenticator(ProductConfiguration.getAdminEmailUsername(),
ProductConfiguration.getAdminEmailPassword()));
}
String charset = "utf-8";
- email.setCharset(charset);
+ mail.setCharset(charset);
setFrom(ProductConfiguration.getAdminEmail());
toAddresses = new ArrayList<>();
@@ -72,7 +72,7 @@
try {
if (!from.isEmpty()) {
log.debug("set From: {}", from);
- email.setFrom(from);
+ mail.setFrom(from);
this.from = from;
}
} catch (Exception e) {
@@ -92,7 +92,7 @@
if (!to.isEmpty() && !(toAddresses.contains(to))) {
log.debug("set To: {}", to);
toAddresses.add(to);
- email.addTo(to);
+ mail.addTo(to);
} else {
log.debug("skip To: {}", to);
}
@@ -101,12 +101,12 @@
}
}
- public void setCC(String to) {
+ public void setCc(String to) {
try {
if (!to.isEmpty() && !(toAddresses.contains(to))) {
log.debug("set CC: {}", to);
toAddresses.add(to);
- email.addCc(to);
+ mail.addCc(to);
} else {
log.debug("skip CC: {}", to);
}
@@ -115,12 +115,12 @@
}
}
- public void setBCC(String to) {
+ public void setBcc(String to) {
try {
if (!to.isEmpty() && !(toAddresses.contains(to))) {
log.debug("set BCC: {}", to);
toAddresses.add(to);
- email.addBcc(to);
+ mail.addBcc(to);
} else {
log.debug("skip BCC: {}", to);
}
@@ -132,7 +132,7 @@
public void setSubject(String subject) {
try {
log.debug("set Subject: {}", subject);
- email.setSubject(subject);
+ mail.setSubject(subject);
} catch (Exception e) {
log.error("set Subject: {}", e.getMessage());
}
@@ -145,14 +145,18 @@
MimeMultipart multiPart = new MimeMultipart("alternative");
MimeBodyPart textPart = new MimeBodyPart();
- textPart.setText(body.replaceAll("</*b>", "*").replaceAll("<br>", "").replaceAll("</*t[r|h|d]>", "").replaceAll("</*table>", ""), "utf-8");
+ String text=body.replaceAll("</*b>", "").replaceAll("</div>", "\n ").replaceAll("<br>", "\n ").replaceAll("</*t[r|h|d]>", "").replaceAll("</*table>", "");
+ text=text.replaceAll("(?s)<[^>]*>(\\s*<[^>]*>)*", "");
+ textPart.setText(text, "utf-8");
+ textPart.setHeader("Content-Transfer-Encoding", "base64");
MimeBodyPart htmlPart = new MimeBodyPart();
htmlPart.setContent(body, "text/html; charset=utf-8");
+ htmlPart.setHeader("Content-Transfer-Encoding", "base64");
multiPart.addBodyPart(textPart); // <-- first
multiPart.addBodyPart(htmlPart); // <-- second
- email.addPart(multiPart);
+ mail.addPart(multiPart);
} catch (Exception e) {
log.error("set Body: {}", e.getMessage());
}
@@ -163,9 +167,9 @@
try {
if (b) {
log.debug("set Highprio ");
- email.addHeader("X-Priority","1");
- email.addHeader("X-MSMail-Priority","High");
- email.addHeader("Importance","High");
+ mail.addHeader("X-Priority","1");
+ mail.addHeader("X-MSMail-Priority","High");
+ mail.addHeader("Importance","High");
}
} catch (Exception e) {
log.error("set Highprio: {}", e.getMessage());
@@ -178,8 +182,8 @@
try {
// Send message
log.debug("send mail ...");
- email.setSentDate(new Date());
- email.send();
+ mail.setSentDate(new Date());
+ mail.send();
} catch (Exception e) {
log.error("Send mail: {}", e.getMessage());
}