(no commit message)
[utils] / crawler / kiss / src / org / wamblee / crawler / kiss / notification / MailNotifier.java
index 536135b28508288f65f42bf82f3ea3089584d66c..3b6431d763db1ec78e290fba51bf185e2a1309e0 100644 (file)
@@ -1,6 +1,17 @@
-/**
- * Copyright (c) 2005 UPS_SCS NL
- *  
+/*
+ * Copyright 2006 the original author or authors.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
  */
 package org.wamblee.crawler.kiss.notification;
 
@@ -15,8 +26,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.xml.ClasspathUriResolver;
-import org.wamblee.xml.XSLT;
+import org.wamblee.xml.XslTransformer;
 
 /**
  * A notifier that uses SMTP to notify users by mail.
@@ -35,6 +45,8 @@ public class MailNotifier implements Notifier {
     private String _textXslt;
 
     private MailServer _server;
+    
+    private XslTransformer _transformer;
 
     /**
      * Constructs the notifier.
@@ -51,15 +63,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;
     }
 
     /*
@@ -112,7 +126,6 @@ public class MailNotifier implements Notifier {
     private String transformReport(Element aReport, String aXslt)
             throws IOException, TransformerException {
         String reportXmlText = aReport.asXML();
-        XSLT xsltProcessor = new XSLT(new ClasspathUriResolver());
-        return xsltProcessor.textTransform(reportXmlText.getBytes(), xsltProcessor.resolve(aXslt));
+        return _transformer.textTransform(reportXmlText.getBytes(), _transformer.resolve(aXslt));
     }
 }