(no commit message)
[utils] / crawler / kiss / src / org / wamblee / crawler / kiss / main / KissCrawler.java
index 0c01a9bcc3e9a712df3a3553a54c265b1e4b7cc0..976d7d15de9382361f0cfe3118c1838d5cc9cfb9 100644 (file)
@@ -62,16 +62,6 @@ public class KissCrawler {
      */
     private static final String START_URL = "http://epg.kml.kiss-technology.com/login_core.php";
 
-    /**
-     * Crawler configuration file.
-     */
-    private static final String CRAWLER_CONFIG = "config.xml";
-
-    /**
-     * Configuration file describing interesting programs.
-     */
-    private static final String PROGRAM_CONFIG = "programs.xml";
-
     /**
      * Regular expression for matching time interval strings in the retrieved
      * pages.
@@ -92,8 +82,30 @@ public class KissCrawler {
      *             In case of problems.
      */
     public static void main(String[] aArgs) throws Exception {
-        new KissCrawler(START_URL, CRAWLER_CONFIG, PROGRAM_CONFIG);
+        String crawlerConfig = new File(aArgs[0]).getCanonicalPath(); 
+        String programConfig = new File(aArgs[1]).getCanonicalPath(); 
+        new KissCrawler(START_URL, crawlerConfig, programConfig);
     }
+    
+    /**
+     * Constructs the crawler. This retrieves the TV guide by crawling the KiSS
+     * EPG guide, filters the guide for interesting programs, tries to record
+     * them, and sends a summary mail to the user.
+     * 
+     * @param aCrawlerConfig
+     *            Configuration file for the crawler.
+     * @param aProgramConfig
+     *            Configuration file describing interesting shows.
+     * @throws IOException
+     *             In case of problems reading files.
+     * @throws MessagingException
+     *             In case of problems sending a mail notification.
+     */
+    public KissCrawler(String aCrawlerConfig,
+            String aProgramConfig) throws IOException, NotificationException {
+        this(START_URL, aCrawlerConfig, aProgramConfig);
+    }
+
 
     /**
      * Constructs the crawler. This retrieves the TV guide by crawling the KiSS
@@ -220,7 +232,7 @@ public class KissCrawler {
             }
             return favorites.execute();
         } catch (PageException e) {
-            String msg = "Could not login to electronic programme guide.";
+            String msg = "Could not complete login to electronic programme guide.";
             throw new PageException(msg, e);
         }
     }