From d62660907eb707c41d5e995b09280dea9dc2ab2a Mon Sep 17 00:00:00 2001 From: Erik Brakkee Date: Tue, 21 Mar 2006 18:47:55 +0000 Subject: [PATCH] --- .../wamblee/crawler/kiss/MailNotifier.java | 88 ++++++++++++------- 1 file changed, 54 insertions(+), 34 deletions(-) diff --git a/crawler/kiss/src/org/wamblee/crawler/kiss/MailNotifier.java b/crawler/kiss/src/org/wamblee/crawler/kiss/MailNotifier.java index c8074ced..ab0c5469 100644 --- a/crawler/kiss/src/org/wamblee/crawler/kiss/MailNotifier.java +++ b/crawler/kiss/src/org/wamblee/crawler/kiss/MailNotifier.java @@ -25,80 +25,100 @@ import org.wamblee.io.InputResource; import org.wamblee.xml.XSLT; /** - * A notifier that uses SMTP to notify users by mail. - * + * A notifier that uses SMTP to notify users by mail. + * */ public class MailNotifier implements Notifier { - + private String _from; + private String _to; + private String _subject; + private String _htmlXslt; + private String _textXslt; + private MailServer _server; - + /** - * Constructs the notifier. + * Constructs the notifier. * - * @param aFrom Sender mail address to use. - * @param aTo Recipient mail address to use. - * @param aSubject Subject to use in the email. - * @param aHtmlXslt XSLT file to transform the report into HTML. - * @param aTextXslt XSLT file to transform the report into text. - * @param aServer Mail server to use. + * @param aFrom + * Sender mail address to use. + * @param aTo + * Recipient mail address to use. + * @param aSubject + * Subject to use in the email. + * @param aHtmlXslt + * XSLT file to transform the report into HTML. + * @param aTextXslt + * XSLT file to transform the report into text. + * @param aServer + * Mail server to use. */ - public MailNotifier( String aFrom, String aTo, String aSubject, + public MailNotifier(String aFrom, String aTo, String aSubject, String aHtmlXslt, String aTextXslt, MailServer aServer) { _from = aFrom; _to = aTo; _subject = aSubject; _htmlXslt = aHtmlXslt; - _textXslt = aTextXslt; + _textXslt = aTextXslt; _server = aServer; } /* - * (non-Javadoc) + * (non-Javadoc) + * * @see org.wamblee.crawler.kiss.Notifier#send(org.dom4j.Element) */ - public void send( Element aReport ) throws NotificationException { + public void send(Element aReport) throws NotificationException { HtmlEmail mail = new HtmlEmail(); try { mail.setFrom(_from); - mail.setTo(Arrays.asList(new InternetAddress[] { new InternetAddress(_to) })); + mail + .setTo(Arrays + .asList(new InternetAddress[] { new InternetAddress( + _to) })); 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, new FileResource( + new File(_htmlXslt))); + String plainText = transformReport(aReport, new FileResource( + new File(_textXslt))); + mail.setHtmlMsg(htmlText); mail.setTextMsg(plainText); - + _server.send(mail); - } - catch (EmailException e) { + } catch (EmailException e) { throw new NotificationException(e.getMessage(), e); - } catch (TransformerException e) { + } catch (TransformerException e) { throw new NotificationException(e.getMessage(), e); - } catch (IOException e) { + } catch (IOException e) { throw new NotificationException(e.getMessage(), e); - } catch (AddressException e) { + } catch (AddressException e) { throw new NotificationException(e.getMessage(), e); } } /** * Transforms a report into a destination format. - * @param aReport Report to transform - * @param aXslt XSLT to use. - * @return Transformed result. - * @throws IOException In case of IO problems. - * @throws TransformerException In case of problems transforming. + * + * @param aReport + * Report to transform + * @param aXslt + * XSLT to use. + * @return Transformed result. + * @throws IOException + * In case of IO problems. + * @throws TransformerException + * In case of problems transforming. */ - private String transformReport( Element aReport, InputResource aXslt ) throws IOException, TransformerException { + private String transformReport(Element aReport, InputResource aXslt) + throws IOException, TransformerException { String reportXmlText = aReport.asXML(); return new XSLT().textTransform(reportXmlText.getBytes(), aXslt); } -- 2.31.1