X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=crawler%2Fkiss%2Fsrc%2Forg%2Fwamblee%2Fcrawler%2Fkiss%2FProgramConfigurationParser.java;h=3237ca79a449d140001b072d95fa266781fa644b;hb=7e86d075a568401dc93f0f58b10dd458357a48fd;hp=b75d3e058b765f4a470ed39675b9d8b416adeddc;hpb=bd7ff4fd9e484dfe7c723c3b1e12fddc03efc9ea;p=utils diff --git a/crawler/kiss/src/org/wamblee/crawler/kiss/ProgramConfigurationParser.java b/crawler/kiss/src/org/wamblee/crawler/kiss/ProgramConfigurationParser.java index b75d3e05..3237ca79 100644 --- a/crawler/kiss/src/org/wamblee/crawler/kiss/ProgramConfigurationParser.java +++ b/crawler/kiss/src/org/wamblee/crawler/kiss/ProgramConfigurationParser.java @@ -18,14 +18,9 @@ package org.wamblee.crawler.kiss; import java.io.InputStream; import java.util.ArrayList; -import java.util.Arrays; -import java.util.Date; import java.util.Iterator; import java.util.List; -import javax.mail.internet.InternetAddress; - -import org.apache.commons.mail.SimpleEmail; import org.dom4j.Attribute; import org.dom4j.Document; import org.dom4j.DocumentException; @@ -40,6 +35,36 @@ import org.wamblee.conditions.PropertyRegexCondition; */ class ProgramConfigurationParser { + private static final String ELEM_PASSWORD = "password"; + + private static final String ELEM_USERNAME = "username"; + + private static final String ELEM_PORT = "port"; + + private static final String ELEM_HOST = "host"; + + // Formatting configuration. + private static final String ELEM_FORMAT = "format"; + + private static final String ELEM_TEXT = "text"; + + private static final String ELEM_HTML = "html"; + + + // Mail server configuration. + + private static final String ELEM_NOTIFICATION = "notification"; + + private static final String ELEM_SMTP = "smtp"; + + private static final String ELEM_SUBJECT = "subject"; + + private static final String ELEM_TO = "to"; + + private static final String ELEM_FROM = "from"; + + // Configuration of interesting programs. + private static final String ELEM_PROGRAM = "program"; private static final String ELEM_PATTERN = "match"; @@ -109,7 +134,7 @@ class ProgramConfigurationParser { } _filters = filters; - Element notifier = root.element("notification"); + Element notifier = root.element(ELEM_NOTIFICATION); _notifier = parseNotifier(notifier); } catch (DocumentException e) { @@ -122,33 +147,34 @@ class ProgramConfigurationParser { * @return Notifier */ private Notifier parseNotifier(Element aNotifier) { - String from = aNotifier.elementTextTrim("from"); - String to = aNotifier.elementTextTrim("to"); - String subject = aNotifier.elementTextTrim("subject"); + String from = aNotifier.elementTextTrim(ELEM_FROM); + String to = aNotifier.elementTextTrim(ELEM_TO); + String subject = aNotifier.elementTextTrim(ELEM_SUBJECT); - Element smtp = aNotifier.element("smtp"); + Element smtp = aNotifier.element(ELEM_SMTP); MailServer server = parseMailServer( smtp ); - Element format = aNotifier.element("format"); - String htmlXslt = format.elementTextTrim("html"); - String textXslt = format.elementTextTrim("text"); + Element format = aNotifier.element(ELEM_FORMAT); + String htmlXslt = format.elementTextTrim(ELEM_HTML); + String textXslt = format.elementTextTrim(ELEM_TEXT); return new MailNotifier(from, to, subject, htmlXslt, textXslt, server); } /** - * @param smtp - * @return + * Parses the mail server from the XML. + * @param aSmtp Mail server configuration. + * @return Mail server. */ - private MailServer parseMailServer( Element smtp ) { - String host = smtp.elementTextTrim("host"); - Element portElem = smtp.element("port"); + private MailServer parseMailServer( Element aSmtp ) { + String host = aSmtp.elementTextTrim(ELEM_HOST); + Element portElem = aSmtp.element(ELEM_PORT); int port = 25; if ( portElem != null ) { port = Integer.valueOf(portElem.getTextTrim()); } - String username = smtp.elementTextTrim("username"); - String password = smtp.elementTextTrim("password"); + String username = aSmtp.elementTextTrim(ELEM_USERNAME); + String password = aSmtp.elementTextTrim(ELEM_PASSWORD); MailServer server = new MailServer(host, port, username, password); return server;