X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=crawler%2Fkiss%2Fsrc%2Forg%2Fwamblee%2Fcrawler%2Fkiss%2Fnotification%2FMailNotifier.java;h=558a7738a377cf9a63585f9d95c5327b87525cf9;hb=b06adf8c8248a4d677faba42fa1cfdb790ddfde7;hp=47c3edd59c19d3be265f25403a8062b667986be6;hpb=01c0abdc7d3339b36216665ff70c99ba3e50c180;p=utils diff --git a/crawler/kiss/src/org/wamblee/crawler/kiss/notification/MailNotifier.java b/crawler/kiss/src/org/wamblee/crawler/kiss/notification/MailNotifier.java index 47c3edd5..558a7738 100644 --- a/crawler/kiss/src/org/wamblee/crawler/kiss/notification/MailNotifier.java +++ b/crawler/kiss/src/org/wamblee/crawler/kiss/notification/MailNotifier.java @@ -4,7 +4,6 @@ */ package org.wamblee.crawler.kiss.notification; -import java.io.File; import java.io.IOException; import java.util.Arrays; import java.util.Date; @@ -16,9 +15,7 @@ import javax.xml.transform.TransformerException; import org.apache.commons.mail.EmailException; import org.apache.commons.mail.HtmlEmail; import org.dom4j.Element; -import org.wamblee.io.FileResource; -import org.wamblee.io.InputResource; -import org.wamblee.xml.XSLT; +import org.wamblee.xml.XslTransformer; /** * A notifier that uses SMTP to notify users by mail. @@ -37,6 +34,8 @@ public class MailNotifier implements Notifier { private String _textXslt; private MailServer _server; + + private XslTransformer _transformer; /** * Constructs the notifier. @@ -53,15 +52,17 @@ public class MailNotifier implements Notifier { * XSLT file to transform the report into text. * @param aServer * Mail server to use. + * @param aTransformer Transformer to use. */ public MailNotifier(String aFrom, String aTo, String aSubject, - String aHtmlXslt, String aTextXslt, MailServer aServer) { + String aHtmlXslt, String aTextXslt, MailServer aServer, XslTransformer aTransformer) { _from = aFrom; _to = aTo; _subject = aSubject; _htmlXslt = aHtmlXslt; _textXslt = aTextXslt; _server = aServer; + _transformer = aTransformer; } /* @@ -80,10 +81,8 @@ public class MailNotifier implements Notifier { mail.setSentDate(new Date()); mail.setSubject(_subject); - String htmlText = transformReport(aReport, new FileResource( - new File(_htmlXslt))); - String plainText = transformReport(aReport, new FileResource( - new File(_textXslt))); + String htmlText = transformReport(aReport, _htmlXslt); + String plainText = transformReport(aReport, _textXslt); mail.setHtmlMsg(htmlText); mail.setTextMsg(plainText); @@ -113,9 +112,9 @@ public class MailNotifier implements Notifier { * @throws TransformerException * In case of problems transforming. */ - private String transformReport(Element aReport, InputResource aXslt) + private String transformReport(Element aReport, String aXslt) throws IOException, TransformerException { String reportXmlText = aReport.asXML(); - return new XSLT().textTransform(reportXmlText.getBytes(), aXslt); + return _transformer.textTransform(reportXmlText.getBytes(), _transformer.resolve(aXslt)); } }