Moved crawler to
authorErik Brakkee <erik@brakkee.org>
Mon, 12 Apr 2010 20:02:23 +0000 (20:02 +0000)
committerErik Brakkee <erik@brakkee.org>
Mon, 12 Apr 2010 20:02:23 +0000 (20:02 +0000)
https://wamblee.org/svn/public/crawler

180 files changed:
crawler/ABOUT.txt [deleted file]
crawler/basic/ABOUT.txt [deleted file]
crawler/basic/deps.xml [deleted file]
crawler/basic/pom.xml [deleted file]
crawler/basic/src/log4j.properties [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/AbstractPageRequest.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/Action.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/Configuration.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/Crawler.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/GetPageRequest.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/Page.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/PageException.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/PageRequest.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/PageType.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/PostPageRequest.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/impl/ActionImpl.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/impl/App.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/impl/ConfigItem.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/impl/ConfigurationImpl.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/impl/ConfigurationParser.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/impl/CrawlerImpl.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/impl/PageImpl.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/impl/PageTypeConfig.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/impl/UrlConfig.java [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/impl/package.html [deleted file]
crawler/basic/src/main/java/org/wamblee/crawler/package.html [deleted file]
crawler/kiss/ABOUT.txt [deleted file]
crawler/kiss/conf/kiss/config.xml.example [deleted file]
crawler/kiss/conf/kiss/org.wamblee.crawler.properties [deleted file]
crawler/kiss/conf/kiss/programs.xml [deleted file]
crawler/kiss/conf/kiss/run.bat [deleted file]
crawler/kiss/conf/kiss/run.sh [deleted file]
crawler/kiss/conf/xml/channel-overview.xml [deleted file]
crawler/kiss/conf/xml/channel-right-now-graphic.xml [deleted file]
crawler/kiss/conf/xml/channel-right-now-mobile-output.xml [deleted file]
crawler/kiss/conf/xml/channel-right-now-mobile.xml [deleted file]
crawler/kiss/conf/xml/channel-right-now-output.xml [deleted file]
crawler/kiss/conf/xml/channel-right-now.xml [deleted file]
crawler/kiss/conf/xml/channels-favorites-graphic-output.xml [deleted file]
crawler/kiss/conf/xml/channels-favorites-graphic.xml [deleted file]
crawler/kiss/conf/xml/channels-favorites-output.xml [deleted file]
crawler/kiss/conf/xml/channels-favorites.xml [deleted file]
crawler/kiss/conf/xml/channels-whats-on.xml [deleted file]
crawler/kiss/conf/xml/login-graphic.xml [deleted file]
crawler/kiss/conf/xml/login-mobile-output.xml [deleted file]
crawler/kiss/conf/xml/login-mobile.xml [deleted file]
crawler/kiss/conf/xml/login-output.xml [deleted file]
crawler/kiss/conf/xml/login.xml [deleted file]
crawler/kiss/conf/xml/mainpage.xml [deleted file]
crawler/kiss/conf/xml/program-info-mobile-output.xml [deleted file]
crawler/kiss/conf/xml/program-info-mobile.xml [deleted file]
crawler/kiss/conf/xml/program-info-output.xml [deleted file]
crawler/kiss/conf/xml/program-info.xml [deleted file]
crawler/kiss/conf/xml/record-alreadyrecorded.xml [deleted file]
crawler/kiss/conf/xml/record-conflict.xml [deleted file]
crawler/kiss/conf/xml/record-ok.xml [deleted file]
crawler/kiss/conf/xml/report.xml [deleted file]
crawler/kiss/deps.xml [deleted file]
crawler/kiss/docs/README.txt [deleted file]
crawler/kiss/docs/classes/CatalogManager.properties [deleted file]
crawler/kiss/docs/content/test1.html [deleted file]
crawler/kiss/docs/content/xdocs/details.html [deleted file]
crawler/kiss/docs/content/xdocs/hello.pdf [deleted file]
crawler/kiss/docs/content/xdocs/images/group-logo.gif [deleted file]
crawler/kiss/docs/content/xdocs/images/group.svg [deleted file]
crawler/kiss/docs/content/xdocs/images/icon.png [deleted file]
crawler/kiss/docs/content/xdocs/images/project-logo.gif [deleted file]
crawler/kiss/docs/content/xdocs/images/project.svg [deleted file]
crawler/kiss/docs/content/xdocs/images/usemap.gif [deleted file]
crawler/kiss/docs/content/xdocs/index.xml [deleted file]
crawler/kiss/docs/content/xdocs/main.html [deleted file]
crawler/kiss/docs/content/xdocs/samples/ascii-art.xml [deleted file]
crawler/kiss/docs/content/xdocs/samples/cocoon-pyramid.aart [deleted file]
crawler/kiss/docs/content/xdocs/samples/custom.xml [deleted file]
crawler/kiss/docs/content/xdocs/samples/customSchema.xml [deleted file]
crawler/kiss/docs/content/xdocs/samples/document-v13.xml [deleted file]
crawler/kiss/docs/content/xdocs/samples/embedded_html.html [deleted file]
crawler/kiss/docs/content/xdocs/samples/faq.xml [deleted file]
crawler/kiss/docs/content/xdocs/samples/hello-v10.dtd [deleted file]
crawler/kiss/docs/content/xdocs/samples/helloAgain.pdf [deleted file]
crawler/kiss/docs/content/xdocs/samples/index.xml [deleted file]
crawler/kiss/docs/content/xdocs/samples/linking.xml [deleted file]
crawler/kiss/docs/content/xdocs/samples/sample.xml [deleted file]
crawler/kiss/docs/content/xdocs/samples/static.xml [deleted file]
crawler/kiss/docs/content/xdocs/samples/subdir/book-sample.xml [deleted file]
crawler/kiss/docs/content/xdocs/samples/subdir/hello.zip [deleted file]
crawler/kiss/docs/content/xdocs/samples/subdir/index.xml [deleted file]
crawler/kiss/docs/content/xdocs/samples/usemap.xml [deleted file]
crawler/kiss/docs/content/xdocs/site.xml [deleted file]
crawler/kiss/docs/content/xdocs/tabs.xml [deleted file]
crawler/kiss/docs/resources/schema/catalog.xcat [deleted file]
crawler/kiss/docs/resources/schema/hello-v10.dtd [deleted file]
crawler/kiss/docs/resources/stylesheets/hello2document.xsl [deleted file]
crawler/kiss/docs/sitemap.xmap [deleted file]
crawler/kiss/docs/skinconf.xml [deleted file]
crawler/kiss/docs/translations/langcode.xml [deleted file]
crawler/kiss/docs/translations/languages_en.xml [deleted file]
crawler/kiss/docs/translations/languages_es.xml [deleted file]
crawler/kiss/docs/translations/menu.xml [deleted file]
crawler/kiss/docs/translations/menu_af.xml [deleted file]
crawler/kiss/docs/translations/menu_de.xml [deleted file]
crawler/kiss/docs/translations/menu_es.xml [deleted file]
crawler/kiss/docs/translations/menu_it.xml [deleted file]
crawler/kiss/docs/translations/menu_no.xml [deleted file]
crawler/kiss/docs/translations/menu_ru.xml [deleted file]
crawler/kiss/docs/translations/menu_sk.xml [deleted file]
crawler/kiss/docs/translations/tabs.xml [deleted file]
crawler/kiss/docs/translations/tabs_es.xml [deleted file]
crawler/kiss/forrest.properties [deleted file]
crawler/kiss/pom.xml [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/AbstractVisitor.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/Channel.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/MatchVisitor.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/PrintVisitor.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/Program.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/TVGuide.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/Time.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/TimeInterval.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/Visitor.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/package.html [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/InterestingProgramAction.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/KissCrawler.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/KissCrawlerBootstrapper.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/ProgramAction.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/ProgramActionExecutor.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/ProgramConfigurationParser.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/ProgramFilter.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/RecordProgramAction.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/Report.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/StandaloneCrawlerBeanFactory.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/SystemProperties.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/package.html [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/MailNotifier.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/MailServer.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/NotificationException.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/Notifier.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/UsernamePasswordAuthenticator.java [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/package.html [deleted file]
crawler/kiss/src/main/java/org/wamblee/crawler/kiss/package.html [deleted file]
crawler/kiss/src/main/resources/channel-overview.xsl [deleted file]
crawler/kiss/src/main/resources/channel-right-now-graphic.xsl [deleted file]
crawler/kiss/src/main/resources/channel-right-now-mobile.xsl [deleted file]
crawler/kiss/src/main/resources/channel-right-now-output.xml [deleted file]
crawler/kiss/src/main/resources/channel-right-now.xsl [deleted file]
crawler/kiss/src/main/resources/channels-favorites-graphic.xsl [deleted file]
crawler/kiss/src/main/resources/channels-favorites.xsl [deleted file]
crawler/kiss/src/main/resources/crawler-standalone.xml [deleted file]
crawler/kiss/src/main/resources/identity.xsl [deleted file]
crawler/kiss/src/main/resources/login-graphic.xsl [deleted file]
crawler/kiss/src/main/resources/login-mobile.xsl [deleted file]
crawler/kiss/src/main/resources/login.xsl [deleted file]
crawler/kiss/src/main/resources/mainpage.xsl [deleted file]
crawler/kiss/src/main/resources/org.wamblee.crawler.notification.xml [deleted file]
crawler/kiss/src/main/resources/org.wamblee.crawler.properties.xml [deleted file]
crawler/kiss/src/main/resources/program-info-mobile.xsl [deleted file]
crawler/kiss/src/main/resources/program-info.xsl [deleted file]
crawler/kiss/src/main/resources/recorded.xsl [deleted file]
crawler/kiss/src/main/resources/reportToHtml.xsl [deleted file]
crawler/kiss/src/main/resources/reportToText.xsl [deleted file]
crawler/kiss/src/main/resources/utilities.xsl [deleted file]
crawler/kissweb/pom.xml [deleted file]
crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/CrawlerExecutor.java [deleted file]
crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/CrawlerExecutorImpl.java [deleted file]
crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/CrawlerScheduler.java [deleted file]
crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/CrawlerStatus.java [deleted file]
crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/quartz/CrawlerJob.java [deleted file]
crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/quartz/QuartzCrawlerScheduler.java [deleted file]
crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/servlet/Application.java [deleted file]
crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/servlet/CrawlerServlet.java [deleted file]
crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/spring/CrawlerBeanFactory.java [deleted file]
crawler/kissweb/src/main/resources/beanRefContext.xml [deleted file]
crawler/kissweb/src/main/resources/org.wamblee.beanfactory.properties [deleted file]
crawler/kissweb/src/main/resources/org.wamblee.crawler.kiss.xml [deleted file]
crawler/kissweb/src/main/resources/org.wamblee.crawler.properties [deleted file]
crawler/kissweb/src/webapp/META-INF/MANIFEST.MF [deleted file]
crawler/kissweb/src/webapp/WEB-INF/overview.jsp [deleted file]
crawler/kissweb/src/webapp/WEB-INF/web.xml [deleted file]
crawler/pom.xml [deleted file]
crawler/src/assembly/kiss-application.xml [deleted file]
pom.xml

diff --git a/crawler/ABOUT.txt b/crawler/ABOUT.txt
deleted file mode 100644 (file)
index ba9a7ad..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-This directory contains a generic web crawler (basic directory) and several useful implementations build on top of this.
-
diff --git a/crawler/basic/ABOUT.txt b/crawler/basic/ABOUT.txt
deleted file mode 100644 (file)
index b61c613..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-This is a general library for implementing a web crawler. 
-
-The crawler works by retrieving an HTML page and transforming the HTML
-(content + presentation) into content using XSLT stylesheets. Using a convention
-for links in the converted content, it becomes possible to build a generic interface on the retrieved pages for navigating through the content. 
-
-A configuration file determines how a certain page must be retrieved and transformed. 
-
-
diff --git a/crawler/basic/deps.xml b/crawler/basic/deps.xml
deleted file mode 100644 (file)
index e1a94e9..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-
-<target name="crawler.src.d" 
-  depends="logging.d,dom4j.d,xerces.d,httpclient.d,jtidy.d,wamblee.support.d">
-</target>
-
-<target name="crawler.test.d" depends="wamblee.support.test.d">
-</target>
-
-
-<property name="crawler.dist.dir" value="${lib.dir}/wamblee/crawler/basic"/>
-<target name="wamblee.crawler.d">
-  <copy todir="${download.dir}">
-    <fileset dir="${crawler.dist.dir}">
-      <include name="wamblee-crawler-basic.jar"/>
-    </fileset>
-  </copy>
-</target>
-<target name="wamblee.crawler.test.d">
-  <copy todir="${download.dir}">
-    <fileset dir="${crawler.dist.dir}">
-      <include name="wamblee-crawler-basic-test.jar"/>
-    </fileset>
-  </copy>
-</target>
diff --git a/crawler/basic/pom.xml b/crawler/basic/pom.xml
deleted file mode 100644 (file)
index 8b96423..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-  <parent>
-    <groupId>org.wamblee</groupId>
-    <artifactId>wamblee-crawler</artifactId>
-    <version>0.2-SNAPSHOT</version>
-  </parent>
-
-  <modelVersion>4.0.0</modelVersion>
-  <groupId>org.wamblee</groupId>
-  <artifactId>wamblee-crawler-basic</artifactId>
-  <packaging>jar</packaging>
-  <name>/crawler/basic</name>
-  <url>http://wamblee.org</url>
-  <dependencies>
-    <dependency>
-        <groupId>org.wamblee</groupId>
-        <artifactId>wamblee-support-general</artifactId>
-        <version>0.2-SNAPSHOT</version>
-    </dependency>
-
-    <dependency>
-        <groupId>commons-httpclient</groupId>
-        <artifactId>commons-httpclient</artifactId>
-    </dependency>  
-    <dependency>
-      <groupId>jtidy</groupId>
-      <artifactId>jtidy</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>dom4j</groupId>
-      <artifactId>dom4j</artifactId>
-    </dependency>
-
-  </dependencies>
-
-</project>
diff --git a/crawler/basic/src/log4j.properties b/crawler/basic/src/log4j.properties
deleted file mode 100644 (file)
index ab710b3..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-
-############################################################################################
-# Default configuration file for log4j. 
-#
-# This properties file is used if no other configuration if log4j is done explicitly.
-############################################################################################
-
-
-# Root logger reports everything and uses the console appender
-log4j.rootLogger=ERROR, console
-
-# Log level for wamblee.org
-log4j.logger.org.wamblee=DEBUG
-log4j.logger.org.wamblee.usermgt.UserAdministrationImplTest=INFO
-log4j.logger.org.wamblee.security.authorization=ERROR
-log4j.logger.org.wamblee.cache=INFO
-
-
-log4j.logger.org.springframework=ERROR
-log4j.logger.net.sf.ehcache=WARN
-
-# Default log level for hibernate
-log4j.logger.org.hibernate=ERROR
-log4j.logger.org.hibernate3=ERROR
-
-log4j.appender.console=org.apache.log4j.ConsoleAppender
-log4j.appender.console.layout=org.apache.log4j.PatternLayout
-log4j.appender.console.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
-
-######################################################################################
-# Hibernate SQL logging, switch the log level to DEBUG to see the output. 
-######################################################################################
-
-log4j.logger.org.wamblee.test.SpringTestCase=ERROR, console
-log4j.additivity.org.wamblee.test.SpringTestCase=false
-
-# Logging for queries.
-log4j.logger.org.hibernate.SQL=ERROR, sql
-log4j.additivity.org.hibernate.SQL=false
-
-# Logging for query parameters and return values.  
-log4j.logger.org.hibernate.type=ERROR, sqltype
-log4j.additivity.org.hibernate.type=false
-
-# Appender for the queries
-log4j.appender.sql=org.apache.log4j.ConsoleAppender
-log4j.appender.sql.layout=org.apache.log4j.PatternLayout
-log4j.appender.sql.layout.ConversionPattern=%n%-4r [%t] SQL: %x - %m%n
-
-# Appender to show the actual parameters and return values of the queries. 
-log4j.appender.sqltype=org.apache.log4j.ConsoleAppender
-log4j.appender.sqltype.layout=org.apache.log4j.PatternLayout
-log4j.appender.sqltype.layout.ConversionPattern=%-4r [%t] SQL:     %x - %m%n
-
-
-
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/AbstractPageRequest.java b/crawler/basic/src/main/java/org/wamblee/crawler/AbstractPageRequest.java
deleted file mode 100644 (file)
index 6b75e48..0000000
+++ /dev/null
@@ -1,292 +0,0 @@
-/*
- * Copyright 2005 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;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import javax.xml.transform.OutputKeys;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerConfigurationException;
-import javax.xml.transform.TransformerException;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-
-import org.apache.commons.httpclient.Header;
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.HttpStatus;
-import org.apache.commons.httpclient.NameValuePair;
-import org.apache.commons.httpclient.methods.GetMethod;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.xml.serialize.OutputFormat;
-import org.apache.xml.serialize.XMLSerializer;
-import org.w3c.dom.Document;
-import org.w3c.tidy.Tidy;
-import org.wamblee.xml.DomUtils;
-import org.wamblee.xml.XslTransformer;
-
-/**
- * General support claas for all kinds of requests.
- *
- * @author Erik Brakkee
- */
-public abstract class AbstractPageRequest implements PageRequest {
-
-    private static final Log LOG = LogFactory.getLog(AbstractPageRequest.class);
-
-    private static final String REDIRECT_HEADER = "Location";
-
-    private int _maxTries;
-
-    private int _maxDelay;
-
-    private NameValuePair[] _params;
-    
-    private NameValuePair[] _headers;
-
-    private String _xslt;
-    
-    private XslTransformer _transformer; 
-
-    /**
-     * Constructs the request.
-     * 
-     * @param aMaxTries
-     *            Maximum retries to perform.
-     * @param aMaxDelay
-     *            Maximum delay before executing a request.
-     * @param aParams
-     *            Request parameters to use.
-     * @param aHeaders
-     *            Request headers to use. 
-     * @param aXslt
-     *            XSLT used to convert the response.
-     */
-    protected AbstractPageRequest(int aMaxTries, int aMaxDelay,
-            NameValuePair[] aParams, NameValuePair[] aHeaders, String aXslt, XslTransformer aTransformer) {
-        if (aParams == null) {
-            throw new IllegalArgumentException("aParams is null");
-        }
-        if (aHeaders == null) {
-            throw new IllegalArgumentException("aHeaders is null");
-        }
-        if (aXslt == null) {
-            throw new IllegalArgumentException("aXslt is null");
-        }
-        _maxTries = aMaxTries;
-        _maxDelay = aMaxDelay;
-        _params = aParams;
-        _headers = aHeaders;
-        _xslt = aXslt;
-        _transformer = aTransformer;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.PageRequest#overrideXslt(java.lang.String)
-     */
-    public void overrideXslt(String aXslt) {
-        _xslt = aXslt;
-    }
-
-    /**
-     * Gets the parameters for the request.
-     * 
-     * @param aParams Additional parameters to use, obtained from another page, most likely as
-     *    hidden form fields. 
-     * @return Request parameters.
-     */
-    protected NameValuePair[] getParameters(NameValuePair[] aParams) {
-        List<NameValuePair> params = new ArrayList<NameValuePair>(); 
-        params.addAll(Arrays.asList(_params));
-        params.addAll(Arrays.asList(aParams));
-        return params.toArray(new NameValuePair[0]);
-    }
-    
-    /**
-     * Gets the headers for the request. 
-     * @return Request headers. 
-     */
-    protected NameValuePair[] getHeaders() { 
-        return _headers;
-    }
-
-    /**
-     * Executes the request with a random delay and with a maximum number of
-     * retries.
-     * 
-     * @param aClient
-     *            HTTP client to use.
-     * @param aMethod
-     *            Method representing the request.
-     * @return XML document describing the response.
-     * @throws IOException
-     *             In case of IO problems.
-     * @throws TransformerException
-     *             In case transformation of the HTML to XML fails.
-     */
-    protected Document executeMethod(HttpClient aClient, HttpMethod aMethod)
-            throws IOException, TransformerException {
-        
-        for (NameValuePair header: getHeaders()) { 
-            aMethod.setRequestHeader(header.getName(), header.getValue());
-        }
-        
-        int triesLeft = _maxTries;
-        while (triesLeft > 0) {
-            triesLeft--;
-            try {
-                return executeMethodWithoutRetries(aClient, aMethod);
-            } catch (TransformerException e) {
-                if (triesLeft == 0) {
-                    throw e;
-                }
-            }
-        }
-        throw new RuntimeException("Code should never reach this point");
-    }
-
-    /**
-     * Executes the request without doing any retries in case XSLT
-     * transformation fails.
-     * 
-     * @param aClient
-     *            HTTP client to use.
-     * @param aMethod
-     *            Method to execute.
-     * @return XML document containing the result.
-     * @throws IOException
-     *             In case of IO problems.
-     * @throws TransformerException
-     *             In case transformation of the result to XML fails.
-     */
-    protected Document executeMethodWithoutRetries(HttpClient aClient,
-            HttpMethod aMethod) throws IOException, TransformerException {
-        try {
-            aMethod = executeWithRedirects(aClient, aMethod);
-            byte[] xhtmlData = getXhtml(aMethod);
-            
-     
-            Document transformed = _transformer.transform(xhtmlData,
-                    _transformer.resolve(_xslt));
-            ByteArrayOutputStream os = new ByteArrayOutputStream(); 
-            Transformer transformer = TransformerFactory.newInstance()
-                    .newTransformer();
-            transformer.setParameter(OutputKeys.INDENT, "yes");
-            transformer.setParameter(OutputKeys.METHOD, "xml");
-            transformer.transform(new DOMSource(transformed), new StreamResult(
-                    os));
-            LOG.debug("Transformed result is \n" + os.toString());
-            return transformed;
-        } catch (TransformerConfigurationException e) {
-            throw new TransformerException("Transformer configuration problem", e);
-        } finally {
-            // Release the connection.
-            aMethod.releaseConnection();
-        }
-    }
-
-    /**
-     * Gets the result of the HTTP method as an XHTML document.
-     * 
-     * @param aMethod
-     *            Method to invoke.
-     * @return XHTML as a byte array.
-     * @throws IOException
-     *             In case of problems obtaining the XHTML.
-     */
-    private byte[] getXhtml(HttpMethod aMethod) throws IOException {
-        // Transform the HTML into wellformed XML.
-        Tidy tidy = new Tidy();
-        tidy.setXHTML(true);
-        tidy.setQuiet(true);
-        tidy.setShowWarnings(false);
-      
-        // We write the jtidy output to XML since the DOM tree it produces is
-        // not namespace aware and namespace awareness is required by XSLT.
-        // An alternative is to configure namespace awareness of the XML parser
-        // in a system wide way.
-        ByteArrayOutputStream os = new ByteArrayOutputStream(); 
-        Document w3cDoc = tidy.parseDOM(aMethod.getResponseBodyAsStream(), os);
-        DomUtils.removeDuplicateAttributes(w3cDoc);
-        LOG.debug("Content of response is \n" + os.toString()); 
-
-        ByteArrayOutputStream xhtml = new ByteArrayOutputStream();
-        XMLSerializer serializer = new XMLSerializer(xhtml, new OutputFormat());
-        serializer.serialize(w3cDoc);
-        xhtml.flush();
-
-        return xhtml.toByteArray();
-    }
-
-    /**
-     * Sleeps for a random time but no more than the maximum delay.
-     * 
-     */
-    private void delay() {
-        try {
-            Thread.sleep((long) ((float) _maxDelay * Math.random()));
-        } catch (InterruptedException e) {
-            return; // to satisfy checkstyle
-        }
-    }
-
-    /**
-     * Executes the request and follows redirects if needed.
-     * 
-     * @param aClient
-     *            HTTP client to use.
-     * @param aMethod
-     *            Method to use.
-     * @return Final HTTP method used (differs from the parameter passed in in
-     *         case of redirection).
-     * @throws IOException
-     *             In case of network problems.
-     */
-    private HttpMethod executeWithRedirects(HttpClient aClient,
-            HttpMethod aMethod) throws IOException {
-        delay();
-        int statusCode = aClient.executeMethod(aMethod);
-
-        switch (statusCode) {
-        case HttpStatus.SC_OK: {
-            return aMethod;
-        }
-        case HttpStatus.SC_MOVED_PERMANENTLY:
-        case HttpStatus.SC_MOVED_TEMPORARILY:
-        case HttpStatus.SC_SEE_OTHER: {
-            aMethod.releaseConnection();
-            Header header = aMethod.getResponseHeader(REDIRECT_HEADER);
-            aMethod = new GetMethod(header.getValue());
-            return executeWithRedirects(aClient, aMethod); // TODO protect
-            // against infinite
-            // recursion.
-        }
-        default: {
-            throw new IOException("Method failed: "
-                    + aMethod.getStatusLine());
-        }
-        }
-    }
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/Action.java b/crawler/basic/src/main/java/org/wamblee/crawler/Action.java
deleted file mode 100644 (file)
index 1125a0e..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Copyright 2005 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;
-
-import org.dom4j.Element;
-
-/**
- * An action defined on a page. 
- *
- * @author Erik Brakkee
- */
-public interface Action {
-    
-    /**
-     * The name of the action. 
-     * @return Action name. 
-     */
-    String getName(); 
-    
-    /**
-     * Executes the action. 
-     * @return New page as a result of the action.
-     * @throws PageException In case of an error obtaining the page. 
-     */
-    Page execute() throws PageException;
-    
-    /**
-     * Gets a description of the action. THe element returned is the action element
-     * itself. 
-     * @return Content as XML.
-     */
-    Element getContent();
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/Configuration.java b/crawler/basic/src/main/java/org/wamblee/crawler/Configuration.java
deleted file mode 100644 (file)
index 0e7da0b..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Copyright 2005 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;
-
-/**
- * Configuration which determines how a specific page must be retrieved and 
- * what transformation should be applied to it. 
- *
- * @author Erik Brakkee
- */
-public interface Configuration {
-
-    /**
-     * Gets the page request based on the URL. 
-     * @param aUrl Url of the page to retrieve.
-     * @return Page request. 
-     */
-    PageRequest getRequest(String aUrl);
-    
-    /**
-     * Gets the page request based on the type of the page instead 
-     * of on the URL. 
-     * @param aType Type of page. 
-     * @return Page request. 
-     */
-    PageRequest getRequest(PageType aType); 
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/Crawler.java b/crawler/basic/src/main/java/org/wamblee/crawler/Crawler.java
deleted file mode 100644 (file)
index a5f2c1d..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Copyright 2005 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;
-
-import org.apache.commons.httpclient.NameValuePair;
-
-
-/**
- * The object that actually obtains pages based on URL. 
- *
- * @author Erik Brakkee
- */
-public interface Crawler {
-
-    /**
-     * Gets the content for a specific page. 
-     * @param aUrl Url of page. 
-     * @param aParameters Paremeters to supply. 
-     * @return Page to retrieve.
-     * @throws PageException In case of problems retrieving the page.
-     */
-    Page getPage(String aUrl, NameValuePair[] aParameters) throws PageException;
-    
-    /**
-     * Gets the content for a specific page. 
-     * @param aUrl Url of page.
-     * @param aParameters Parameters to supply. 
-     * @param aType Type of page.  
-     * @return Page.
-     * @throws PageException In case of problems retrieving the page. 
-     */
-    Page getPage(String aUrl, NameValuePair[] aParameters, PageType aType) throws PageException; 
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/GetPageRequest.java b/crawler/basic/src/main/java/org/wamblee/crawler/GetPageRequest.java
deleted file mode 100644 (file)
index 16eb94c..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright 2005 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;
-
-import java.io.IOException;
-
-import javax.xml.transform.TransformerException;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.NameValuePair;
-import org.apache.commons.httpclient.methods.GetMethod;
-import org.w3c.dom.Document;
-import org.wamblee.xml.XslTransformer;
-
-/**
- * Gets a page by issueing a get request.
- *
- * @author Erik Brakkee
- */
-public class GetPageRequest extends AbstractPageRequest {
-
-    /**
-     * Constructs the request.
-     * @param aMaxTries Maximum number of retries. 
-     * @param aMaxDelay Maximum delay before executing the request.
-     * @param aParams Request parameters to use. 
-     * @param aHeaders Request headers to use. 
-     * @param aXslt XSLT to use. 
-     */
-    public GetPageRequest(int aMaxTries, int aMaxDelay, NameValuePair[] aParams, 
-            NameValuePair[] aHeaders, String aXslt, XslTransformer aTransformer) {
-        super(aMaxTries, aMaxDelay, aParams, aHeaders, aXslt, aTransformer);
-    }
-    
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.PageRequest#getPage(org.apache.commons.httpclient.HttpClient)
-     */
-    public Document execute(String aUrl, NameValuePair[] aParams, HttpClient aClient)
-            throws PageException {
-        HttpMethod method = new GetMethod(aUrl);
-        NameValuePair[] params = getParameters(aParams);
-        if (params.length > 0) {
-            String oldQueryString = method.getQueryString();
-            method.setQueryString(params);
-            String queryString = method.getQueryString();
-            if (oldQueryString.length() > 0) {
-                queryString = queryString + '&' + oldQueryString;
-                method.setQueryString(queryString);
-            }
-        }
-        try {
-            return executeMethod(aClient, method);
-        } catch (TransformerException e) {
-            throw new PageException("Transformation problem for url " + aUrl, e);
-        } catch (IOException e) { 
-            throw new PageException("Problem getting " + aUrl, e);
-        }
-    }
-
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/Page.java b/crawler/basic/src/main/java/org/wamblee/crawler/Page.java
deleted file mode 100644 (file)
index 09ab7bc..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright 2005 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;
-
-import org.dom4j.Element;
-
-/**
- * Represents a retrieved page. 
- *
- * @author Erik Brakkee
- */
-public interface Page {
-
-    /**
-     * Gets the content of the page as raw XML. 
-     * @return Page content.
-     */
-    Element getContent();
-    
-    /**
-     * Obtains the links available on the page. 
-     * @return Link names. 
-     */
-    Action[] getActions(); 
-    
-    /**
-     * Gets the named action. Only works if the action name is unique.  
-     * @param aName Name of the action.
-     * @return Action object. 
-     */
-    Action getAction(String aName);
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/PageException.java b/crawler/basic/src/main/java/org/wamblee/crawler/PageException.java
deleted file mode 100644 (file)
index 35273e7..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright 2005 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;
-
-/**
- * Exception thrown when there is a problem in retrieving or transforming the 
- * page. 
- *
- * @author Erik Brakkee
- */
-public class PageException extends Exception {
-
-    /**
-     * Constructs the exception. 
-     * @param aMsg Message. 
-     */
-    public PageException(String aMsg) { 
-        super(aMsg); 
-    }
-    
-    /**
-     * Constructs the exception.
-     * @param aMsg Message. 
-     * @param aCause Cause of the exception. 
-     */
-    public PageException(String aMsg, Throwable aCause) { 
-        super(aMsg, aCause);
-    }
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/PageRequest.java b/crawler/basic/src/main/java/org/wamblee/crawler/PageRequest.java
deleted file mode 100644 (file)
index 2a4e05f..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright 2005 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;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.NameValuePair;
-import org.w3c.dom.Document;
-
-/**
- * Represents a specific request to obtain and transform a page. 
- *
- * @author Erik Brakkee
- */
-public interface PageRequest {
-    
-    /**
-     * Gets a page as an XML document.
-     * @param aUrl Url of the page.  
-     * @param aParams Additional parameters to supply. 
-     * @param aClient Http client to use. 
-     * @return Client. 
-     * @throws PageException In case of problems retrieving the page. 
-     */
-     Document execute(String aUrl, NameValuePair[] aParams, HttpClient aClient) throws PageException;
-     
-     /**
-      * Overrides the Xslt to use. This is used when the transformed page specifies
-      * the page type explicitly for an action.
-      * @param aXslt Xslt to use. 
-      */
-     void overrideXslt(String aXslt); 
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/PageType.java b/crawler/basic/src/main/java/org/wamblee/crawler/PageType.java
deleted file mode 100644 (file)
index 4fc7f0d..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright 2005 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;
-
-/**
- * Represents the type of a page determining how the HTML should be transformed into 
- * XML.
- *
- * @author Erik Brakkee
- */
-public class PageType {
-
-    /**
-     * Type string. 
-     */
-    private String _type; 
-    
-    /**
-     * Constructs the type.
-     * @param aType Type. 
-     */
-    public PageType(String aType) { 
-        _type = aType; 
-    }
-    
-    /**
-     * Gets the type. 
-     * @return Type.
-     */
-    public String getType() { 
-        return _type; 
-    }
-    
-    /* (non-Javadoc)
-     * @see java.lang.Object#toString()
-     */
-    @Override
-    public String toString() {
-        return "PageType(type='" + _type + "')";
-    }
-    
-    /* (non-Javadoc)
-     * @see java.lang.Object#equals(java.lang.Object)
-     */
-    @Override
-    public boolean equals(Object obj) {
-        if (!(obj instanceof PageType)) { 
-            return false; 
-        }
-        return toString().equals(obj.toString());
-    }
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/PostPageRequest.java b/crawler/basic/src/main/java/org/wamblee/crawler/PostPageRequest.java
deleted file mode 100644 (file)
index 6284540..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright 2005 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;
-
-import java.io.IOException;
-
-import javax.xml.transform.TransformerException;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.NameValuePair;
-import org.apache.commons.httpclient.methods.PostMethod;
-import org.w3c.dom.Document;
-import org.wamblee.xml.XslTransformer;
-
-/**
- * Retrieving pages using the post method.
- *
- * @author Erik Brakkee
- */
-public class PostPageRequest extends AbstractPageRequest {
-
-    /**
-     * Constructs the request.
-     * @param aMaxTries Maximum number of retries. 
-     * @param aMaxDelay Maximum delay before executing the request.
-     * @param aParams Request parameters to use. 
-     * @param aHeaders Request headers to use. 
-     * @param aXslt XSLT to use.  
-     */
-    public PostPageRequest(int aMaxTries, int aMaxDelay, 
-            NameValuePair[] aParams, 
-            NameValuePair[] aHeaders,
-            String aXslt, XslTransformer aTransformer) {
-        super(aMaxTries, aMaxDelay, aParams, aHeaders, aXslt, aTransformer);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.PageRequest#execute(java.lang.String,
-     *      org.apache.commons.httpclient.HttpClient)
-     */
-    public Document execute(String aUrl, NameValuePair[] aParams, HttpClient aClient)
-            throws PageException {
-        PostMethod method = new PostMethod(aUrl);
-        method.addParameters(getParameters(aParams));
-        try {
-            return executeMethod(aClient, method);
-        } catch (TransformerException e) {
-            throw new PageException("Transformation problem for url " + aUrl, e);
-        } catch (IOException e) { 
-            throw new PageException("Problem getting page " + aUrl, e);
-        }
-    }
-
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/impl/ActionImpl.java b/crawler/basic/src/main/java/org/wamblee/crawler/impl/ActionImpl.java
deleted file mode 100644 (file)
index 34972c5..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Copyright 2005 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.impl;
-
-import org.apache.commons.httpclient.NameValuePair;
-import org.dom4j.Element;
-import org.wamblee.crawler.Action;
-import org.wamblee.crawler.Crawler;
-import org.wamblee.crawler.Page;
-import org.wamblee.crawler.PageException;
-import org.wamblee.crawler.PageType;
-
-/**
- * Action implementation.
- *
- * @author Erik Brakkee
- */
-public class ActionImpl implements Action {
-
-    private Crawler _crawler;
-
-    private Element _content;
-
-    private String _name;
-
-    private String _reference;
-
-    private PageType _type;
-    
-    private NameValuePair[] _parameters; 
-
-    /**
-     * Constructs the action.
-     * 
-     * @param aCrawler
-     *            Crawler to use.
-     * @param aContent
-     *            Content of the action element in the page where the action
-     *            occurs.
-     * @param aName
-     *            Name of the action.
-     * @param aReference
-     *            URL of the reference.
-     * @param aParameters Parameters to use for the action. 
-     */
-    public ActionImpl(Crawler aCrawler, Element aContent, String aName,
-            String aReference, NameValuePair[] aParameters) {
-        _crawler = aCrawler;
-        _content = aContent;
-        _name = aName;
-        _reference = aReference;
-        _type = null;
-        _parameters = aParameters; 
-    }
-
-    /**
-     * Constructs the action.
-     * 
-     * @param aCrawler
-     *            Crawler to use.
-     * @param aContent
-     *            Content of the action element in the page where the action
-     *            occurs.
-     * @param aName
-     *            Name of the action.
-     * @param aReference
-     *            URL of the reference.
-     * @param aType
-     *            Type of the referenced page.
-     * @param aParameters Parameters to use. 
-     */
-    public ActionImpl(Crawler aCrawler, Element aContent, String aName,
-            String aReference, PageType aType, NameValuePair[] aParameters) {
-        _crawler = aCrawler;
-        _content = aContent;
-        _name = aName;
-        _reference = aReference;
-        _type = aType;
-        _parameters = aParameters; 
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.Action#getName()
-     */
-    public String getName() {
-        return _name;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.Action#execute()
-     */
-    public Page execute() throws PageException {
-        if (_type == null) {
-            return _crawler.getPage(_reference, _parameters);
-        }
-        return _crawler.getPage(_reference, _parameters, _type);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.Action#getContent()
-     */
-    public Element getContent() {
-        return _content;
-    }
-    
-    /* (non-Javadoc)
-     * @see java.lang.Object#equals(java.lang.Object)
-     */
-    @Override
-    public boolean equals(Object obj) {
-        if ( !(obj instanceof ActionImpl )) { 
-            return false; 
-        }
-        ActionImpl action = (ActionImpl)obj; 
-        return _reference.equals(action._reference) && 
-               _type.equals(action._type);
-    }
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/impl/App.java b/crawler/basic/src/main/java/org/wamblee/crawler/impl/App.java
deleted file mode 100644 (file)
index da9056c..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-package org.wamblee.crawler.impl;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.InputStream;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.NameValuePair;
-import org.dom4j.Element;
-import org.wamblee.crawler.Action;
-import org.wamblee.crawler.Configuration;
-import org.wamblee.crawler.Crawler;
-import org.wamblee.crawler.Page;
-import org.wamblee.crawler.PageException;
-import org.wamblee.xml.XslTransformer;
-
-/*
- * Copyright 2005 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.
- */
-
-/**
- * Test application which uses the crawler. 
- *
- * @author Erik Brakkee
- */
-public final class App {
-
-    /**
-     * Disabled constructor.
-     * 
-     */
-    private App() {
-        // Empty
-    }
-    
-    /**
-     * Runs a test program.
-     * 
-     * @param aArgs
-     *            Arguments. First argument is the crawler config file name and
-     *            second argument is the start url.
-     * @throws Exception
-     *             In case of problems.
-     */
-    public static void main(String[] aArgs) throws Exception {
-        String configFileName = aArgs[0];
-        String starturl = aArgs[1];
-
-        ConfigurationParser parser = new ConfigurationParser(new XslTransformer());
-        InputStream configFile = new FileInputStream(new File(configFileName));
-        Configuration config = parser.parse(configFile);
-
-        HttpClient client = new HttpClient();
-        // client.getHostConfiguration().setProxy("localhost", 3128);
-
-        Crawler crawler = new CrawlerImpl(client, config);
-
-        System.out.println("Retrieving: " + starturl);
-        Page page = crawler.getPage(starturl, new NameValuePair[0]);
-        showPage(page);
-        page = page.getAction("channels-favorites").execute();
-        recordInterestingShows(page);
-        showPage(page);
-        page = page.getAction("Nederland 1").execute();
-        showPage(page);
-        page = page.getAction("right-now").execute();
-        showPage(page);
-        page = page.getAction("Het elfde uur").execute();
-        showPage(page);
-    }
-
-    /**
-     * @param starturl
-     * @param crawler
-     */
-    private static void showPage(Page aPage) {
-        Action[] links = aPage.getActions();
-        for (Action link : links) {
-            System.out.println("Link found '" + link.getName() + "'");
-        }
-        Element element = aPage.getContent();
-        System.out.println("Retrieved content: " + element.asXML());
-    }
-
-    private static void recordInterestingShows(Page page) throws PageException {
-        Action[] channels = page.getActions();
-        for (Action channel : channels) {
-            examineChannel(channel.getName(), channel.execute().getAction(
-                    "right-now").execute());
-        }
-    }
-
-    private static void examineChannel(String aChannel, Page aPage)
-            throws PageException {
-        Action[] programs = aPage.getActions();
-        for (Action program : programs) {
-            System.out.println(aChannel + " - " + program.getName());
-            if (program.getName().toLowerCase().matches(".*babe.*")) {
-                Page programPage = program.execute();
-                Action record = programPage.getAction("record");
-                System.out.println("Recording possible: " + record != null);
-            }
-        }
-    }
-
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/impl/ConfigItem.java b/crawler/basic/src/main/java/org/wamblee/crawler/impl/ConfigItem.java
deleted file mode 100644 (file)
index e42a16c..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright 2005 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.impl;
-
-import java.util.regex.Pattern;
-
-/**
- * Configuration item for obtaining an object in case a pattern matches.
- *
- * @author Erik Brakkee
- */
-class ConfigItem<ValueType> {
-
-    private Pattern _pattern;
-
-    private ValueType _value;
-
-    /**
-     * Constructs the item. 
-     * @param aPattern Pattern. 
-     * @param aValue Value. 
-     */
-    protected ConfigItem(String aPattern, ValueType aValue) {
-        _pattern = Pattern.compile(aPattern);
-        _value = aValue;
-    }
-
-    /**
-     * Returns the object in case the value matches. 
-     * @param aValue Value to match. 
-     * @return Object in case there is a match, null otherwise. 
-     */
-    protected ValueType match(String aValue) {
-        if (!_pattern.matcher(aValue).matches()) {
-            return null;
-        }
-        return _value;
-    }
-
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/impl/ConfigurationImpl.java b/crawler/basic/src/main/java/org/wamblee/crawler/impl/ConfigurationImpl.java
deleted file mode 100644 (file)
index ca32933..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright 2005 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.impl;
-
-import java.util.List;
-
-import org.wamblee.crawler.Configuration;
-import org.wamblee.crawler.PageRequest;
-import org.wamblee.crawler.PageType;
-
-/**
- * Implementation of the configuration for the crawler.
- *
- * @author Erik Brakkee
- */
-public class ConfigurationImpl implements Configuration {
-
-    private List<UrlConfig> _urlConfig;
-
-    private List<PageTypeConfig> _pageTypeConfig;
-
-    /**
-     * Constructs the configuration. 
-     * @param aUrlConfig List of URL configuration elements. 
-     * @param aPageTypeConfig List of page type configuration elements. 
-     */
-    public ConfigurationImpl(List<UrlConfig> aUrlConfig,
-            List<PageTypeConfig> aPageTypeConfig) {
-        _urlConfig = aUrlConfig;
-        _pageTypeConfig = aPageTypeConfig;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.Configuration#getRequest(java.lang.String)
-     */
-    public PageRequest getRequest(String aUrl) {
-
-        for (UrlConfig config : _urlConfig) {
-            PageRequest request = config.getRequest(aUrl);
-            if (request != null) {
-                return request;
-            }
-        }
-        throw new RuntimeException("No configuration matched the URL '" + aUrl
-                + "'");
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.Configuration#getRequest(org.wamblee.crawler.PageType)
-     */
-    public PageRequest getRequest(PageType aType) {
-        for (PageTypeConfig config : _pageTypeConfig) {
-            PageRequest request = config.getRequest(aType.getType());
-            if (request != null) {
-                return request;
-            }
-        }
-        throw new RuntimeException("No configuration matched type '" + aType
-                + "'");
-    }
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/impl/ConfigurationParser.java b/crawler/basic/src/main/java/org/wamblee/crawler/impl/ConfigurationParser.java
deleted file mode 100644 (file)
index ab4d753..0000000
+++ /dev/null
@@ -1,200 +0,0 @@
-/*
- * Copyright 2005 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.impl;
-
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.commons.httpclient.NameValuePair;
-import org.dom4j.Document;
-import org.dom4j.DocumentException;
-import org.dom4j.Element;
-import org.dom4j.io.SAXReader;
-import org.wamblee.crawler.Configuration;
-import org.wamblee.crawler.GetPageRequest;
-import org.wamblee.crawler.PageRequest;
-import org.wamblee.crawler.PostPageRequest;
-import org.wamblee.xml.XslTransformer;
-
-/**
- * Parsing of the configuration from an XML file.
- *
- * @author Erik Brakkee
- */
-public class ConfigurationParser {
-
-    private static final String ELEM_URL = "url";
-
-    private static final String ELEM_TYPE = "type";
-
-    private static final String ELEM_PATTERN = "pattern";
-
-    private static final String ELEM_METHOD = "method";
-
-    private static final String ELEM_XSLT = "xslt";
-
-    private static final String ELEM_PARAM = "param";
-    
-    private static final String ELEM_HEADER = "header";
-
-    private static final String AT_NAME = "name";
-
-    private static final String AT_VALUE = "value";
-
-    private static final String METHOD_POST = "post";
-
-    private static final String METHOD_GET = "get";
-
-    private static final int MAX_TRIES = 3;
-
-    private static final int MAX_DELAY = 10000;
-    
-    private XslTransformer _transformer;
-
-    /**
-     * Constructs the configuration parser. 
-     */
-    public ConfigurationParser(XslTransformer aTransformer) {
-        _transformer = aTransformer; 
-    }
-
-    /**
-     * Parses the configuration from an input stream.
-     * @param aStream Input file. 
-     * @return Configuration. 
-     */
-    public Configuration parse(InputStream aStream) {
-        try {
-            SAXReader reader = new SAXReader();
-            Document document = reader.read(aStream);
-
-            Element root = document.getRootElement();
-            List<UrlConfig> urlConfigs = parseUrlConfigs(root);
-            List<PageTypeConfig> pageTypeConfigs = parsePageTypeConfigs(root);
-            return new ConfigurationImpl(urlConfigs, pageTypeConfigs);
-        } catch (DocumentException e) {
-            throw new RuntimeException("Problem parsing config file", e);
-        }
-    }
-
-    /**
-     * Parses the URL-based configuration. 
-     * @param aRoot Root of the configuration file document. 
-     * @return List of URL-based configurations. 
-     */
-    private List<UrlConfig> parseUrlConfigs(Element aRoot) {
-        List<UrlConfig> configs = new ArrayList<UrlConfig>();
-        for (Iterator i = aRoot.elementIterator(ELEM_URL); i.hasNext();) {
-            Element url = (Element) i.next();
-            UrlConfig config = parseUrlConfig(url);
-            configs.add(config);
-        }
-        return configs;
-    }
-
-    /**
-     * Parses the page type based configurations. 
-     * @param aRoot Root of the configuration file document. 
-     * @return LIst of page type based configurations. 
-     */
-    private List<PageTypeConfig> parsePageTypeConfigs(Element aRoot) {
-        List<PageTypeConfig> configs = new ArrayList<PageTypeConfig>();
-        for (Iterator i = aRoot.elementIterator(ELEM_TYPE); i.hasNext();) {
-            Element url = (Element) i.next();
-            PageTypeConfig config = parsePageTypeConfig(url);
-            configs.add(config);
-        }
-        return configs;
-    }
-
-    /**
-     * Parses a URL-based configuration. 
-     * @param aUrlElem Configuration element. 
-     * @return Configuration. 
-     */
-    private UrlConfig parseUrlConfig(Element aUrlElem) {
-        String pattern = aUrlElem.elementText(ELEM_PATTERN);
-        PageRequest request = parseRequestConfig(aUrlElem);
-        return new UrlConfig(pattern, request);
-    }
-
-    /**
-     * Parses a page type based configuration. 
-     * @param aTypeElem Configuration element. 
-     * @return Configuration. 
-     */
-    private PageTypeConfig parsePageTypeConfig(Element aTypeElem) {
-        String pattern = aTypeElem.elementText(ELEM_PATTERN);
-        PageRequest request = parseRequestConfig(aTypeElem);
-        return new PageTypeConfig(pattern, request);
-    }
-
-    /**
-     * Parses a request configuration describing how to execute requests. 
-     * @param aElem Configuration element. 
-     * @return Page request. 
-     */
-    private PageRequest parseRequestConfig(Element aElem) {
-        String method = aElem.elementText(ELEM_METHOD);
-        String xslt = aElem.elementText(ELEM_XSLT);
-        List<NameValuePair> params = parseNameValuePairs(aElem, ELEM_PARAM); 
-        List<NameValuePair> headers = parseNameValuePairs(aElem, ELEM_HEADER);
-        
-        NameValuePair[] paramsArray = params.toArray(new NameValuePair[0]);
-        NameValuePair[] headersArray = headers.toArray(new NameValuePair[0]);
-        PageRequest request;
-        if (METHOD_POST.equals(method)) {
-            request = new PostPageRequest(MAX_TRIES, MAX_DELAY, paramsArray, headersArray,
-                    xslt, _transformer);
-        } else if (METHOD_GET.equals(method) || method == null) {
-            request = new GetPageRequest(MAX_TRIES, MAX_DELAY, paramsArray, headersArray,
-                    xslt, _transformer);
-        } else {
-            throw new RuntimeException("Unknown request method '" + method
-                    + "'. Only " + METHOD_GET + " and " + METHOD_POST
-                    + " are supported");
-        }
-        return request;
-    }
-
-    /**
-     * @param aElem
-     * @return
-     */
-    private List<NameValuePair> parseNameValuePairs(Element aElem, String aElemName) {
-        List<NameValuePair> headers = new ArrayList<NameValuePair>();
-        for (Iterator i = aElem.elementIterator(aElemName); i.hasNext();) {
-            Element paramElem = (Element) i.next();
-            NameValuePair header = parseParameter(paramElem);
-            headers.add(header);
-        }
-        return headers;
-    }
-
-    /**
-     * Parses a parameter definition. 
-     * @param aParam Parameter. 
-     * @return Name value pair describing a parameter. 
-     */
-    private NameValuePair parseParameter(Element aParam) {
-        String name = aParam.attributeValue(AT_NAME);
-        String value = aParam.attributeValue(AT_VALUE);
-        return new NameValuePair(name, value);
-    }
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/impl/CrawlerImpl.java b/crawler/basic/src/main/java/org/wamblee/crawler/impl/CrawlerImpl.java
deleted file mode 100644 (file)
index fd02bfb..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright 2005 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.impl;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.NameValuePair;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.dom4j.Element;
-import org.dom4j.io.DOMReader;
-import org.w3c.dom.Document;
-import org.wamblee.crawler.Configuration;
-import org.wamblee.crawler.Crawler;
-import org.wamblee.crawler.Page;
-import org.wamblee.crawler.PageException;
-import org.wamblee.crawler.PageRequest;
-import org.wamblee.crawler.PageType;
-
-/**
- * Crawler implementation.
- *
- * @author Erik Brakkee
- */
-public class CrawlerImpl implements Crawler {
-
-    private static final Log LOG = LogFactory.getLog(CrawlerImpl.class);
-
-    private HttpClient _client;
-
-    private Configuration _config;
-
-    /**
-     * Constructs the crawler.
-     * 
-     * @param aClient
-     *            Http client to use.
-     * @param aConfig
-     *            Configuration.
-     */
-    public CrawlerImpl(HttpClient aClient, Configuration aConfig) {
-        _client = aClient;
-        _config = aConfig;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.Crawler#getPage(java.lang.String)
-     */
-    public Page getPage(String aUrl, NameValuePair[] aParams) throws PageException {
-        LOG.debug("Getting page: url = '" + aUrl + "'");
-        PageRequest request = _config.getRequest(aUrl);
-        Document content = request.execute(aUrl, aParams, _client);
-        return transformToDom4jDoc(aUrl, content);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.Crawler#getPage(java.lang.String,
-     *      java.lang.String)
-     */
-    public Page getPage(String aUrl, NameValuePair[] aParams, PageType aType) throws PageException {
-        LOG.debug("Getting page: url = '" + aUrl + "', type = '" + aType + "'");
-        PageRequest request = _config.getRequest(aType);
-        Document content = request.execute(aUrl, aParams, _client);
-        return transformToDom4jDoc(aUrl, content);
-    }
-
-    /**
-     * Converts a w3c DOM document to a page object. 
-     * @param content DOM document. 
-     * @return
-     */
-    private Page transformToDom4jDoc(String aUrl, Document content) {
-        DOMReader reader = new DOMReader();
-        org.dom4j.Document dom4jDoc = reader.read(content);
-        Element root = dom4jDoc.getRootElement();
-        dom4jDoc.remove(root);
-
-        return new PageImpl(aUrl, this, replaceReferencesWithContent(root));
-    }
-
-    /**
-     * Perform crawling. Find references in the retrieved content and replace
-     * them by the content they refer to by retrieving the appropriate pages as
-     * well.
-     * 
-     * @param content
-     *            Content which must be made complete.
-     * @return Fully processed content.
-     */
-    private Element replaceReferencesWithContent(Element content) {
-        return content; // TODO implement.
-    }
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/impl/PageImpl.java b/crawler/basic/src/main/java/org/wamblee/crawler/impl/PageImpl.java
deleted file mode 100644 (file)
index e27c1c6..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-/*
- * Copyright 2005 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.impl;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.commons.httpclient.NameValuePair;
-import org.dom4j.DocumentHelper;
-import org.dom4j.Element;
-import org.dom4j.XPath;
-import org.wamblee.crawler.Action;
-import org.wamblee.crawler.Crawler;
-import org.wamblee.crawler.Page;
-import org.wamblee.crawler.PageType;
-
-/**
- * Page implementation.
- *
- * @author Erik Brakkee
- */
-public class PageImpl implements Page {
-
-    private static final String ELEM_NAME = "action";
-
-    private static final String ATT_NAME = "name";
-
-    private static final String ATT_HREF = "reference";
-
-    private static final String ATT_TYPE = "type";
-    
-    private static final String ELEM_PARAM = "param"; 
-    
-    private static final String ATT_VALUE = "value";
-
-    private String _href; 
-    
-    private Crawler _crawler;
-
-    private Element _content;
-
-    private Action[] _actions;
-
-    /**
-     * Constructs a page.
-     * 
-     * @param aContent
-     */
-    public PageImpl(String aHref, Crawler aCrawler, Element aContent) {
-        _href = aHref;
-        _crawler = aCrawler;
-        _content = aContent;
-        _actions = computeActions();
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.Page#getLinkNames()
-     */
-    private Action[] computeActions() {
-        XPath xpath = DocumentHelper.createXPath(ELEM_NAME);
-        List<Element> results = (List<Element>) xpath.selectNodes(_content);
-        List<Action> names = new ArrayList<Action>();
-        for (Element elem : results) {
-            String name = elem.attributeValue(ATT_NAME);
-            String href = elem.attributeValue(ATT_HREF);
-            String type = elem.attributeValue(ATT_TYPE);
-            NameValuePair[] params = getMandatoryParameters(elem);
-            href = absolutizeHref(_href, href); 
-            if (type == null) {
-                names.add(new ActionImpl(_crawler, elem, name, href, params));
-            } else {
-                names.add(new ActionImpl(_crawler, elem, name, href,
-                        new PageType(type), params));
-            }
-        }
-        return names.toArray(new Action[0]);
-    }
-    
-    /**
-     * Absolutize the hyperlink 
-     * @param aPageHref Absolute page reference.
-     * @param aLinkHref Possibly relative link reference.
-     * @return Absolute hyperlink. 
-     */
-    private String absolutizeHref(String aPageHref, String aLinkHref) {
-        
-        try {
-            URL pageUrl = new URL(aPageHref);
-            URL newUrl = new URL(pageUrl, aLinkHref); 
-            return newUrl.toString(); // TODO need to use URL instead of String throughout the code. 
-        } catch (MalformedURLException e) {
-            throw new RuntimeException("Malformed URL", e); 
-        }
-    }
-
-    private NameValuePair[] getMandatoryParameters(Element aAction) {
-        List<NameValuePair> result = new ArrayList<NameValuePair>();
-        for (Element param: (List<Element>)aAction.elements(ELEM_PARAM)) { 
-            String name = param.attributeValue(ATT_NAME); 
-            String value = param.attributeValue(ATT_VALUE); 
-            result.add(new NameValuePair(name, value));
-        }
-        return result.toArray(new NameValuePair[0]);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.Page#getContent()
-     */
-    public Element getContent() {
-        return _content;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.Page#getActions()
-     */
-    public Action[] getActions() {
-        return _actions;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.Page#getAction(java.lang.String)
-     */
-    public Action getAction(String aName) {
-        List<Action> results = new ArrayList<Action>();
-        for (Action action : _actions) {
-            if (action.getName().equals(aName)) {
-                results.add(action);
-            }
-        }
-        if (results.size() == 0) {
-            return null;
-        }
-        if (results.size() > 1) {
-            throw new RuntimeException("Duplicate action '" + aName + "'");
-        }
-        return results.get(0);
-    }
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/impl/PageTypeConfig.java b/crawler/basic/src/main/java/org/wamblee/crawler/impl/PageTypeConfig.java
deleted file mode 100644 (file)
index c943851..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright 2005 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.impl;
-
-import org.wamblee.crawler.PageRequest;
-
-/**
- * Page type configuration. 
- *
- * @author Erik Brakkee
- */
-public class PageTypeConfig extends ConfigItem<PageRequest> {
-    
-    /**
-     * Constructs the configuration. 
-     * @param aPattern Page type pattern. 
-     * @param aRequest Page request. 
-     */
-    public PageTypeConfig(String aPattern, PageRequest aRequest) { 
-        super(aPattern, aRequest); 
-    }
-    
-    /**
-     * Returns the request in case the type matches. 
-     * @param aType Page type. 
-     * @return Request if the type matches, null otherwise. 
-     */
-    public PageRequest getRequest(String aType) { 
-        return match(aType);
-    }
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/impl/UrlConfig.java b/crawler/basic/src/main/java/org/wamblee/crawler/impl/UrlConfig.java
deleted file mode 100644 (file)
index c9d3555..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright 2005 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.impl;
-
-import org.wamblee.crawler.PageRequest;
-
-/**
- * Represents the configuration for specific URLs.
- *
- * @author Erik Brakkee
- */
-public class UrlConfig extends ConfigItem<PageRequest> {
-    /**
-     * Constructs the information for how to perform a request for a specific
-     * URL.
-     * 
-     * @param aPattern
-     *            Pattern that the URL must match.
-     * @param aRequest
-     *            Request that must be executed to retrieve the URL.
-     */
-    public UrlConfig(String aPattern, PageRequest aRequest) {
-        super(aPattern, aRequest);
-    }
-
-    /**
-     * Gets the request to execute.
-     * 
-     * @return Request, or null if the URL does not match.
-     */
-    public PageRequest getRequest(String aUrl) {
-        return match(aUrl);
-    }
-}
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/impl/package.html b/crawler/basic/src/main/java/org/wamblee/crawler/impl/package.html
deleted file mode 100644 (file)
index 2ba3c92..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-    wamblee.org
-</head>
-<body bgcolor="white">
-
-This package provides the implementations of the web crawler interfaces.
-
-<!-- Put @see and @since tags down here. -->
-
-@since -
-
-</body>
-</html>
diff --git a/crawler/basic/src/main/java/org/wamblee/crawler/package.html b/crawler/basic/src/main/java/org/wamblee/crawler/package.html
deleted file mode 100644 (file)
index 6423f15..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-    wamblee.org
-</head>
-<body bgcolor="white">
-
-This package provides the basic interfaces for a web crawler. 
-
-<!-- Put @see and @since tags down here. -->
-
-@since -
-
-</body>
-</html>
diff --git a/crawler/kiss/ABOUT.txt b/crawler/kiss/ABOUT.txt
deleted file mode 100644 (file)
index 4f23b39..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-This is a crawler for the KiSS Electronic Program Guide that can be used for instance with the KiSS DP558 hard-disc recorder. It uses the basic crawler for its implementation.
-
-Based on preferences for recording programs, the crawler automatically records programs that are scheduled to run on the same day. This saves a lot of manual work in recording programs. 
-
-The final idea is to define ones own interests in television programs and have the crawler record them automatically or send notifications of possibly interesting programs. Whether programs should be recorded can be determined by several criteria such as program title, channel, time of day, and keywords in the description. 
diff --git a/crawler/kiss/conf/kiss/config.xml.example b/crawler/kiss/conf/kiss/config.xml.example
deleted file mode 100644 (file)
index 37ae666..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<crawler>
-    
-    <type>
-        <pattern>login</pattern>
-        <method>post</method>
-        <xslt>login-graphic.xsl</xslt>
-        <param name="user" value="youruserid"/>
-        <param name="passw1d" value="yourpassword"/>
-        <param name="GMode" value="GraphicMode"/>
-        <param name="SavePlayerID" value="1"/>
-        <param name="submit" value="Login"/>
-        <header name="Referer" value="http://epg.kml.kiss-technology.com/login.php"/>
-    </type>
-
-    <type> 
-        <pattern>channels-favorites</pattern>
-           <xslt>channels-favorites-graphic.xsl</xslt>
-    </type>
-    
-    <type>
-        <pattern>channel-overview</pattern>
-        <xslt>channel-overview.xsl</xslt>
-    </type>
-    
-    <type>
-        <pattern>right-now</pattern>
-        <xslt>channel-right-now-graphic.xsl</xslt>
-    </type>
-    
-    <type>
-        <pattern>tomorrow</pattern>
-        <xslt>channel-right-now-graphic.xsl</xslt>
-    </type>
-    
-    <type>
-        <pattern>program-info</pattern>
-        <xslt>program-info-mobile.xsl</xslt>
-    </type>
-       
-       <type>
-           <pattern>recorded</pattern>
-               <xslt>recorded.xsl</xslt>
-       </type>
-    
-    <url>
-        <pattern>http://epg.kml.kiss-technology.com/login.php</pattern>
-        <xslt>mainpage.xsl</xslt>
-    </url>
-        
-    <url>
-        <pattern>.*</pattern>
-        <method>get</method>
-        <xslt>identity.xsl</xslt>
-    </url>
-</crawler>
-
diff --git a/crawler/kiss/conf/kiss/org.wamblee.crawler.properties b/crawler/kiss/conf/kiss/org.wamblee.crawler.properties
deleted file mode 100644 (file)
index f26a432..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-############################################################################
-# Mail server configuration
-############################################################################
-org.wamblee.crawler.smtp.host=falcon
-org.wamblee.crawler.smtp.port=25
-org.wamblee.crawler.smtp.username=
-org.wamblee.crawler.smtp.password=
-
-############################################################################
-# Mail notification configuration 
-############################################################################
-org.wamblee.crawler.notification.from=kiss@wamblee.org
-org.wamblee.crawler.notification.to=erik@bladibla.org
-org.wamblee.crawler.notification.subject=Recording summary for tomorrow
-     
diff --git a/crawler/kiss/conf/kiss/programs.xml b/crawler/kiss/conf/kiss/programs.xml
deleted file mode 100644 (file)
index 538ce25..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-<programs>
-  
-  <program>
-    <category>horror</category>
-    <action>notify</action>
-    <match field="description">horror</match>
-  </program>
-
-  <program>
-    <category>horror</category>
-    <action>notify</action>
-    <match>the.*ghost.*whisperer</match>
-  </program>
-  
-  <program>
-    <category>films</category>
-    <action>notify</action>
-    <match field="keywords">film</match>
-    <match field="description">horror|actie|thriller</match>
-  </program>
-  
-  <program>
-    <category>wetenschap</category>
-    <action>notify</action>
-    <match field="description">wetenschap</match>
-  </program>
-  
-  <program>
-    <category>science fiction</category>
-    <action>notify</action>
-    <match field="description">sf-|(sci-fi)|(science fiction)</match>
-  </program>
-
-  <program>
-    <match>invasion</match>
-  </program>
-  
-  <program>
-    <action>notify</action>
-    <category>documentaires</category>
-    <match>(zembla)|(uur.*wolf)|(andere tijden)|(de.*leugen.*regeert)</match>
-  </program>
-  
-  <program>
-    <priority>20</priority>
-    <match>star.*gate</match>
-  </program>
-
-  <program>
-    <match>six.*feet.*under</match>
-  </program>
-  
-  <program>
-    <priority>11</priority>
-    <match>battlestar</match>
-  </program>
-
-  <program>
-    <priority>10</priority>
-    <match>star trek</match>
-  </program>
-
-  <program>
-    <priority>9</priority>
-    <match>((dr)|(doct.*)).*who</match>
-  </program>   
-
-  <program>
-    <priority>8</priority>
-    <match>little britain</match>
-  </program>
-
-  <program>
-    <priority>9</priority>
-    <match>the.*x.*files</match>
-  </program>
-
-  <program>
-    <priority>9</priority>
-    <match>buffy.*vampire.*slayer</match>
-  </program>
-
-  <program>
-    <action>notify</action>
-    <match>de.*wereld.*draait.*door</match>
-  </program>
-  
-  <program>
-    <priority>8</priority>
-    <match>jag</match>
-  </program>
-  
-  <program>
-    <priority>5</priority>
-    <match>shouf shouf</match>
-  </program>
-  
-  <program>
-    <match>red dwarf</match>
-  </program>
-  
-  <program>
-    <match>top gear</match>
-  </program>
-
-  <program>
-    <match>bedreigde.*paradijzen</match>
-  </program>
-
-  <program>
-    <match>wie is de baas</match>
-  </program>
-  
-  <program>
-    <category>wetenschap</category>
-    <action>notify</action>
-    <match>brainiac</match>
-  </program>
-  
-  <program>
-    <category>auto</category>
-    <match>wegmisbruikers|(blik.*op.*weg)</match>
-  </program>
-  
-</programs>
diff --git a/crawler/kiss/conf/kiss/run.bat b/crawler/kiss/conf/kiss/run.bat
deleted file mode 100755 (executable)
index a992c42..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-\r
-\r
-\r
-cd ../conf\r
-\r
-\r
-set CP=.;../lib/wamblee-support-0.2-SNAPSHOT.jar;../lib/wamblee-crawler-kiss-0.2-SNAPSHOT.jar\r
-\r
-\r
-java -classpath %CP% org.wamblee.crawler.kiss.main.KissCrawlerBootstrapper ../lib config.xml programs.xml\r
-\r
diff --git a/crawler/kiss/conf/kiss/run.sh b/crawler/kiss/conf/kiss/run.sh
deleted file mode 100755 (executable)
index e788ed4..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/ksh
-
-cd $( dirname $0 )/../conf
-
-CP=.:../lib/wamblee-support-0.2-SNAPSHOT.jar:../lib/wamblee-crawler-kiss-0.2-SNAPSHOT.jar
-
-set -x 
-java -classpath $CP org.wamblee.crawler.kiss.main.KissCrawlerBootstrapper \
-  ../lib  config.xml programs.xml
-
diff --git a/crawler/kiss/conf/xml/channel-overview.xml b/crawler/kiss/conf/xml/channel-overview.xml
deleted file mode 100644 (file)
index 528737c..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator"
-content="HTML Tidy for Linux/x86 (vers 1st April 2002), see www.w3.org" />
-<title></title>
-<meta http-equiv="content-type"
-content="text/html;charset=iso-8859-1" />
-<title>KiSS - Nederland 1 *</title>
-</head>
-<body bgcolor="#ffffff">
-d&gt;     <img src="../images/KiSS_Logo_small.gif"
-align="center" /> 
-<h1>&nbsp;Nederland 1 *</h1>
-
-<h2>What's on?</h2>
-
-<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?channel=6&amp;view=0&amp;now=1&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Right now</a> - 12:11, Monday 13th March<br />
- <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?channel=6&amp;view=20&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)1~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Evening</a> - Starting 20:00<br />
- <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?channel=6&amp;view=16&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)2~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Afternoon</a> - Starting 16:00<br />
- <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?channel=6&amp;view=12&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)3~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Noon</a> - Starting 12:00<br />
- <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?channel=6&amp;view=6&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)4~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Morning</a> - Starting 6:00<br />
- <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?channel=6&amp;view=36&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Tomorrow</a> &nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?channel=6&amp;view=60&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)8~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"
- class="grid">Wednesday</a>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?channel=6&amp;view=84&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)9~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"
- class="grid">Thursday</a>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?channel=6&amp;view=108&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)10~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"
- class="grid">Friday</a>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?channel=6&amp;view=132&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)11~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"
- class="grid">Saturday</a>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?channel=6&amp;view=156&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)12~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"
- class="grid">Sunday</a>&nbsp;<br />
- <br />
- [&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tv.php?mode=3&amp;page=0&amp;station=0&amp;tz=1&amp;sel=0&amp;back=$tvhtml$tvstart.php(tz)1">
-Back</a>&nbsp;]&nbsp;[&nbsp;<a
-href="tvstart.php">Home</a>&nbsp;]&nbsp;[&nbsp;<a
-href="../logout.php">Logout</a>&nbsp;]<br />
- 12:11, Monday 13th March
-</body>
-</html>
-
diff --git a/crawler/kiss/conf/xml/channel-right-now-graphic.xml b/crawler/kiss/conf/xml/channel-right-now-graphic.xml
deleted file mode 100644 (file)
index 4e71ee9..0000000
+++ /dev/null
@@ -1,749 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator" content="HTML Tidy, see www.w3.org" />
-<meta http-equiv="content-type"
-content="text/html;charset=iso-8859-1" />
-<meta name="generator" content="Adobe GoLive" />
-<link rel="STYLESHEET" type="text/css" href="../kiss.css" />
-<link rel='shortcut icon' href='../favicon.ico' />
-<script language="JavaScript1.2" src="../popup15.js"
-type="text/javascript">
-</script>
-
-<title>KiSS - Nederland 1</title>
-</head>
-<body bgcolor="#ffffff">
-<div id="popuptitle"
-style="visibility:hidden;position:absolute;z-index:1000;top:-100">
-</div>
-
-<script language="JavaScript1.2" type="text/javascript">
-        Style[0]=["#ffffff","#6f7e8f","","","font-family:arial,helvetica,geneva,swiss,sunsans-regular",2,"#183457","#d0dce8","","","font-family:arial,helvetica,geneva,swiss,sunsans-regular",1,,,2,"#92AAC6",4,,,,,"",,,,]
-        var TipId="popuptitle"
-        var FiltersEnabled = 1
-        mig_clay()
-        
-</script>
-
-<h1><img src="../images/KiSS_Logo.gif" align="right" /><a
-href="tvstart.php"><img border="0"
-src="../images/tvguide_logo.gif" /></a></h1>
-
-<br />
-
-<table align="center" width="400" border="0" cellspacing="0"
-cellpadding="1">
-<tr>
-<td align="left">
-<h1><img
-src="http://epg.kml.kiss-technology.com/tv/logos/6_w60.gif"
-align="middle" hspace="6" />&nbsp;Nederland 1</h1>
-
-<p></p>
-</td>
-</tr>
-</table>
-
-<table align="center" style="width: 400px; text-align: left;"
-border="0" cellpadding="0" cellspacing="0">
-<tbody>
-<tr>
-<td style="vertical-align: bottom; width: 400px;"><img
-src="../images/tabs_none.gif" border="0" alt=""
-usemap="#tabs_Map" /><map id="tabs_Map" name="tabs_Map">
-<area shape="poly" alt="What's On Now?"
-coords="126,30, 118,0, 0,0, 0,30"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?reload=1&amp;mode=3&amp;station=0&amp;view=0&amp;now=1"
- class="grid" />
-<area shape="poly" alt="Favorite Shows"
-coords="239,0, 247,30, 128,30, 120,0"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=6&amp;tz=2&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0"
- class="grid" />
-<area shape="poly" alt="Movies"
-coords="241,0, 250,30, 309,30, 300,0"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=7&amp;tz=2&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0"
- class="grid" />
-<area shape="poly" alt="Sports"
-coords="302,0, 311,30, 370,30, 362,0"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=9&amp;tz=2&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0"
- class="grid" />
-</map> </td>
-</tr>
-</tbody>
-</table>
-
-<table class="tvlist" align="center" width="400" border="0"
-cellspacing="0" cellpadding="1">
-<tr height="25">
-<td align="left" bgcolor="black" colspan="2"><font
-color="white"><b>&nbsp;Wednesday 23rd&nbsp;</b></font></td>
-<td align="right" bgcolor="black"><font color="white"><b>Page
-1/1</b>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?reload=1&amp;channel=6&amp;tz=2&amp;progid=0&amp;page=0&amp;day=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<img src="../images/arrowright.gif" alt="Next" border="0"
-align="texttop" /></a>&nbsp;</font></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;23:15 -
-00:00&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[0]=["Karels keuze","23:15 - 00:00&lt;br&gt;Documentaire  Het schokkende verhaal van een Turkse familie uit Denemarken, die verscheurd raakt door eerwraak. Een minutieuze reconstructie van een hartverscheurend drama, verteld door het meisje om wie de ruzie begon en haar broer, die door haar vader gedwongen werd de trekker over te halen. Hij was toen dertien jaar en moest meedoen omdat hij te jong was om veroordeeld te kunne [...]"]
-</script>
-
- <a onmouseover="stm(Text[0],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787582&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Karels keuze</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;00:00 -
-00:30&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[1]=["Nederland helpt","00:00 - 00:30&lt;br&gt;Serie reportages  over Nederlanders, bekend of onbekend, die zich inzetten voor een goed doel."]
-</script>
-
- <a onmouseover="stm(Text[1],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787583&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Nederland helpt</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;00:30 -
-00:55&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[2]=["Man beet hond","00:30 - 00:55"]
-</script>
-
- <a onmouseover="stm(Text[2],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787584&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Man beet hond</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;00:55 -
-06:45&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[3]=["Nacht-tv: Netwerk herhaling","00:55 - 06:45"]
-</script>
-
- <a onmouseover="stm(Text[3],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787585&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Nacht-tv: Netwerk herhaling</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;06:45 -
-07:00&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[4]=["Nederland in beweging","06:45 - 07:00&lt;br&gt;Gymnastiek  met als doel Nederlanders in beweging te krijgen. Met voedingstips, de favoriete sport van een bekende Nederlander en sportieve uitgaanstips."]
-</script>
-
- <a onmouseover="stm(Text[4],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849473&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Nederland in beweging</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;07:00 -
-09:00&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[5]=["NOS-Journaal","07:00 - 09:00&lt;br&gt;Gevolgd door herhalingen."]
-</script>
-
- <a onmouseover="stm(Text[5],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849474&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;09:00 -
-09:10&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[6]=["NOS-Journaal","09:00 - 09:10"]
-</script>
-
- <a onmouseover="stm(Text[6],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849475&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;09:10 -
-09:30&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[7]=["Nederland in beweging","09:10 - 09:30&lt;br&gt;Gymnastiek  met als doel Nederlanders in beweging te krijgen. Met voedingstips, de favoriete sport van een bekende Nederlander en sportieve uitgaanstips."]
-</script>
-
- <a onmouseover="stm(Text[7],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849476&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Nederland in beweging</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;09:30 -
-09:55&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[8]=["That's the question","09:30 - 09:55&lt;br&gt;Quiz  waarin twee deelnemers zo snel mogelijk een vraag moeten raden. Aan de hand van het beantwoorden van vragen worden er letters van de vraag zichtbaar. Met het goed beantwoorden van de vragen verdient de kandidaat seconden waarmee hij/zij later de finale speelt."]
-</script>
-
- <a onmouseover="stm(Text[8],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849477&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>That's the question</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;09:55 -
-11:00&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[9]=["TROS Zomeravondcaf&#233;","09:55 - 11:00&lt;br&gt;Live programma  vanaf het binnenplein van het TROS-gebouw. Iedere dag staat in het teken van een ander zomers thema. Bert Kuizenga praat met een bekende hoofdgast, die aansluit bij het thema van de dag. De actualiteit wordt behandeld door Angela Esajas. Verder twee muzikale acts en de kookrubriek met Ad Janssen. Bovendien is er twee keer per week een optreden van psycho-illusionis [...]"]
-</script>
-
- <a onmouseover="stm(Text[9],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849478&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>TROS Zomeravondcaf&eacute;</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;11:00 -
-11:30&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[10]=["Andere tijden","11:00 - 11:30&lt;br&gt;Geschiedenismagazine  Bij het hardrijden op de schaats deed Nederland tijdens de Olympische Winterspelen weer op veel fronten mee, maar bij het kunstrijden hadden we niets meer te zoeken. Dat is wel eens anders geweest; in 1964 won Sjoukje Dijkstra in Innsbr&#252;ck een gouden medaille. Over haar en haar hartsvriendin &#232;n rivale Joan Haanappel gaat deze aflevering."]
-</script>
-
- <a onmouseover="stm(Text[10],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849479&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Andere tijden</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;11:30 -
-12:00&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[11]=["De vloer op","11:30 - 12:00&lt;br&gt;Acteurs improviseren in het Bimhuis.  -Vervangster gezocht. Met Carly Wijs, Hadewych Minis en Gijs Scholten van Aschat. Carly heeft nog ongeveer twee maanden te leven. Ze gaat naar de secretaresse van haar man en vraagt haar of zij na haar dood haar plaats wil innemen. In alle opzichten. -Burka zoekt imam. Met Leopold Witte en Pierre Bokma. Pierre is burgemeester van een kleine Li [...]"]
-</script>
-
- <a onmouseover="stm(Text[11],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849480&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>De vloer op</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;12:00 -
-12:10&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[12]=["NOS-Journaal","12:00 - 12:10"]
-</script>
-
- <a onmouseover="stm(Text[12],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849481&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;12:10 -
-12:40&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[13]=["Man beet hond","12:10 - 12:40&lt;br&gt;Het beste van  het afgelopen jaar."]
-</script>
-
- <a onmouseover="stm(Text[13],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849482&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Man beet hond</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;12:40 -
-13:00&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[14]=["Lingo","12:40 - 13:00&lt;br&gt;Woordspel  waarin spelers zesletterwoorden moeten raden en deelnemers aan de Postcode Loterij met de PostcodeLingo-kaart mee kunnen spelen en waarin de bekendmaking van de dagpostcodes voor de Lingospelers thuis plaatsvindt."]
-</script>
-
- <a onmouseover="stm(Text[14],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849483&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Lingo</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;13:00 -
-13:10&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[15]=["NOS-Journaal","13:00 - 13:10"]
-</script>
-
- <a onmouseover="stm(Text[15],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849484&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;13:10 -
-13:15&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[16]=["NOS-Sportjournaal","13:10 - 13:15"]
-</script>
-
- <a onmouseover="stm(Text[16],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849485&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Sportjournaal</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;13:15 -
-14:05&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[17]=["Warzone: Congo","13:15 - 14:05&lt;br&gt;Documentaire  waarin het leven van jongeren in conflictgebieden op een indringende manier in beeld wordt gebracht. In Congo worden Gideon van Aartsen en zijn 25-jarige reisgenote Nynke Douma geconfronteerd met tienermoeders en heksenkinderen. In dit land vinden veel verkrachtingen plaats, waardoor de grote hoeveelheid tienermoeders kan worden verklaart. Ook onderzoeken ze het feno [...]"]
-</script>
-
- <a onmouseover="stm(Text[17],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849486&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Warzone: Congo</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;14:05 -
-14:35&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[18]=["Wroeten","14:05 - 14:35&lt;br&gt;12-delige Tuinprogramma  waarin Arjan Ederveen bevlogen verslag uitbrengt van wat er gebeurt in de tuin bij zijn boerderij: er groeien gewone en ongewone groenten, er bloeien bloemen en planten en elke week wordt er een logeerdier gebracht door een boer die wel eens met vakantie wil. Arjan wordt bijgestaan door Heilien Tonckens, expert in ecologisch tuinieren, en tuinman Hans Enge [...]"]
-</script>
-
- <a onmouseover="stm(Text[18],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849487&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Wroeten</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;14:35 -
-15:14&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[19]=["Spraakmakende zaken","14:35 - 15:14&lt;br&gt;8-delige Serie gesprekken  over actuele kwesties. Paul Rosenm&#246;ller ontvangt zijn gasten in Paviljoen Het Oosten in Amsterdam, waar hij met hen praat over brandende kwesties uit het recente verleden.  Het is behoorlijk bijzonder dat SGP-leider Bas van der Vlies tekst en uitleg komt geven over de vrouwenkwestie in de SGP. SGP-ers zijn uit overtuiging immers niet zo dol op telev [...]"]
-</script>
-
- <a onmouseover="stm(Text[19],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849488&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Spraakmakende zaken</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;15:14 -
-15:16&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[20]=["Wilde Ganzen","15:14 - 15:16"]
-</script>
-
- <a onmouseover="stm(Text[20],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849489&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Wilde Ganzen</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;15:16 -
-16:00&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[21]=["Opsporing verzocht","15:16 - 16:00&lt;br&gt;Opsporingsprogramma  i.s.m. politie en justitie voor een veiliger samenleving."]
-</script>
-
- <a onmouseover="stm(Text[21],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849490&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Opsporing verzocht</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;16:00 -
-16:05&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[22]=["NOS-Journaal","16:00 - 16:05"]
-</script>
-
- <a onmouseover="stm(Text[22],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849491&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;16:05 -
-17:00&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[23]=["Denkend aan Showroom","16:05 - 17:00&lt;br&gt;Herinneringen  aan de kleurrijke mensen uit het spraakmakende programma Showroom (1977-1983)."]
-</script>
-
- <a onmouseover="stm(Text[23],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849492&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Denkend aan Showroom</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;17:00 -
-17:05&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[24]=["NOS-Journaal","17:00 - 17:05"]
-</script>
-
- <a onmouseover="stm(Text[24],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849493&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;17:05 -
-17:35&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[25]=["God voor...","17:05 - 17:35&lt;br&gt;Snel interviewprogramma over langzame zaken.  Surinamers over feesten en God."]
-</script>
-
- <a onmouseover="stm(Text[25],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849494&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>God voor...</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;17:35 -
-18:30&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[26]=["Himalaya with Michael Palin","17:35 - 18:30&lt;br&gt;6-delige Serie reportages  Nadat Michael Palin eerder de uitdagingen van zee&#235;n, polen en woestijnen is aangegaan, vormen de hoogste bergen ter wereld voor hem een natuurlijk doel. Hij volgt de Himalaya over de hele lengte van het gebergte, van de grens tussen Pakistan en Afghanistan door India, Nepal en Tibet en Yunnan in China. Waarna hij opnieuw de bergen oversteekt, naar A [...]"]
-</script>
-
- <a onmouseover="stm(Text[26],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849495&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Himalaya with Michael Palin</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;18:30 -
-19:00&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[27]=["That's the question","18:30 - 19:00&lt;br&gt;Quiz  waarin twee deelnemers zo snel mogelijk een vraag moeten raden. Aan de hand van het beantwoorden van vragen worden er letters van de vraag zichtbaar. Met het goed beantwoorden van de vragen verdient de kandidaat seconden waarmee hij/zij later de finale speelt."]
-</script>
-
- <a onmouseover="stm(Text[27],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849496&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>That's the question</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;19:00 -
-19:30&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[28]=["Man beet hond","19:00 - 19:30&lt;br&gt;Het beste van  het afgelopen jaar."]
-</script>
-
- <a onmouseover="stm(Text[28],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849497&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Man beet hond</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;19:30 -
-20:00&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[29]=["De confrontatie","19:30 - 20:00&lt;br&gt;Edwin is een goeduitziende jongen van twintig jaar. Hij heeft een aangeboren botafwijking en mist daardoor zijn bovenbenen. Hij kan kleine stukjes lopen, maar is in principe rolstoelgebonden. Vanaf zijn dertiende is Edwin rolstoelbasketbal gaan spelen. Eerst nog op lokaal niveau, maar na een inschrijving voor selectietrainingen in 2005 werd hij gescout voor het Nederlandse nationa [...]"]
-</script>
-
- <a onmouseover="stm(Text[29],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849498&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>De confrontatie</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;20:00 -
-20:30&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[30]=["NOS-Journaal","20:00 - 20:30"]
-</script>
-
- <a onmouseover="stm(Text[30],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849499&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;20:30 -
-21:00&nbsp;</font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[31]=["Netwerk","20:30 - 21:00&lt;br&gt;Actualiteiten  van EO, KRO en NCRV."]
-</script>
-
- <a onmouseover="stm(Text[31],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849500&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Netwerk</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;21:00 -
-22:35&nbsp;</font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[32]=["KRO Detectives: Judge John Deed","21:00 - 22:35&lt;br&gt;Misdaadserie  Een jonge vrouw wordt bruut doodgeslagen. Gary Patterson bekent de moord. Hij heeft echter de mentale leeftijd van een jonge tiener en als hij zijn bekentenis ook nog intrekt, wordt het moeilijk de waarheid te achterhalen. Intussen onderzoekt Deed ook een zaak van grootschalige hypotheekfraude. Hierbij blijken procureurs betrokken. Met zijn hardnekkige onderzoek lijk [...]"]
-</script>
-
- <a onmouseover="stm(Text[32],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849501&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>KRO Detectives: Judge John Deed</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" bgcolor="#106F10">
-<div align="center"><font color="#FFFFFF"><b>&nbsp;22:35 -
-23:05&nbsp;</b></font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[33]=["Dochters + moeders","22:35 - 23:05&lt;br&gt;Ze heeft je gebaard, ze is lief, af en toe wil je haar het liefst achter het behang plakken maar het blijft toch je moeder. Ze is eigenwijs, komt altijd met de foute vriendjes thuis en luistert nooit maar het blijft je dochter. Is er een uniekere band dan die tussen dochter en moeder?."]
-</script>
-
- <a onmouseover="stm(Text[33],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849502&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Dochters + moeders</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" bgcolor="#1B4198">
-<div align="center"><font color="#FFFFFF"><b>&nbsp;23:05 -
-23:32&nbsp;</b></font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[34]=["De God van Nederland","23:05 - 23:32&lt;br&gt;8-delige Serie reportages  waarin de barometerstand van de wonderbaarlijke terugkeer van de christelijke God in de Hollandse polder gepeild wordt en die op zoek gaat naar het Nieuw Religieus Peil. Een serie over verlangen naar idealen, geborgenheid en gemeenschap en een zinvol bestaan als rituele dagsluiting voor gelovigen en ongelovigen, zoekers en zieners, dolende zielen en vast [...]"]
-</script>
-
- <a onmouseover="stm(Text[34],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849503&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>De God van Nederland</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" bgcolor="#1B4198">
-<div align="center"><font color="#FFFFFF"><b>&nbsp;23:32 -
-23:40&nbsp;</b></font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[35]=["Wilde Ganzen","23:32 - 23:40"]
-</script>
-
- <a onmouseover="stm(Text[35],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849504&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Wilde Ganzen</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" bgcolor="#1B4198">
-<div align="center"><font color="#FFFFFF"><b>&nbsp;23:40 -
-00:05&nbsp;</b></font></div>
-</td>
-<td align="center" class="listCell2" width="10"></td>
-<td align="left" class="listCell2">
-<script type="text/javascript" language="JavaScript1.2">
-Text[36]=["Man beet hond","23:40 - 00:05"]
-</script>
-
- <a onmouseover="stm(Text[36],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849505&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Man beet hond</b></a></td>
-</tr>
-
-<tr>
-<td width="100" align="center" bgcolor="#1B4198">
-<div align="center"><font color="#FFFFFF"><b>&nbsp;00:05 -
-06:45&nbsp;</b></font></div>
-</td>
-<td align="center" class="listCell1" width="10"></td>
-<td align="left" class="listCell1">
-<script type="text/javascript" language="JavaScript1.2">
-Text[37]=["Nacht-tv: Netwerk herhaling","00:05 - 06:45"]
-</script>
-
- <a onmouseover="stm(Text[37],Style[0])" onmouseout="htm()"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777849506&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Nacht-tv: Netwerk herhaling</b></a></td>
-</tr>
-</table>
-
-<br />
-
-<table align="center" width="400" border="0" cellspacing="0"
-cellpadding="1">
-<tr>
-<td rowspan="3">&nbsp;</td>
-<td style="width: 140px; vertical-align: bottom;"><img
-src="../images/legend_green.gif" />&nbsp;&nbsp;Currently
-showing<br />
-</td>
-<td style="width: 140px; vertical-align: bottom;"><img
-src="../images/legend_orange.gif" />&nbsp;&nbsp;Favorite<br />
-</td>
-</tr>
-
-<tr>
-<td style="vertical-align: middle;"><img
-src="../images/legend_blue.gif" />&nbsp;&nbsp;Future showing<br />
-</td>
-<td style="vertical-align: middle;"><img
-src="../images/legend_red.gif" />&nbsp;&nbsp;Scheduled
-recording<br />
-</td>
-</tr>
-
-<tr>
-<td style="vertical-align: middle;"><img
-src="../images/legend_purple.gif" />&nbsp;&nbsp;Movie<br />
-</td>
-<td style="vertical-align: middle;">&nbsp;</td>
-</tr>
-</table>
-
-<table align="center" width="400" border="0" cellspacing="0"
-cellpadding="1">
-<tr>
-<td><br />
- <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;station=6&amp;tz=2&amp;sel=0&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<img src="../images/back.gif" alt="Back" border="0"
-align="middle" /></a><a href="tvstart.php"><img
-src="../images/home.gif" alt="Home" border="0"
-align="middle" /></a><a href="../logout.php"><img
-src="../images/logout.gif" alt="Logout" border="0"
-align="middle" /></a>&nbsp;&nbsp;22:38, Wednesday 23rd August</td>
-</tr>
-</table>
-</body>
-</html>
-
diff --git a/crawler/kiss/conf/xml/channel-right-now-mobile-output.xml b/crawler/kiss/conf/xml/channel-right-now-mobile-output.xml
deleted file mode 100644 (file)
index eca47bc..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><channel-right-now><action name="" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?reload=1&amp;channel=6&amp;tz=2&amp;progid=0&amp;page=0&amp;day=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2"><time> Monday 21st </time></action>
-      
-    <action name="NCRV Dokument: Het recht om te sterven" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787547&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2"><time> 23:00 -23:45 </time></action>
-      
-    <action name="Apocalyps Vietnam" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787548&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2"><time> 23:45 -00:40 </time></action>
-      
-    <action name="Man beet hond" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787549&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2"><time> 00:40 -01:10 </time></action>
-      
-    <action name="Nacht-tv: Netwerk herhaling" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787550&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2"><time> 01:10 -06:45 </time></action>
-      
-    <action name="" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?reload=1&amp;channel=6&amp;tz=2&amp;progid=0&amp;page=0&amp;day=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2"><time> Monday 21st </time></action>
-      
-    <action name="" type="program-info" reference=""><time>    23:13, Monday 21st August</time></action>
-      
-    </channel-right-now>
diff --git a/crawler/kiss/conf/xml/channel-right-now-mobile.xml b/crawler/kiss/conf/xml/channel-right-now-mobile.xml
deleted file mode 100644 (file)
index 969c7ad..0000000
+++ /dev/null
@@ -1,411 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator" content="HTML Tidy, see www.w3.org" />
-<meta http-equiv="content-type"
-content="text/html;charset=iso-8859-1" />
-<meta name="generator" content="Adobe GoLive" />
-<link rel="STYLESHEET" type="text/css" href="../kiss.css" />
-<link rel='shortcut icon' href='../favicon.ico' />
-<title>KiSS - Nederland 1</title>
-</head>
-<body bgcolor="#ffffff">
-<img src="../images/KiSS_Logo_small.gif" align="right" /> 
-
-<h1>Nederland 1</h1>
-
-<table class="tvlist" align="center" width="100%" border="0"
-cellspacing="0" cellpadding="1">
-<tr height="25">
-<td align="left" bgcolor="black"><font
-color="white"><b>&nbsp;Monday 21st&nbsp;</b></font></td>
-<td align="right" bgcolor="black"><font color="white"><b>Page
-1/1</b>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?reload=1&amp;channel=6&amp;tz=2&amp;progid=0&amp;page=0&amp;day=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<img src="../images/arrowright_small.gif" alt="Next" border="0"
-align="texttop" /></a>&nbsp;</font></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;22:30 -
-00:15&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a class="movie"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777728676&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>KRO Filmtheater: Hollywood ending</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;00:15 -
-06:45&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777728677&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Tekst tv</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;06:45 -
-07:00&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787518&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Nederland in beweging</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;07:00 -
-09:00&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787519&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;09:00 -
-09:10&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787520&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;09:10 -
-09:30&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787521&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Nederland in beweging</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;09:30 -
-10:00&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787522&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>That's the question</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;10:00 -
-11:00&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787523&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>TROS Muziekfeest in de ArenA 2004</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;11:00 -
-11:25&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787524&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Hello Goodbye</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;11:25 -
-12:00&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787525&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Wat Zou JIJ Doen?</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;12:00 -
-12:10&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787526&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;12:10 -
-12:40&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787527&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Taxi</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;12:40 -
-13:00&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787528&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Lingo</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;13:00 -
-13:10&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787529&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;13:10 -
-13:20&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787530&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Sportjournaal</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;13:20 -
-14:05&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787531&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Warzone: Zuid-Afrika</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;14:05 -
-15:20&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787532&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Tien maal Mozart</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;15:20 -
-16:00&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787533&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Kruispunt</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;16:00 -
-16:05&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787534&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;16:05 -
-17:00&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787535&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Oppassen &amp; wegwezen</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;17:00 -
-17:05&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787536&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;17:05 -
-17:30&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787537&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Schepper &amp; co</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;17:30 -
-18:30&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787538&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Himalaya with Michael Palin</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;18:30 -
-18:55&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787539&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>That's the question</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;18:55 -
-19:30&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787540&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Man beet hond</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;19:30 -
-20:00&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787541&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Ingang Oost</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;20:00 -
-20:30&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787542&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NOS-Journaal</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;20:30 -
-21:00&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787543&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Netwerk</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;21:00 -
-22:00&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787544&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Memories Tour d'Amour</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell1">
-<div align="center"><font color="#000000">&nbsp;22:00 -
-22:30&nbsp;</font></div>
-</td>
-<td align="left" class="listCell1"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787545&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Hello Goodbye</b></a></td>
-</tr>
-
-<tr>
-<td align="center" class="listCell2">
-<div align="center"><font color="#000000">&nbsp;22:30 -
-23:00&nbsp;</font></div>
-</td>
-<td align="left" class="listCell2"><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787546&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Villa historica</b></a></td>
-</tr>
-
-<tr>
-<td align="center" bgcolor="#106F10">
-<div align="center"><font color="#FFFFFF"><b>&nbsp;23:00 -
-23:45&nbsp;</b></font></div>
-</td>
-<td align="left" bgcolor="#106F10"><font
-color="#FFFFFF"><b>&nbsp;<a class="white"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787547&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>NCRV Dokument: Het recht om te sterven</b></a></b></font></td>
-</tr>
-
-<tr>
-<td align="center" bgcolor="#1B4198">
-<div align="center"><font color="#FFFFFF"><b>&nbsp;23:45 -
-00:40&nbsp;</b></font></div>
-</td>
-<td align="left" bgcolor="#1B4198"><font
-color="#FFFFFF"><b>&nbsp;<a class="white"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787548&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Apocalyps Vietnam</b></a></b></font></td>
-</tr>
-
-<tr>
-<td align="center" bgcolor="#1B4198">
-<div align="center"><font color="#FFFFFF"><b>&nbsp;00:40 -
-01:10&nbsp;</b></font></div>
-</td>
-<td align="left" bgcolor="#1B4198"><font
-color="#FFFFFF"><b>&nbsp;<a class="white"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787549&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Man beet hond</b></a></b></font></td>
-</tr>
-
-<tr>
-<td align="center" bgcolor="#1B4198">
-<div align="center"><font color="#FFFFFF"><b>&nbsp;01:10 -
-06:45&nbsp;</b></font></div>
-</td>
-<td align="left" bgcolor="#1B4198"><font
-color="#FFFFFF"><b>&nbsp;<a class="white"
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1777787550&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<b>Nacht-tv: Netwerk herhaling</b></a></b></font></td>
-</tr>
-
-<tr height="25">
-<td align="left" bgcolor="black"><font
-color="white"><b>&nbsp;Monday 21st&nbsp;</b></font></td>
-<td align="right" bgcolor="black"><font color="white"><b>Page
-1/1</b>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?reload=1&amp;channel=6&amp;tz=2&amp;progid=0&amp;page=0&amp;day=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<img src="../images/arrowright_small.gif" alt="Next" border="0"
-align="texttop" /></a>&nbsp;</font></td>
-</tr>
-</table>
-
-<table align="center" width="100%" border="0" cellspacing="0"
-cellpadding="1">
-<tr>
-<td><br />
-<br />
- <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;station=6&amp;tz=2&amp;sel=0&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-<img src="../images/back_small.gif" alt="Back" border="0"
-align="center" /></a>&nbsp;<a href="tvstart.php"><img
-src="../images/home_small.gif" alt="Home" border="0"
-align="center" /></a>&nbsp;<a href="../logout.php"><img
-src="../images/logout_small.gif" alt="Logout" border="0"
-align="center" /></a>&nbsp;23:13, Monday 21st August</td>
-</tr>
-</table>
-</body>
-</html>
diff --git a/crawler/kiss/conf/xml/channel-right-now-output.xml b/crawler/kiss/conf/xml/channel-right-now-output.xml
deleted file mode 100644 (file)
index 6597e6a..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><channel-right-now><action name="&gt;&gt;" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?reload=1&amp;channel=6&amp;tz=1&amp;progid=0&amp;page=0&amp;day=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>  </time></action>
-      
-    <action name="Wintertijd" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772362161&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
- 23:55 - 00:40 - </time></action>
-      
-    <action name="Nacht-tv: Netwerk herhalingen" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772362162&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-00:50 - 06:15 - </time></action>
-      
-    <action name="Nederland in beweging" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395832&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-06:45 - 06:59 - </time></action>
-      
-    <action name="Goedemorgen Nederland" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395833&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-06:59 - 09:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395834&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
- 07:00 - 07:10 - </time></action>
-      
-    <action name="Goedemorgen Nederland" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395835&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-07:10 - 07:30 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395836&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-07:30 - 07:40 - </time></action>
-      
-    <action name="Goedemorgen Nederland" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395837&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-07:40 - 08:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395838&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-08:00 - 08:10 - </time></action>
-      
-    <action name="Goedemorgen Nederland" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395839&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-08:10 - 08:30 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395840&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
- 08:30 - 08:40 - </time></action>
-      
-    <action name="Goedemorgen Nederland" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395841&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-08:40 - 09:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395842&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-09:00 - 09:10 - </time></action>
-      
-    <action name="Nederland in beweging" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395843&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-09:10 - 09:30 - </time></action>
-      
-    <action name="That's the question" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395844&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-09:30 - 09:55 - </time></action>
-      
-    <action name="Schoondochter gezocht" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395845&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-09:55 - 10:50 - </time></action>
-      
-    <action name="Blauw bloed" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395846&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
- 10:50 - 11:15 - </time></action>
-      
-    <action name="Appeltje voor de dorst" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395847&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-11:15 - 12:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395848&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>12:00 - 12:10 - </time></action>
-      
-    <action name="Man bijt hond" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395849&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>12:10 - 12:35 - </time></action>
-      
-    <action name="Voor alle fans: Drukwerk" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395850&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>12:35 - 12:57 - </time></action>
-      
-    <action name="Trekking Lingo" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395851&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>12:57 - 13:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395852&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>13:00 - 13:10 - </time></action>
-      
-    <action name="NOS-Sportjournaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395853&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>13:10 - 13:20 - </time></action>
-      
-    <action name="Buitenhof" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395854&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>13:20 - 14:15 - </time></action>
-      
-    <action name="Hoge bomen in de misdaad" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395855&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>14:15 - 14:55 - </time></action>
-      
-    <action name="AVRO Dierenpark" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395856&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>14:55 - 15:20 - </time></action>
-      
-    <action name="Kruispunt" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395857&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>15:20 - 16:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395858&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>16:00 - 16:05 - </time></action>
-      
-    <action name="Helden van nu: Vrijwilligers in de gezondheidszorg" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395859&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>16:05 - 16:30 - </time></action>
-      
-    <action name="Leven met verlies" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395860&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>16:30 - 17:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395861&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>17:00 - 17:10 - </time></action>
-      
-    <action name="Schepper &amp; co" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395862&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>17:10 - 17:35 - </time></action>
-      
-    <action name="MAX &amp; Catherine" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395863&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>17:35 - 18:30 - </time></action>
-      
-    <action name="That's the question" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395864&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>18:30 - 18:55 - </time></action>
-      
-    <action name="Man bijt hond" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395865&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>18:55 - 19:25 - </time></action>
-      
-    <action name="Ingang Oost" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395866&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>19:25 - 20:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395867&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>20:00 - 20:30 - </time></action>
-      
-    <action name="Netwerk" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395868&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>20:30 - 21:05 - </time></action>
-      
-    <action name="Memories" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395869&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>21:05 - 22:05 - </time></action>
-      
-    <action name="Keyzer &amp; De Boer Advocaten" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395870&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>22:05 - 22:55 - </time></action>
-      
-    <action name="NCRV Dokument: Een familie van vaders" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395871&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>22:55 - 23:50 - </time></action>
-      
-    <action name="Blauw bloed" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395872&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>23:50 - 00:20 - </time></action>
-      
-    <action name="Man bijt hond" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395873&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>00:20 - 00:50 - </time></action>
-      
-    <action name="Nacht-tv: Netwerk herhaling" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395874&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>00:50 - 06:45 - </time></action>
-      
-    
-BackHomeLogout</channel-right-now>
diff --git a/crawler/kiss/conf/xml/channel-right-now.xml b/crawler/kiss/conf/xml/channel-right-now.xml
deleted file mode 100644 (file)
index e6fd80d..0000000
+++ /dev/null
@@ -1,166 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator"
-content="HTML Tidy for Linux/x86 (vers 1st April 2002), see www.w3.org" />
-<meta http-equiv="content-type"
-content="text/html;charset=iso-8859-1" />
-<title>KiSS - Nederland 1</title>
-</head>
-<body bgcolor="#ffffff">
-<img src="../images/KiSS_Logo_small.gif" align="center" /> 
-<h1>Nederland 1</h1>
-
-<b>Monday 13th</b><br />
-<b>Page 1/1</b>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?reload=1&amp;channel=6&amp;tz=1&amp;progid=0&amp;page=0&amp;day=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-&gt;&gt;</a>&nbsp;<br />
-<br />
- 23:55 - 00:40 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772362161&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Wintertijd</a><br />
-00:50 - 06:15 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772362162&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Nacht-tv: Netwerk herhalingen</a><br />
-06:45 - 06:59 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395832&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Nederland in beweging</a><br />
-06:59 - 09:00 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395833&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Goedemorgen Nederland</a><br />
- 07:00 - 07:10 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395834&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-NOS-Journaal</a><br />
-07:10 - 07:30 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395835&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Goedemorgen Nederland</a><br />
-07:30 - 07:40 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395836&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-NOS-Journaal</a><br />
-07:40 - 08:00 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395837&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Goedemorgen Nederland</a><br />
-08:00 - 08:10 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395838&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-NOS-Journaal</a><br />
-08:10 - 08:30 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395839&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Goedemorgen Nederland</a><br />
- 08:30 - 08:40 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395840&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-NOS-Journaal</a><br />
-08:40 - 09:00 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395841&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Goedemorgen Nederland</a><br />
-09:00 - 09:10 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395842&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-NOS-Journaal</a><br />
-09:10 - 09:30 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395843&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Nederland in beweging</a><br />
-09:30 - 09:55 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395844&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-That's the question</a><br />
-09:55 - 10:50 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395845&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Schoondochter gezocht</a><br />
- 10:50 - 11:15 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395846&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Blauw bloed</a><br />
-11:15 - 12:00 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395847&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Appeltje voor de dorst</a><br />
-<i>12:00 - 12:10 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395848&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-NOS-Journaal</a></i><br />
-<i>12:10 - 12:35 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395849&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Man bijt hond</a></i><br />
-<i>12:35 - 12:57 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395850&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Voor alle fans: Drukwerk</a></i><br />
-<i>12:57 - 13:00 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395851&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Trekking Lingo</a></i><br />
- <i>13:00 - 13:10 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395852&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-NOS-Journaal</a></i><br />
-<i>13:10 - 13:20 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395853&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-NOS-Sportjournaal</a></i><br />
-<i>13:20 - 14:15 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395854&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Buitenhof</a></i><br />
-<i>14:15 - 14:55 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395855&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Hoge bomen in de misdaad</a></i><br />
-<i>14:55 - 15:20 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395856&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-AVRO Dierenpark</a></i><br />
-<i>15:20 - 16:00 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395857&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Kruispunt</a></i><br />
- <i>16:00 - 16:05 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395858&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-NOS-Journaal</a></i><br />
-<i>16:05 - 16:30 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395859&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Helden van nu: Vrijwilligers in de gezondheidszorg</a></i><br />
-<i>16:30 - 17:00 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395860&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Leven met verlies</a></i><br />
-<i>17:00 - 17:10 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395861&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-NOS-Journaal</a></i><br />
-<i>17:10 - 17:35 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395862&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Schepper &amp; co</a></i><br />
- <i>17:35 - 18:30 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395863&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-MAX &amp; Catherine</a></i><br />
-<i>18:30 - 18:55 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395864&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-That's the question</a></i><br />
-<i>18:55 - 19:25 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395865&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Man bijt hond</a></i><br />
-<i>19:25 - 20:00 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395866&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Ingang Oost</a></i><br />
-<i>20:00 - 20:30 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395867&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-NOS-Journaal</a></i><br />
- <i>20:30 - 21:05 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395868&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Netwerk</a></i><br />
-<i>21:05 - 22:05 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395869&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Memories</a></i><br />
-<i>22:05 - 22:55 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395870&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Keyzer &amp; De Boer Advocaten</a></i><br />
-<i>22:55 - 23:50 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395871&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-NCRV Dokument: Een familie van vaders</a></i><br />
-<i>23:50 - 00:20 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395872&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Blauw bloed</a></i><br />
- <i>00:20 - 00:50 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395873&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Man bijt hond</a></i><br />
-<i>00:50 - 06:45 - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395874&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Nacht-tv: Netwerk herhaling</a></i><br />
-<br />
- <br />
-<br />
- [&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;station=6&amp;tz=1&amp;sel=0&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Back</a>&nbsp;]&nbsp;[&nbsp;<a
-href="tvstart.php">Home</a>&nbsp;]&nbsp;[&nbsp;<a
-href="../logout.php">Logout</a>&nbsp;]<br />
- 12:04, Monday 13th March
-</body>
-</html>
-
diff --git a/crawler/kiss/conf/xml/channels-favorites-graphic-output.xml b/crawler/kiss/conf/xml/channels-favorites-graphic-output.xml
deleted file mode 100644 (file)
index 4c26a2b..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<favorite-channels>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="Nederland 1" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=6&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="Nederland 2" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=2&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)1~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="Nederland 3" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=5&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)2~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="Net5" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=4&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)3~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="RTL4" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=9&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)4~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="SBS6" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=7&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)5~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="RTL5" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=3&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)6~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="Discovery Channel"
-        type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=99&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)7~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="RTL7" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=8&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)8~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="Veronica" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=1&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)9~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="MTV" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=177&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)10~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="TheBox" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=665&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)11~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="Eurosport" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=94&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)12~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="CNN" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=470&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)13~back)$tvhtml$tvstart.php(tz)2"/>
-    <action xmlns:xhtml="http://www.w3.org/1999/xhtml" name="BBC1" type="channel-overview"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=184&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)14~back)$tvhtml$tvstart.php(tz)2"
-    />
-</favorite-channels>
diff --git a/crawler/kiss/conf/xml/channels-favorites-graphic.xml b/crawler/kiss/conf/xml/channels-favorites-graphic.xml
deleted file mode 100644 (file)
index c07fa37..0000000
+++ /dev/null
@@ -1,416 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"\r
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml">\r
- <head>
-  <meta name="generator" content="HTML Tidy, see www.w3.org"/>
-  <meta http-equiv="content-type" content="text/html;charset=iso-8859-1"/>
-  <link rel="STYLESHEET" type="text/css" href="../kiss.css"/>
-  <link rel="shortcut icon" href="../favicon.ico"/>
-  <title>KiSS - Favorite Channels</title>
- </head>
- <body bgcolor="#ffffff">
-  <h1>
-   <img src="../images/KiSS_Logo.gif" align="right"/>
-   <a href="tvstart.php">
-    <img border="0" src="../images/tvguide_logo.gif"/>
-   </a>
-  </h1>
-
-  <br/>
-
-
-  <table align="center" width="400" border="0" cellspacing="0" cellpadding="1">
-   <tr>
-    <td align="left">
-     <h1>Favorite Channels</h1>
-
-     <p/>
-    </td>
-   </tr>
-  </table>
-
-  <table align="center" style="width: 400; text-align: left;" border="0" cellpadding="0"
-   cellspacing="0">
-   <tbody>
-    <tr>
-     <td style="vertical-align: bottom; width: 400px;">
-      <img src="../images/tabs_none.gif" alt="" usemap="#tabs_Map" border="0"/>
-      <map id="tabs_Map" name="tabs_Map">
-       <area shape="poly" alt="What's On Now?" coords="126,30, 118,0, 0,0, 0,30"
-        href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?reload=1&amp;mode=3&amp;station=0&amp;view=0&amp;now=1"
-        class="grid"/>
-       <area shape="poly" alt="Favorite Shows" coords="239,0, 247,30, 128,30, 120,0"
-        href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=6&amp;tz=2&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2"
-        class="grid"/>
-       <area shape="poly" alt="Movies" coords="241,0, 250,30, 309,30, 300,0"
-        href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=7&amp;tz=2&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2"
-        class="grid"/>
-       <area shape="poly" alt="Sports" coords="302,0, 311,30, 370,30, 362,0"
-        href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=9&amp;tz=2&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2"
-        class="grid"/>
-      </map>
-     </td>
-    </tr>
-   </tbody>
-  </table>
-
-  <table class="tv" align="center" width="400" border="0" cellspacing="1" cellpadding="1">
-   <tr height="25">
-    <td bgcolor="black" align="right" colspan="3">
-     <font color="white">&nbsp;<a
-       href="http://epg.kml.kiss-technology.com/tvhtml/tv.php?reload=1&amp;mode=3&amp;station=0&amp;page=1&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2">
-       <img src="../images/arrowleft.gif" alt="Prev" border="0" align="texttop"/>
-      </a>&nbsp;&nbsp;<b>Page 1/2</b>&nbsp;&nbsp;<a
-       href="http://epg.kml.kiss-technology.com/tvhtml/tv.php?reload=1&amp;mode=3&amp;station=0&amp;page=1&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2">
-       <img src="../images/arrowright.gif" alt="Next" border="0" align="texttop"/>
-      </a>&nbsp;<br/>
-     </font>
-    </td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/6_h30.gif" align="middle"
-     />&nbsp;<b>NL1</b></td>
-    <td align="left" class="listCell2">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=6&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-      <b>Nederland 1</b>
-     </a>
-    </td>
-    <td align="center" class="listCell2"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=6&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)0~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=6&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)0~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=6&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)0~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/2_h30.gif" align="middle"
-     />&nbsp;<b>NL2</b></td>
-    <td align="left" class="listCell1">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=2&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)1~back)$tvhtml$tvstart.php(tz)2">
-      <b>Nederland 2</b>
-     </a>
-    </td>
-    <td align="center" class="listCell1"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=2&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)1~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=2&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)1~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=2&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)1~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/5_h30.gif" align="middle"
-     />&nbsp;<b>NL3</b></td>
-    <td align="left" class="listCell2">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=5&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)2~back)$tvhtml$tvstart.php(tz)2">
-      <b>Nederland 3</b>
-     </a>
-    </td>
-    <td align="center" class="listCell2"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=5&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)2~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=5&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)2~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=5&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)2~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/4_h30.gif" align="middle"
-     />&nbsp;<b>NET5</b></td>
-    <td align="left" class="listCell1">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=4&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)3~back)$tvhtml$tvstart.php(tz)2">
-      <b>Net5</b>
-     </a>
-    </td>
-    <td align="center" class="listCell1"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=4&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)3~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=4&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)3~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=4&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)3~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/9_h30.gif" align="middle"
-     />&nbsp;<b>RTL4</b></td>
-    <td align="left" class="listCell2">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=9&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)4~back)$tvhtml$tvstart.php(tz)2">
-      <b>RTL4</b>
-     </a>
-    </td>
-    <td align="center" class="listCell2"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=9&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)4~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=9&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)4~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=9&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)4~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/7_h30.gif" align="middle"
-     />&nbsp;<b>SBS6</b></td>
-    <td align="left" class="listCell1">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=7&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)5~back)$tvhtml$tvstart.php(tz)2">
-      <b>SBS6</b>
-     </a>
-    </td>
-    <td align="center" class="listCell1"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=7&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)5~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=7&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)5~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=7&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)5~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/3_h30.gif" align="middle"
-     />&nbsp;<b>RTL5</b></td>
-    <td align="left" class="listCell2">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=3&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)6~back)$tvhtml$tvstart.php(tz)2">
-      <b>RTL5</b>
-     </a>
-    </td>
-    <td align="center" class="listCell2"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=3&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)6~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=3&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)6~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=3&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)6~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/99_h30.gif" align="middle"
-     />&nbsp;<b>DISC</b></td>
-    <td align="left" class="listCell1">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=99&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)7~back)$tvhtml$tvstart.php(tz)2">
-      <b>Discovery Channel</b>
-     </a>
-    </td>
-    <td align="center" class="listCell1"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=99&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)7~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=99&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)7~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=99&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)7~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/8_h30.gif" align="middle"
-     />&nbsp;<b>RTL7</b></td>
-    <td align="left" class="listCell2">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=8&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)8~back)$tvhtml$tvstart.php(tz)2">
-      <b>RTL7</b>
-     </a>
-    </td>
-    <td align="center" class="listCell2"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=8&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)8~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=8&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)8~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=8&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)8~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/1_h30.gif" align="middle"
-     />&nbsp;<b>VERO</b></td>
-    <td align="left" class="listCell1">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=1&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)9~back)$tvhtml$tvstart.php(tz)2">
-      <b>Veronica</b>
-     </a>
-    </td>
-    <td align="center" class="listCell1"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=1&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)9~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=1&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)9~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=1&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)9~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/177_h30.gif" align="middle"
-     />&nbsp;<b>MTV</b></td>
-    <td align="left" class="listCell2">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=177&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)10~back)$tvhtml$tvstart.php(tz)2">
-      <b>MTV</b>
-     </a>
-    </td>
-    <td align="center" class="listCell2"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=177&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)10~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=177&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)10~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=177&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)10~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/665_h30.gif" align="middle"
-     />&nbsp;<b>BOX</b></td>
-    <td align="left" class="listCell1">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=665&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)11~back)$tvhtml$tvstart.php(tz)2">
-      <b>TheBox</b>
-     </a>
-    </td>
-    <td align="center" class="listCell1"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=665&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)11~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=665&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)11~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=665&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)11~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/94_h30.gif" align="middle"
-     />&nbsp;<b>ESPO</b></td>
-    <td align="left" class="listCell2">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=94&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)12~back)$tvhtml$tvstart.php(tz)2">
-      <b>Eurosport</b>
-     </a>
-    </td>
-    <td align="center" class="listCell2"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=94&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)12~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=94&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)12~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=94&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)12~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/470_h30.gif" align="middle"
-     />&nbsp;<b>CNN</b></td>
-    <td align="left" class="listCell1">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=470&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)13~back)$tvhtml$tvstart.php(tz)2">
-      <b>CNN</b>
-     </a>
-    </td>
-    <td align="center" class="listCell1"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=470&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)13~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=470&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)13~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=470&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)13~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-
-   <tr>
-    <td align="left" class="listCell3" width="21%"><img
-      src="http://epg.kml.kiss-technology.com/tv/logos/184_h30.gif" align="middle"
-      />&nbsp;<b>BBC1</b></td>
-    <td align="left" class="listCell2">
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=2&amp;station=184&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)14~back)$tvhtml$tvstart.php(tz)2">
-      <b>BBC1</b>
-     </a>
-    </td>
-    <td align="center" class="listCell2"><a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=3&amp;station=184&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)14~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowup_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=4&amp;station=184&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)14~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/arrowdown_small.gif"/>
-     </a>&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvstation_do.php?mode=3&amp;tz=2&amp;action=2&amp;station=184&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~reload)1~sel)14~back)$tvhtml$tvstart.php(tz)2">
-      <img border="0" src="../images/delx_small.gif"/>
-     </a></td>
-   </tr>
-  </table>
-
-  <table align="center" width="400" border="0" cellspacing="0" cellpadding="1">
-   <tr>
-    <td><br/>
-     <br/>
-     <a href="http://epg.kml.kiss-technology.com/tvhtml/tvstart.php?tz=2">
-      <img src="../images/back.gif" alt="Back" border="0" align="middle"/>
-     </a><a href="tvstart.php">
-      <img src="../images/home.gif" alt="Home" border="0" align="middle"/>
-     </a><a href="../logout.php">
-      <img src="../images/logout.gif" alt="Logout" border="0" align="middle"/>
-     </a>&nbsp;&nbsp;17:15, Wednesday 23rd August</td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/crawler/kiss/conf/xml/channels-favorites-output.xml b/crawler/kiss/conf/xml/channels-favorites-output.xml
deleted file mode 100644 (file)
index cc8195d..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<favorite-channels> &lt;&lt; &gt;&gt;<action name="Nederland 1"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=6&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="Nederland 2"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=2&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)1~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="Nederland 3"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=5&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)2~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="Net5"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=4&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)3~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="RTL4"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=9&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)4~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="SBS6"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=7&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)5~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="RTL5"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=3&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)6~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="Discovery Channel"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=99&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)7~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="RTL7"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=8&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)8~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="Veronica"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=1&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)9~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="Eurosport"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=94&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)10~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="MTV"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=177&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)11~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="TheBox"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=665&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)12~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="CNN"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=470&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)13~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="BBC1"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=184&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)14~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/><action name="BBC2"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=185&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)15~back)$tvhtml$tvstart.php(tz)1"
-        type="channel-overview"/> &lt;&lt; &gt;&gt;BackHomeLogout</favorite-channels>
diff --git a/crawler/kiss/conf/xml/channels-favorites.xml b/crawler/kiss/conf/xml/channels-favorites.xml
deleted file mode 100644 (file)
index 4021c21..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator"
-content="HTML Tidy for Linux/x86 (vers 1st April 2002), see www.w3.org" />
-<meta http-equiv="content-type"
-content="text/html;charset=iso-8859-1" />
-<title>KiSS - Favorite Channels</title>
-</head>
-<body bgcolor="#ffffff">
-<img src="../images/KiSS_Logo_small.gif" align="center" /> 
-<h1>Favorite Channels</h1>
-
-&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tv.php?reload=1&amp;mode=3&amp;station=0&amp;page=0&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-&lt;&lt;</a>&nbsp;&nbsp;<b>Page 1/1</b>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tv.php?reload=1&amp;mode=3&amp;station=0&amp;page=0&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-&gt;&gt;</a>&nbsp;<br />
-<br />
- <b>NL1</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=6&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Nederland 1</a><br />
-<b>NL2</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=2&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)1~back)$tvhtml$tvstart.php(tz)1">
-Nederland 2</a><br />
-<b>NL3</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=5&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)2~back)$tvhtml$tvstart.php(tz)1">
-Nederland 3</a><br />
- <b>NET5</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=4&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)3~back)$tvhtml$tvstart.php(tz)1">
-Net5</a><br />
-<b>RTL4</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=9&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)4~back)$tvhtml$tvstart.php(tz)1">
-RTL4</a><br />
-<b>SBS6</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=7&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)5~back)$tvhtml$tvstart.php(tz)1">
-SBS6</a><br />
-<b>RTL5</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=3&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)6~back)$tvhtml$tvstart.php(tz)1">
-RTL5</a><br />
- <b>DISC</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=99&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)7~back)$tvhtml$tvstart.php(tz)1">
-Discovery Channel</a><br />
-<b>RTL7</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=8&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)8~back)$tvhtml$tvstart.php(tz)1">
-RTL7</a><br />
-<b>VERO</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=1&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)9~back)$tvhtml$tvstart.php(tz)1">
-Veronica</a><br />
-<b>ESPO</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=94&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)10~back)$tvhtml$tvstart.php(tz)1">
-Eurosport</a><br />
- <b>MTV</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=177&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)11~back)$tvhtml$tvstart.php(tz)1">
-MTV</a><br />
-<b>BOX</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=665&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)12~back)$tvhtml$tvstart.php(tz)1">
-TheBox</a><br />
-<b>CNN</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=470&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)13~back)$tvhtml$tvstart.php(tz)1">
-CNN</a><br />
-<b>BBC1</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=184&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)14~back)$tvhtml$tvstart.php(tz)1">
-BBC1</a><br />
- <b>BBC2</b> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;tz=1&amp;station=185&amp;back=$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)15~back)$tvhtml$tvstart.php(tz)1">
-BBC2</a><br />
- <br />
-&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tv.php?reload=1&amp;mode=3&amp;station=0&amp;page=0&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-&lt;&lt;</a>&nbsp;&nbsp;<b>Page 1/1</b>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tv.php?reload=1&amp;mode=3&amp;station=0&amp;page=0&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-&gt;&gt;</a>&nbsp;<br />
- <br />
- [&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstart.php?tz=1">Back</a>&nbsp;]&nbsp;[&nbsp;<a
- href="tvstart.php">Home</a>&nbsp;]&nbsp;[&nbsp;<a
-href="../logout.php">Logout</a>&nbsp;]<br />
- 12:08, Monday 13th March
-</body>
-</html>
-
diff --git a/crawler/kiss/conf/xml/channels-whats-on.xml b/crawler/kiss/conf/xml/channels-whats-on.xml
deleted file mode 100644 (file)
index 1869c11..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator"
-content="HTML Tidy for Linux/x86 (vers 1st April 2002), see www.w3.org" />
-<meta http-equiv="content-type"
-content="text/html;charset=iso-8859-1" />
-<title>KiSS - Favorite Channels</title>
-</head>
-<body bgcolor="#ffffff">
-<img src="../images/KiSS_Logo_small.gif" align="center" /> 
-<h1>&nbsp;Favorite Channels</h1>
-
-<h2>What's on?</h2>
-
-<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;country=XX&amp;station=0&amp;view=0&amp;now=1&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Right now</a> - 11:43, Monday 13th March<br />
- <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;country=XX&amp;station=0&amp;view=20&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)0~tz)1~sel)1~back)$tvhtml$tvstart.php(tz)1">
-Evening</a> - Starting 20:00<br />
- <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;country=XX&amp;station=0&amp;view=16&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)0~tz)1~sel)2~back)$tvhtml$tvstart.php(tz)1">
-Afternoon</a> - Starting 16:00<br />
- <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;country=XX&amp;station=0&amp;view=12&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)0~tz)1~sel)3~back)$tvhtml$tvstart.php(tz)1">
-Noon</a> - Starting 12:00<br />
- <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;country=XX&amp;station=0&amp;view=6&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)0~tz)1~sel)4~back)$tvhtml$tvstart.php(tz)1">
-Morning</a> - Starting 6:00<br />
- <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;country=XX&amp;station=0&amp;view=36&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)0~tz)1~sel)5~back)$tvhtml$tvstart.php(tz)1">
-Tomorrow</a> &nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;country=XX&amp;station=0&amp;view=60&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)0~tz)1~sel)8~back)$tvhtml$tvstart.php(tz)1"
- class="grid">Wednesday</a>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;country=XX&amp;station=0&amp;view=84&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)0~tz)1~sel)9~back)$tvhtml$tvstart.php(tz)1"
- class="grid">Thursday</a>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;country=XX&amp;station=0&amp;view=108&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)0~tz)1~sel)10~back)$tvhtml$tvstart.php(tz)1"
- class="grid">Friday</a>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;country=XX&amp;station=0&amp;view=132&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)0~tz)1~sel)11~back)$tvhtml$tvstart.php(tz)1"
- class="grid">Saturday</a>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;country=XX&amp;station=0&amp;view=156&amp;tz=1&amp;back=$tvhtml$tvstation.php(mode)3~station)0~tz)1~sel)12~back)$tvhtml$tvstart.php(tz)1"
- class="grid">Sunday</a>&nbsp;<br />
- <br />
- [&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstart.php?tz=1">Back</a>&nbsp;]&nbsp;[&nbsp;<a
- href="tvstart.php">Home</a>&nbsp;]&nbsp;[&nbsp;<a
-href="../logout.php">Logout</a>&nbsp;]<br />
- 11:43, Monday 13th March
-</body>
-</html>
-
diff --git a/crawler/kiss/conf/xml/login-graphic.xml b/crawler/kiss/conf/xml/login-graphic.xml
deleted file mode 100644 (file)
index 1f983f6..0000000
+++ /dev/null
@@ -1,215 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"\r
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-    <head>\r
-        <meta name="generator" content="HTML Tidy, see www.w3.org" />\r
-        <meta http-equiv="content-type"\r
-            content="text/html;charset=iso-8859-1" />\r
-        <link rel="STYLESHEET" type="text/css" href="../kiss.css" />\r
-        <link rel='shortcut icon' href='../favicon.ico' />\r
-        <title>KiSS - TV&nbsp;Guide</title>\r
-    </head>\r
-    <body bgcolor="#ffffff">\r
-        <img src="../images/KiSS_Logo.gif" align="right" /><br />\r
-        <br />\r
-        <br />\r
-        \r
-        \r
-        <table align="center" width="400" border="0" cellspacing="0"\r
-            cellpadding="1">\r
-            <tr>\r
-                <td align="left"><img src="../images/tvguide_logo.gif" /><br />\r
-                    <br />\r
-                    <br />\r
-                </td>\r
-            </tr>\r
-        </table>\r
-        \r
-        <table align="center" width="400" border="0" cellspacing="0"\r
-            cellpadding="1">\r
-            <tr>\r
-                <td><b>Welcome</b> <u>sf2np2ln9no1</u> /\r
-                    <u>web@brakkee.org</u>&nbsp;&nbsp;&nbsp;[&nbsp;<a\r
-                        href="http://epg.kml.kiss-technology.com/tvhtml/tvemailset.php?tz=2">\r
-                        Change</a> email&nbsp;]<br />\r
-                    <br />\r
-                </td>\r
-            </tr>\r
-        </table>\r
-        \r
-        <table class="tvstart" width="400" border="0" cellspacing="0"\r
-            cellpadding="1" align="center">\r
-            <tr>\r
-                <td align="center" height="25" bgcolor="black">\r
-                    <div align="center"><font color="white"><b>&nbsp;&nbsp;Favorite\r
-                        Channels&nbsp;&nbsp;</b></font></div>\r
-                </td>\r
-                <td align="center" bgcolor="black" width="10">&nbsp;</td>\r
-                <td align="center" bgcolor="black">\r
-                    <div align="center"><font color="white"><b>&nbsp;&nbsp;Favorite\r
-                        Shows&nbsp;&nbsp;</b></font></div>\r
-                </td>\r
-                <td align="center" bgcolor="black" width="10">&nbsp;</td>\r
-                <td align="center" bgcolor="black">\r
-                    <div align="center"><font\r
-                        color="white"><b>&nbsp;&nbsp;Movies&nbsp;&nbsp;</b></font></div>\r
-                </td>\r
-            </tr>\r
-            \r
-            <tr height="10">\r
-                <td align="center" height="10"></td>\r
-                <td align="center" width="10" height="10"></td>\r
-                <td align="center" height="10"></td>\r
-                <td align="center" width="10" height="10"></td>\r
-                <td align="center" height="10"></td>\r
-            </tr>\r
-            \r
-            <tr>\r
-                <td align="center">\r
-                    <div align="center">&nbsp;<a\r
-                        href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;station=0&amp;view=0&amp;now=1&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"\r
-                        class="grid">What's on now?</a>&nbsp;</div>\r
-                </td>\r
-                <td align="center" width="10"></td>\r
-                <td align="center">\r
-                    <div align="center">&nbsp;<a\r
-                        href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=6&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"\r
-                        class="grid">What's on?</a>&nbsp;</div>\r
-                </td>\r
-                <td align="center" width="10"></td>\r
-                <td align="center">\r
-                    <div align="center">&nbsp;<a\r
-                        href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=7&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"\r
-                        class="grid">What's on?</a>&nbsp;</div>\r
-                </td>\r
-            </tr>\r
-            \r
-            <tr height="5">\r
-                <td align="center" height="5"></td>\r
-                <td align="center" width="10" height="5"></td>\r
-                <td align="center" height="5"></td>\r
-                <td align="center" width="10" height="5"></td>\r
-                <td align="center" height="5"></td>\r
-            </tr>\r
-            \r
-            <tr>\r
-                <td align="center">\r
-                    <div align="center">&nbsp;<a\r
-                        href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;station=0&amp;country=XX&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"\r
-                        class="grid">What's on?</a>&nbsp;</div>\r
-                </td>\r
-                <td align="center" width="10"></td>\r
-                <td align="center">\r
-                    <div align="center">&nbsp;<a\r
-                        href="http://epg.kml.kiss-technology.com/tvhtml/tvsearch.php?tz=2&amp;back=$tvhtml$tvstart.php(tz)2"\r
-                        class="grid">Search a show</a>&nbsp;</div>\r
-                </td>\r
-                <td align="center" width="10"></td>\r
-                <td align="center"></td>\r
-            </tr>\r
-            \r
-            <tr height="5">\r
-                <td align="center" height="5"></td>\r
-                <td align="center" width="10" height="5"></td>\r
-                <td align="center" height="5"></td>\r
-                <td align="center" width="10" height="5"></td>\r
-                <td align="center" height="5"></td>\r
-            </tr>\r
-            \r
-            <tr>\r
-                <td align="center">\r
-                    <div align="center">&nbsp;<a\r
-                        href="http://epg.kml.kiss-technology.com/tvhtml/tv.php?mode=3&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"\r
-                        class="grid">Favorites</a>&nbsp;</div>\r
-                </td>\r
-                <td align="center" width="10"></td>\r
-                <td align="center">\r
-                    <div align="center">&nbsp;<a\r
-                        href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=8&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"\r
-                        class="grid">Favorites</a>&nbsp;</div>\r
-                </td>\r
-                <td align="center" width="10"></td>\r
-                <td align="center" bgcolor="black">\r
-                    <div align="center"><font\r
-                        color="white"><b>&nbsp;&nbsp;Sports&nbsp;&nbsp;</b></font></div>\r
-                </td>\r
-            </tr>\r
-            \r
-            <tr height="5">\r
-                <td align="center" height="5"></td>\r
-                <td align="center" width="10" height="5"></td>\r
-                <td align="center" height="5"></td>\r
-                <td align="center" width="10" height="5"></td>\r
-                <td align="center" height="5"></td>\r
-            </tr>\r
-            \r
-            <tr>\r
-                <td align="center"></td>\r
-                <td align="center" width="10"></td>\r
-                <td align="center">\r
-                    <div align="center">&nbsp;<a\r
-                        href="http://epg.kml.kiss-technology.com/tvhtml/tvsearch.php?tz=2&amp;back=$tvhtml$tvstart.php(tz)2"\r
-                        class="grid">Add a favorite</a>&nbsp;</div>\r
-                </td>\r
-                <td align="center" width="10"></td>\r
-                <td align="center">\r
-                    <div align="center">&nbsp;<a\r
-                        href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=9&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"\r
-                        class="grid">What's on?</a>&nbsp;</div>\r
-                </td>\r
-            </tr>\r
-            \r
-            <tr height="5">\r
-                <td align="center" height="5"></td>\r
-                <td align="center" width="10" height="5"></td>\r
-                <td align="center" height="5"></td>\r
-                <td align="center" width="10" height="5"></td>\r
-                <td align="center" height="5"></td>\r
-            </tr>\r
-        </table>\r
-        \r
-        <table align="center" width="400" border="0" cellspacing="0"\r
-            cellpadding="1">\r
-            <tr>\r
-                <td>\r
-                    <p><br />\r
-                        Recordings to be sent to the player: <b>0</b>&nbsp;[&nbsp;<a\r
-                            href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_show.php?tz=2&amp;back=$tvhtml$tvstart.php(tz)2">\r
-                            View</a>&nbsp;]&nbsp;[&nbsp;<a\r
-                                href="http://epg.kml.kiss-technology.com/tvhtml/tvmanual.php?tz=2">Manual\r
-                                recording</a>&nbsp;]<br />\r
-                        <br />\r
-                    </p>\r
-                    \r
-                    <hr />\r
-                    <br />\r
-                    <b>Time change:</b> In order to see the correct time in the KiSS TV\r
-                    Guide, do the following:\r
-                    \r
-                    <ol>\r
-                        <li>On your player press SETUP and set your timezone to reflect\r
-                            summer time, for example for mainland Western Europe this should\r
-                            be: "CEST (GMT+2)", UK and Ireland: "BST (GMT+1)", Finland and\r
-                            Eastern Europe: "EEST (GMT+3)".</li>\r
-                        \r
-                        <li>Access the TV Guide at least once via your player.</li>\r
-                        \r
-                        <li>The KiSS TV Guide will now display the correct time for your tv\r
-                            programs both via your player and through the web.</li>\r
-                    </ol>\r
-                    \r
-                    <br />\r
-                    <hr />\r
-                    <br />\r
-                    KML favorites: <b>0</b>&nbsp;[&nbsp;<a\r
-                        href="http://epg.kml.kiss-technology.com/favorites/favhtml.php?tz=2&amp;back=$tvhtml$tvstart.php(tz)2">\r
-                        View</a>&nbsp;]<br />\r
-                    <br />\r
-                    <br />\r
-                    <a href="../logout.php"><img src="../images/logout_solo.gif"\r
-                        alt="logout" border="0" align="middle" /></a>&nbsp;&nbsp;16:29,\r
-                    Wednesday 23rd August</td>\r
-            </tr>\r
-        </table>\r
-    </body>\r
-</html>\r
diff --git a/crawler/kiss/conf/xml/login-mobile-output.xml b/crawler/kiss/conf/xml/login-mobile-output.xml
deleted file mode 100644 (file)
index df82fb2..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<login>
-    <action name="&#10;                    unknown&#10;                    Change"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvemailset.php?tz=2"
-        type="&#10;                    unknown&#10;                    Change"/>
-    <action name="&#10;                    unknown&#10;                    What's on now?"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;station=0&amp;view=0&amp;now=1&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
-        type="&#10;                    unknown&#10;                    What's on now?"/>
-    <action name="&#10;                    unknown&#10;                    What's on?"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;station=0&amp;country=XX&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
-        type="&#10;                    unknown&#10;                    What's on?"/>
-    <action name="&#10;                    unknown&#10;                    Favorites"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tv.php?mode=3&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
-        type="&#10;                    unknown&#10;                    Favorites"/>
-    <action name="&#10;                    unknown&#10;                    What's on?"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=6&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
-        type="&#10;                    unknown&#10;                    What's on?"/>
-    <action name="&#10;                    unknown&#10;                    Search a show"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvsearch.php?tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
-        type="&#10;                    unknown&#10;                    Search a show"/>
-    <action name="&#10;                    unknown&#10;                    Favorites"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=8&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
-        type="&#10;                    unknown&#10;                    Favorites"/>
-    <action name="&#10;                    unknown&#10;                    Add a favorite"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvsearch.php?tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
-        type="&#10;                    unknown&#10;                    Add a favorite"/>
-    <action name="&#10;                    unknown&#10;                    What's on?"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=7&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
-        type="&#10;                    unknown&#10;                    What's on?"/>
-    <action name="&#10;                    unknown&#10;                    What's on?"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=9&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
-        type="&#10;                    unknown&#10;                    What's on?"/>
-    <action name="view-recordings"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_show.php?tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
-        type="view-recordings"/>
-    <action name="manual-recording"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvmanual.php?tz=2"
-        type="manual-recording"/>
-    <action name="&#10;                    unknown&#10;                    "
-        reference="../logout.php"
-        type="&#10;                    unknown&#10;                    "/>
-</login>
diff --git a/crawler/kiss/conf/xml/login-mobile.xml b/crawler/kiss/conf/xml/login-mobile.xml
deleted file mode 100644 (file)
index 46ab328..0000000
+++ /dev/null
@@ -1,206 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator" content="HTML Tidy, see www.w3.org" />
-<meta http-equiv="content-type"
-content="text/html;charset=iso-8859-1" />
-<link rel="STYLESHEET" type="text/css" href="../kiss.css" />
-<link rel='shortcut icon' href='../favicon.ico' />
-<title>KiSS - TV&nbsp;Guide</title>
-</head>
-<body bgcolor="#ffffff">
-<img src="../images/KiSS_Logo_small.gif" align="center" /> 
-
-<h1>TV Guide</h1>
-
-<table align="center" width="400" border="0" cellspacing="0"
-cellpadding="1">
-<tr>
-<td><b>Welcome</b> <u>sf2np2ln9no1</u> /
-<u>web@brakkee.org</u>&nbsp;&nbsp;&nbsp;[&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvemailset.php?tz=2">
-Change</a> email&nbsp;]<br />
-<br />
- </td>
-</tr>
-</table>
-
-<table class="tvstart" width="100%" border="0" cellspacing="0"
-cellpadding="1" align="center">
-<tr>
-<td align="center" height="25" bgcolor="black">
-<div align="center"><font color="white"><b>&nbsp;&nbsp;Favorite
-Channels&nbsp;&nbsp;</b></font></div>
-</td>
-</tr>
-
-<tr height="10">
-<td align="center" height="10"></td>
-</tr>
-
-<tr>
-<td align="center">
-<div align="center">&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;station=0&amp;view=0&amp;now=1&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
- class="grid">What's on now?</a>&nbsp;</div>
-</td>
-</tr>
-
-<tr height="5">
-<td align="center" height="5"></td>
-</tr>
-
-<tr>
-<td align="center">
-<div align="center">&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;station=0&amp;country=XX&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
- class="grid">What's on?</a>&nbsp;</div>
-</td>
-</tr>
-
-<tr height="5">
-<td align="center" height="5"></td>
-</tr>
-
-<tr>
-<td align="center">
-<div align="center">&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tv.php?mode=3&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
- class="grid">Favorites</a>&nbsp;</div>
-</td>
-</tr>
-
-<tr height="5">
-<td align="center" height="5"></td>
-</tr>
-
-<tr>
-<td align="center" bgcolor="black">
-<div align="center"><font color="white"><b>&nbsp;&nbsp;Favorite
-Shows&nbsp;&nbsp;</b></font></div>
-</td>
-</tr>
-
-<tr height="10">
-<td align="center" height="10"></td>
-</tr>
-
-<tr>
-<td align="center">
-<div align="center">&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=6&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
- class="grid">What's on?</a>&nbsp;</div>
-</td>
-</tr>
-
-<tr height="10">
-<td align="center" height="10"></td>
-</tr>
-
-<tr>
-<td align="center">
-<div align="center">&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvsearch.php?tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
- class="grid">Search a show</a>&nbsp;</div>
-</td>
-</tr>
-
-<tr height="10">
-<td align="center" height="10"></td>
-</tr>
-
-<tr>
-<td align="center">
-<div align="center">&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=8&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
- class="grid">Favorites</a>&nbsp;</div>
-</td>
-</tr>
-
-<tr height="10">
-<td align="center" height="10"></td>
-</tr>
-
-<tr>
-<td align="center">
-<div align="center">&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvsearch.php?tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
- class="grid">Add a favorite</a>&nbsp;</div>
-</td>
-</tr>
-
-<tr height="5">
-<td align="center" height="5"></td>
-</tr>
-
-<tr>
-<td align="center" bgcolor="black">
-<div align="center"><font
-color="white"><b>&nbsp;&nbsp;Movies&nbsp;&nbsp;</b></font></div>
-</td>
-</tr>
-
-<tr height="10">
-<td align="center" height="10"></td>
-</tr>
-
-<tr>
-<td align="center">
-<div align="center">&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=7&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
- class="grid">What's on?</a>&nbsp;</div>
-</td>
-</tr>
-
-<tr height="5">
-<td align="center" height="5"></td>
-</tr>
-
-<tr>
-<td align="center" bgcolor="black">
-<div align="center"><font
-color="white"><b>&nbsp;&nbsp;Sports&nbsp;&nbsp;</b></font></div>
-</td>
-</tr>
-
-<tr height="10">
-<td align="center" height="10"></td>
-</tr>
-
-<tr>
-<td align="center">
-<div align="center">&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=9&amp;tz=2&amp;back=$tvhtml$tvstart.php(tz)2"
- class="grid">What's on?</a>&nbsp;</div>
-</td>
-</tr>
-
-<tr height="10">
-<td align="center" height="10"></td>
-</tr>
-
-<tr>
-<td align="center"></td>
-</tr>
-</table>
-
-<table align="center" width="100%" border="0" cellspacing="0"
-cellpadding="1">
-<tr>
-<td>
-<p><br />
-Recordings to be sent to the player: 0&nbsp;[&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_show.php?tz=2&amp;back=$tvhtml$tvstart.php(tz)2">
-View</a>&nbsp;]&nbsp;[&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvmanual.php?tz=2">Manual
-recording</a>&nbsp;]<br />
-<br />
- <a href="../logout.php"><img src="../images/logout_small.gif"
-alt="logout" border="0" align="center" /></a>&nbsp;22:19, Monday
-21st August</p>
-</td>
-</tr>
-</table>
-</body>
-</html>
diff --git a/crawler/kiss/conf/xml/login-output.xml b/crawler/kiss/conf/xml/login-output.xml
deleted file mode 100644 (file)
index e9a0152..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<login>
-    <action
-        name="&#10;                    unknown&#10;                    &#10;       Change"
-        type="&#10;                    unknown&#10;                    &#10;       Change"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvemailset.php?tz=1"/>
-    <action name="channels-whats-on-now" type="channels-whats-on-now"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;station=0&amp;view=0&amp;now=1&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1"/>
-    <action name="channels-whats-on" type="channels-whats-on"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;station=0&amp;country=XX&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1"/>
-    <action name="channels-favorites" type="channels-favorites"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tv.php?mode=3&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1"/>
-    <action name="shows-whats-on" type="shows-whats-on"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=6&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1"/>
-    <action name="shows-search" type="shows-search"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvsearch.php?tz=1&amp;back=$tvhtml$tvstart.php(tz)1"/>
-    <action name="shows-favorites" type="shows-favorites"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=8&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1"/>
-    <action name="shows-add-favorite" type="shows-add-favorite"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvsearch.php?tz=1&amp;back=$tvhtml$tvstart.php(tz)1"/>
-    <action name="movies-whats-on" type="movies-whats-on"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=7&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1"/>
-    <action name="sports-whats-on" type="sports-whats-on"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=9&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1"/>
-    <action name="view-recordings" type="view-recordings"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_show.php?tz=1&amp;back=$tvhtml$tvstart.php(tz)1"/>
-    <action name="manual-recording" type="manual-recording"
-        reference="http://epg.kml.kiss-technology.com/tvhtml/tvmanual.php?tz=1"/>
-    <action name="logout" type="logout" reference="../logout.php"/>
-</login>
diff --git a/crawler/kiss/conf/xml/login.xml b/crawler/kiss/conf/xml/login.xml
deleted file mode 100644 (file)
index 2637079..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-    <html xmlns="http://www.w3.org/1999/xhtml">
-     <head>
-      <meta name="generator" content="HTML Tidy, see www.w3.org" />
-      <meta http-equiv="content-type"
-       content="text/html;charset=iso-8859-1" />
-      <title>KiSS - TV&nbsp;Guide</title>
-     </head>
-     <body bgcolor="#ffffff">
-      <img src="../images/KiSS_Logo_small.gif" align="center" /> 
-      
-      <h1>TV Guide</h1>
-      
-      <b>Welcome</b> <u>sf2np2ln9no1</u> /
-      <u>erik@brakkee.org</u>&nbsp;&nbsp;&nbsp;[&nbsp;<a
-       href="http://epg.kml.kiss-technology.com/tvhtml/tvemailset.php?tz=1">
-       Change</a> email&nbsp;]<br />
-      <br />
-      
-      
-      <h2>Favorite Channels</h2>
-      
-      <a
-       href="http://epg.kml.kiss-technology.com/tvhtml/tvshow.php?mode=3&amp;station=0&amp;view=0&amp;now=1&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-       What's on now?</a><br />
-      <a
-       href="http://epg.kml.kiss-technology.com/tvhtml/tvstation.php?mode=3&amp;station=0&amp;country=XX&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-       What's on?</a><br />
-      <a
-       href="http://epg.kml.kiss-technology.com/tvhtml/tv.php?mode=3&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-       Favorites</a> 
-      
-      <h2>Favorite Shows</h2>
-      
-      <a
-       href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=6&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-       What's on?</a><br />
-      <a
-       href="http://epg.kml.kiss-technology.com/tvhtml/tvsearch.php?tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-       Search a show</a><br />
-      <a
-       href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=8&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-       Favorites</a><br />
-      <a
-       href="http://epg.kml.kiss-technology.com/tvhtml/tvsearch.php?tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-       Add a favorite</a> 
-      
-      <h2>Movies</h2>
-      
-      <a
-       href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=7&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-       What's on?</a> 
-      
-      <h2>Sports</h2>
-      
-      <a
-       href="http://epg.kml.kiss-technology.com/tvhtml/tvfavshow_action.php?action=9&amp;tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-       What's on?</a> 
-      
-      <p><br />
-       Recordings to be sent to the player: 0<br />
-       [&nbsp;<a
-        href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_show.php?tz=1&amp;back=$tvhtml$tvstart.php(tz)1">
-        View</a>&nbsp;]&nbsp;[&nbsp;<a
-         href="http://epg.kml.kiss-technology.com/tvhtml/tvmanual.php?tz=1">Manual
-         recording</a>&nbsp;]<br />
-       <br />
-       [&nbsp;<a href="../logout.php">Logout</a>&nbsp;]<br />
-       21:09, Sunday 12th March</p>
-     </body>
-    </html>
-    
\ No newline at end of file
diff --git a/crawler/kiss/conf/xml/mainpage.xml b/crawler/kiss/conf/xml/mainpage.xml
deleted file mode 100644 (file)
index 49ae9c8..0000000
+++ /dev/null
@@ -1,167 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-    <html xmlns="http://www.w3.org/1999/xhtml">
-        <head>
-            <meta name="generator" content="HTML Tidy, see www.w3.org" />
-            <meta content="text/html;charset=iso-8859-1"
-                http-equiv="content-type" />
-            <link href="kiss.css" type="text/css" rel="STYLESHEET" />
-            <link rel='shortcut icon' href='favicon.ico' />
-            <title>KiSS&nbsp;Technology Online Portal</title>
-            <script type="text/javascript" language="JavaScript">
-                //<![CDATA[   
-                function placeFocus() {
-                if (document.forms.length > 0) {
-                var field = document.forms[0];
-                for (i = 0; i < field.length; i++) {
-                if ((field.elements[i].type == "text") || (field.elements[i].type == "textarea") || (field.elements[i].type.toString().charAt(0) == "s")) {
-                document.forms[0].elements[i].focus();
-                break; } } } }
-                function placeFocusP() {
-                if (document.forms.length > 0) {
-                var field = document.forms[0];
-                for (i = 0; i < field.length; i++) {
-                if ((field.elements[i].type == "password")) {
-                document.forms[0].elements[i].focus();
-                break; } } } }
-                //]]>
-            </script>
-        </head>
-        <body bgcolor="#ffffff" onload="placeFocus()">
-            <div align="center">
-                <h2><img src="images/kiss_logo_login.gif"
-                    align="middle" />&nbsp;Web Services:<br />
-                    <img src="images/tvguide_logo.gif" align="middle" /><br />
-                </h2>
-            </div>
-            
-            <table align="center" border="0" cellpadding="0" cellspacing="0"
-                style="width: 240px;">
-                <tbody>
-                    <tr>
-                        <td style="text-align: left;">
-                            <h2>&nbsp;&nbsp;&nbsp;Login</h2>
-                        </td>
-                    </tr>
-                </tbody>
-            </table>
-            
-            <br />
-            
-            
-            <form name="FormName" method="post" action="login_core.php"
-                id="FormName"><input type="hidden" name="token"
-                    value="e1c6b500600a0a2ba585ae52338a817f" /> 
-                
-                <table align="center" border="0" cellpadding="0" cellspacing="0"
-                    background="images/login_background.gif"
-                    style="width: 240px; height: 240px;">
-                    <tbody>
-                        <tr>
-                            <td style="vertical-align: top;"><br />
-                            </td>
-                            <td style="vertical-align: top;"><br />
-                            </td>
-                        </tr>
-                        
-                        <tr>
-                            <td style="text-align: right; width: 100px;">Player ID&nbsp;<br />
-                                or Email:&nbsp;</td>
-                            <td style="width: 180px;"><input type="text" maxlength="50"
-                                size="20" name="user" value="" /> *<br />
-                            </td>
-                        </tr>
-                        
-                        <tr>
-                            <td style="text-align: right; width: 100px;">Password:&nbsp;</td>
-                            <td><input type="password" maxlength="10" size="8" name="passwd" />
-                                **<br />
-                            </td>
-                        </tr>
-                        
-                        <tr>
-                            <td width="100"><br />
-                            </td>
-                            <td>&nbsp;</td>
-                        </tr>
-                        
-                        <tr>
-                            <td width="100"><br />
-                            </td>
-                            <td><input type="checkbox" value="1" name="SavePlayerID" /> Save
-                                PlayerID ***<br />
-                            </td>
-                        </tr>
-                        
-                        <tr>
-                            <td width="100"><br />
-                            </td>
-                            <td>&nbsp;</td>
-                        </tr>
-                        
-                        <tr>
-                            <td width="100"><br />
-                            </td>
-                            <td><input type="radio" checked="checked" value="GraphicMode"
-                                name="GMode" />Desktop mode<br />
-                                <input type="radio" value="MobileMode" name="GMode" />Mobile
-                                mode<br />
-                                <input type="radio" value="TextMode" name="GMode" />Text mode</td>
-                        </tr>
-                        
-                        <tr>
-                            <td width="100"><br />
-                            </td>
-                            <td><br />
-                            </td>
-                        </tr>
-                        
-                        <tr>
-                            <td width="100"><br />
-                            </td>
-                            <td><input type="submit" value="Login" name="submit" /></td>
-                        </tr>
-                        
-                        <tr>
-                            <td style="vertical-align: top;"><br />
-                            </td>
-                            <td style="vertical-align: top;"><br />
-                            </td>
-                        </tr>
-                    </tbody>
-                </table>
-            </form>
-            
-            <center>[ <a href="l.php">Text version</a> ]</center>
-            
-            <br />
-            
-            
-            <table align="center" style="text-align: center; width: 600px;"
-                border="0" cellspacing="2" cellpadding="2">
-                <tbody>
-                    <tr>
-                        <td style="vertical-align: top;"><font size="1">* You can find your
-                            player id by pressing Menu on your remote control &gt;&nbsp;Online
-                            KML&nbsp;Services &gt;&nbsp;Reveal PlayerID.<br />
-                            You can use your email address instead of player id only when you
-                            have already logged in once and associated your email address with
-                            your player id.</font></td>
-                    </tr>
-                    
-                    <tr>
-                        <td style="vertical-align: top;"><font size="1">** You must have
-                            already configured your password by going to the EPG start page
-                            &gt;&nbsp;Configure &gt;&nbsp;Set Password</font></td>
-                    </tr>
-                    
-                    <tr>
-                        <td style="vertical-align: top;"><font size="1">*** Saving player
-                            id / email requires cookies</font></td>
-                    </tr>
-                </tbody>
-            </table>
-            
-            <br />
-        </body>
-    </html>
\ No newline at end of file
diff --git a/crawler/kiss/conf/xml/program-info-mobile-output.xml b/crawler/kiss/conf/xml/program-info-mobile-output.xml
deleted file mode 100644 (file)
index a5e5d79..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><program-info>IMDbWhen is it on?<title>            KRO Filmtheater: Hollywood ending          </title><keywords>       Film  </keywords><description>Komisch filmdrama De regisseur Val Waxman was ooit erg succesvol.
-     Tegenwoordig regisseert hij echter alleen nog maar tv-commercials. Eindelijk krijgt hij weer
-     eens een aanbod om een grote film te maken. Het lot wil echter dat Val op dat moment tijdelijk
-     blind wordt, als resultaat van zijn paranoia. Hij probeert samen met enkele vrienden op de set
-     zijn handicap te verbergen.</description></program-info>
diff --git a/crawler/kiss/conf/xml/program-info-mobile.xml b/crawler/kiss/conf/xml/program-info-mobile.xml
deleted file mode 100644 (file)
index 262c57e..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
-  <meta name="generator" content="HTML Tidy, see www.w3.org"/>
-  <meta http-equiv="content-type" content="text/html;charset=iso-8859-1"/>
-  <meta name="generator" content="Adobe GoLive"/>
-  <link rel="STYLESHEET" type="text/css" href="../kiss.css"/>
-  <link rel="shortcut icon" href="../favicon.ico"/>
-  <title>KiSS - Program info</title>
- </head>
- <body bgcolor="#ffffff">
-  <img src="../images/KiSS_Logo_small.gif" align="center"/>
-
-  <h1>&nbsp;Program info</h1>
-
-  <table class="tvinfo" align="center" border="0" cellspacing="0" cellpadding="1" width="100%">
-   <tr>
-    <td colspan="3" align="left" bgcolor="black" width="50%">
-     <font size="+1" color="white">
-      <b>&nbsp;KRO Filmtheater: Hollywood ending&nbsp;</b>
-     </font>
-    </td>
-    <td width="10" bgcolor="black"/>
-    <td colspan="3" align="right" bgcolor="black">
-     <font size="+1" color="white">
-      <b>&nbsp;Nederland 1&nbsp;&nbsp;<a
-        href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?reload=1&amp;id=1777728675&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-        <img src="../images/arrowleft_small.gif" alt="Prev" border="0" align="middle"/>
-       </a>&nbsp;&nbsp;<a
-        href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?reload=1&amp;id=1777728677&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-        <img src="../images/arrowright_small.gif" alt="Next" border="0" align="middle"/>
-       </a>&nbsp;</b>
-     </font>
-    </td>
-   </tr>
-
-   <tr height="5">
-    <td align="center" height="5"/>
-    <td align="center" width="10" height="5"/>
-    <td align="left" height="5"/>
-    <td align="center" width="10" height="5"/>
-    <td align="left" height="5"/>
-    <td align="center" width="10" height="5"/>
-    <td align="left" height="5"/>
-   </tr>
-
-   <tr>
-    <td colspan="3" align="center" bgcolor="#B3C5D9" width="50%">
-     <font color="#000000">Sunday 20th August</font>
-    </td>
-    <td width="10"/>
-    <td class="listCell1" colspan="3" align="center" bgcolor="#cccccc">
-     &nbsp;&nbsp;Film&nbsp;&nbsp;</td>
-   </tr>
-
-   <tr height="5">
-    <td align="center" height="5"/>
-    <td align="center" width="10" height="5"/>
-    <td align="left" height="5"/>
-    <td align="center" width="10" height="5"/>
-    <td align="left" height="5"/>
-    <td align="center" width="10" height="5"/>
-    <td align="left" height="5"/>
-   </tr>
-
-   <tr>
-    <td align="center" bgcolor="#B3C5D9">
-     <font color="#000000">22:30 - 00:15</font>
-    </td>
-    <td width="10"/>
-    <td class="listCell1" align="center" bgcolor="#cccccc">(01:45 hours)</td>
-    <td width="10"/>
-    <td class="listCell1" colspan="3" align="center">
-     <div align="center">&nbsp;&nbsp;&nbsp;&nbsp;</div>
-    </td>
-   </tr>
-
-   <tr height="5">
-    <td align="center" height="5"/>
-    <td align="center" width="10" height="5"/>
-    <td align="left" height="5"/>
-    <td align="center" width="10" height="5"/>
-    <td align="left" height="5"/>
-    <td align="center" width="10" height="5"/>
-    <td align="left" height="5"/>
-   </tr>
-
-   <tr>
-    <td colspan="7" align="left">Komisch filmdrama De regisseur Val Waxman was ooit erg succesvol.
-     Tegenwoordig regisseert hij echter alleen nog maar tv-commercials. Eindelijk krijgt hij weer
-     eens een aanbod om een grote film te maken. Het lot wil echter dat Val op dat moment tijdelijk
-     blind wordt, als resultaat van zijn paranoia. Hij probeert samen met enkele vrienden op de set
-     zijn handicap te verbergen.</td>
-   </tr>
-
-   <tr height="5">
-    <td align="center" height="5"/>
-    <td align="center" width="10" height="5"/>
-    <td align="left" height="5"/>
-    <td align="center" width="10" height="5"/>
-    <td align="left" height="5"/>
-    <td align="center" width="10" height="5"/>
-    <td align="left" height="5"/>
-   </tr>
-
-   <tr>
-    <td class="listCell1" colspan="7" align="left" valign="middle"> [&nbsp;<a target="_blank"
-      href="http://www.imdb.com/find?q=KRO+Filmtheater%3A+Hollywood+ending" class="grid"
-      >IMDb</a>&nbsp;]&nbsp;&nbsp;[&nbsp;<a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvsearch_show.php?tz=2&amp;tvshow=KRO+Filmtheater%3A+Hollywood+ending&amp;back=$tvhtml$tvinfo.php(tz)2~id)1777728676~back)$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)2~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2"
-      class="grid">When is it on?</a>&nbsp;]&nbsp;</td>
-   </tr>
-  </table>
-
-  <table align="center" width="100%" border="0" cellspacing="0" cellpadding="1">
-   <tr>
-    <td><br/>
-     <br/>
-     <a
-      href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?channel=6&amp;day=0&amp;page=0&amp;tz=2&amp;progid=0&amp;sel=0&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)2~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)2~sel)0~back)$tvhtml$tvstart.php(tz)2">
-      <img src="../images/back_small.gif" alt="Back" border="0" align="center"/>
-     </a>&nbsp;<a href="tvstart.php">
-      <img src="../images/home_small.gif" alt="Home" border="0" align="center"/>
-     </a>&nbsp;<a href="../logout.php">
-      <img src="../images/logout_small.gif" alt="Logout" border="0" align="center"/>
-     </a>&nbsp;23:50, Monday 21st August</td>
-   </tr>
-  </table>
- </body>
-</html>
diff --git a/crawler/kiss/conf/xml/program-info-output.xml b/crawler/kiss/conf/xml/program-info-output.xml
deleted file mode 100644 (file)
index f736665..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><program-info>
-&lt;&lt;
-&gt;&gt;IMDb<action name="record" reference="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_add.php?id=1772395857&amp;tz=1&amp;back=$tvhtml$tvinfo.php(station)6~id)1772395857~back)$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1" type="recorded">
-         
-       </action>When is it on?
-BackHomeLogout<title>Kruispunt</title><keywords>
- Religieus</keywords><description>
- Achtergronden uit kerk en samenleving.
-</description></program-info>
-
diff --git a/crawler/kiss/conf/xml/program-info.xml b/crawler/kiss/conf/xml/program-info.xml
deleted file mode 100644 (file)
index be5cc43..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator"
-content="HTML Tidy for Linux/x86 (vers 1st April 2002), see www.w3.org" />
-<meta http-equiv="content-type"
-content="text/html;charset=iso-8859-1" />
-<title>KiSS - Program info</title>
-</head>
-<body bgcolor="#ffffff">
-<img src="../images/KiSS_Logo_small.gif" align="center" /> 
-<h1>&nbsp;Program info</h1>
-
-<h2>Kruispunt</h2>
-
-<h2>Nederland 1&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?reload=1&amp;id=1772395856&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-&lt;&lt;</a>&nbsp;&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?reload=1&amp;id=1772395858&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-&gt;&gt;</a></h2>
-
-<b>Monday 13th March</b><br />
- Religieus<br />
- <b>15:20 - 16:00</b> (40 minutes)<br />
- <br />
- Achtergronden uit kerk en samenleving.<br />
- <br />
-<br />
-[&nbsp;<a target="_blank"
-href="http://www.imdb.com/find?q=Kruispunt"
-class="grid">IMDb</a>&nbsp;]&nbsp;&nbsp;[&nbsp;<img
-src="../images/record_dot.gif" align="middle" hspace="2" /><a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_add.php?id=1772395857&amp;tz=1&amp;back=$tvhtml$tvinfo.php(station)6~id)1772395857~back)$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"
- class="grid">Record</a>&nbsp;]&nbsp;&nbsp;[&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvsearch_show.php?tz=1&amp;tvshow=Kruispunt&amp;back=$tvhtml$tvinfo.php(tz)1~id)1772395857~back)$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"
- class="grid">When is it on?</a>&nbsp;] <br />
-<br />
- [&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?channel=6&amp;day=0&amp;page=0&amp;tz=1&amp;progid=0&amp;sel=0&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Back</a>&nbsp;]&nbsp;[&nbsp;<a
-href="tvstart.php">Home</a>&nbsp;]&nbsp;[&nbsp;<a
-href="../logout.php">Logout</a>&nbsp;]<br />
- 12:16, Monday 13th March
-</body>
-</html>
-
diff --git a/crawler/kiss/conf/xml/record-alreadyrecorded.xml b/crawler/kiss/conf/xml/record-alreadyrecorded.xml
deleted file mode 100644 (file)
index d1b5e57..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator"
-content="HTML Tidy for Linux/x86 (vers 1st April 2002), see www.w3.org" />
-<link rel="STYLESHEET" type="text/css"
-href="http://epg.kml.kiss-technology.com/kiss.css" />
-<title>KiSS - TV Guide</title>
-</head>
-<body bgcolor="#ffffff">
-<h1><img
-src="http://epg.kml.kiss-technology.com/images/KiSS_Logo.gif"
-align="middle" />Error</h1>
-
-Show is already in the recording queue!<br />
-<br />
-[ <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?station=6&amp;id=1772583278&amp;back=$tvhtml$tvlist.php(channel)6~day)1~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Back</a> ]<br />
-</body>
-</html>
-
diff --git a/crawler/kiss/conf/xml/record-conflict.xml b/crawler/kiss/conf/xml/record-conflict.xml
deleted file mode 100644 (file)
index 78af4d0..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator"
-content="HTML Tidy for Linux/x86 (vers 1st April 2002), see www.w3.org" />
-<link rel="STYLESHEET" type="text/css"
-href="http://epg.kml.kiss-technology.com/kiss.css" />
-<title>KiSS - TV Guide</title>
-</head>
-<body bgcolor="#ffffff">
-<h1><img
-src="http://epg.kml.kiss-technology.com/images/KiSS_Logo.gif"
-align="middle" />Error</h1>
-
-This show conflicts with a recording that is already in the <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_show.php?tz=1&amp;back=$tvhtml$tvinfo.php(station)2~id)1772583335~back)$tvhtml$tvlist.php(channel)2~day)1~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)2~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)1~back)$tvhtml$tvstart.php(tz)1">
-recording queue</a>!<br />
-<br />
-[ <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?station=2&amp;id=1772583335&amp;back=$tvhtml$tvlist.php(channel)2~day)1~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)2~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)1~back)$tvhtml$tvstart.php(tz)1">
-Back</a> ]<br />
-</body>
-</html>
-
diff --git a/crawler/kiss/conf/xml/record-ok.xml b/crawler/kiss/conf/xml/record-ok.xml
deleted file mode 100644 (file)
index 674c9e3..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator"
-content="HTML Tidy for Linux/x86 (vers 1st April 2002), see www.w3.org" />
-<meta http-equiv="content-type"
-content="text/html;charset=iso-8859-1" />
-<title>KiSS - TV Guide - Recordings</title>
-</head>
-<body bgcolor="#ffffff">
-<img src="../images/KiSS_Logo_small.gif" align="center" /> 
-<h1>TV Guide - Recordings</h1>
-
-<h2>Recordings already sent to player</h2>
-
-<b>SBS6</b> - Lois &amp; Clark: The new adventures of Superman -
-&nbsp;08:00&nbsp;-&nbsp;09:00&nbsp; -
-<i>&nbsp;Fri&nbsp;17th&nbsp;</i> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_del.php?id=1772541086&amp;from=0&amp;back=$tvhtml$tvrecord_show.php(tz)1~back)$tvhtml$tvinfo.php(station)6~id)1772583278~back)$tvhtml$tvlist.php(channel)6~day)1~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Delete</a><br />
- <b>VERO</b> - Brainiac -
-<i>&nbsp;19:40&nbsp;-&nbsp;20:10&nbsp;</i> -
-<i>&nbsp;Fri&nbsp;17th&nbsp;</i> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_del.php?id=1772541060&amp;from=0&amp;back=$tvhtml$tvrecord_show.php(tz)1~back)$tvhtml$tvinfo.php(station)6~id)1772583278~back)$tvhtml$tvlist.php(channel)6~day)1~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Delete</a> - Error (Recording conflict)<br />
-<b>VERO</b> - Brainiac - <i>&nbsp;19:40&nbsp;-&nbsp;20:10&nbsp;</i>
-- <i>&nbsp;Fri&nbsp;17th&nbsp;</i> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_del.php?id=1772541060&amp;from=0&amp;back=$tvhtml$tvrecord_show.php(tz)1~back)$tvhtml$tvinfo.php(station)6~id)1772583278~back)$tvhtml$tvlist.php(channel)6~day)1~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Delete</a> - Error (Recording conflict)<br />
- <b>DISC</b> - Brainiac -
-<i>&nbsp;22:00&nbsp;-&nbsp;23:00&nbsp;</i> -
-<i>&nbsp;Fri&nbsp;17th&nbsp;</i> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_del.php?id=1772540925&amp;from=0&amp;back=$tvhtml$tvrecord_show.php(tz)1~back)$tvhtml$tvinfo.php(station)6~id)1772583278~back)$tvhtml$tvlist.php(channel)6~day)1~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Delete</a> - Error (Recording conflict)<br />
-<b>DISC</b> - Brainiac - <i>&nbsp;22:00&nbsp;-&nbsp;23:00&nbsp;</i>
-- <i>&nbsp;Fri&nbsp;17th&nbsp;</i> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_del.php?id=1772540925&amp;from=0&amp;back=$tvhtml$tvrecord_show.php(tz)1~back)$tvhtml$tvinfo.php(station)6~id)1772583278~back)$tvhtml$tvlist.php(channel)6~day)1~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Delete</a> - Error (Recording conflict)<br />
- <b>NL3</b> - The Kumars at no. 42 -
-<i>&nbsp;15:55&nbsp;-&nbsp;16:26&nbsp;</i> -
-<i>&nbsp;Sat&nbsp;18th&nbsp;</i> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_del.php?id=1772583485&amp;from=0&amp;back=$tvhtml$tvrecord_show.php(tz)1~back)$tvhtml$tvinfo.php(station)6~id)1772583278~back)$tvhtml$tvlist.php(channel)6~day)1~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Delete</a><br />
-<b>VERO</b> - Stargate SG-1 -
-<i>&nbsp;18:10&nbsp;-&nbsp;18:55&nbsp;</i> -
-<i>&nbsp;Sat&nbsp;18th&nbsp;</i> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_del.php?id=1772583562&amp;from=0&amp;back=$tvhtml$tvrecord_show.php(tz)1~back)$tvhtml$tvinfo.php(station)6~id)1772583278~back)$tvhtml$tvlist.php(channel)6~day)1~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Delete</a><br />
- <b>VERO</b> - Battlestar Galactica -
-<i>&nbsp;19:35&nbsp;-&nbsp;20:25&nbsp;</i> -
-<i>&nbsp;Sat&nbsp;18th&nbsp;</i> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_del.php?id=1772583564&amp;from=0&amp;back=$tvhtml$tvrecord_show.php(tz)1~back)$tvhtml$tvinfo.php(station)6~id)1772583278~back)$tvhtml$tvlist.php(channel)6~day)1~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Delete</a><br />
- <br />
-<h2>Recordings to be sent to player</h2>
-
-<b>NL1</b> - Samen tegen Kanker -
-<i>&nbsp;20:30&nbsp;-&nbsp;22:25&nbsp;</i> -
-<i>&nbsp;Sat&nbsp;18th&nbsp;</i> - <a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvrecord_del.php?id=1772583278&amp;from=1&amp;back=$tvhtml$tvrecord_show.php(tz)1~back)$tvhtml$tvinfo.php(station)6~id)1772583278~back)$tvhtml$tvlist.php(channel)6~day)1~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Delete</a><br />
- <br />
-<br />
- [&nbsp;<a
-href="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?station=6&amp;id=1772583278&amp;back=$tvhtml$tvlist.php(channel)6~day)1~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)5~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1">
-Back</a>&nbsp;]&nbsp;[&nbsp;<a
-href="tvstart.php">Home</a>&nbsp;]&nbsp;[&nbsp;<a
-href="../logout.php">Logout</a>&nbsp;]<br />
- 19:46, Friday 17th March
-</body>
-</html>
-
diff --git a/crawler/kiss/conf/xml/report.xml b/crawler/kiss/conf/xml/report.xml
deleted file mode 100644 (file)
index afb27fc..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-<report>
-    
-    <messages>
-        <message>Hello world!</message>
-        <message>and another message</message>
-    </messages>
-    
-    <recorded result="OK">
-        <program>
-            <name>Wintertijd</name>
-            <description>Some description MINSK - De presidentsverkiezingen in Wit-Rusland zijn zondag met ruime cijfers gewonnen door zittend president Aleksandr Loekasjenko. Dat bleek zondag uit exitpolls uitgevoerd in opdracht van het totalitaire regime. Het staatshoofd zou kunnen rekenen op ruim 82 procent van de stemmen. Volgens de eerste gedeeltelijke uitslagen zou Loekasjenko zelfs kunnen rekenen op bijna 89 procent.</description>
-            <keywords>Documentaire</keywords>
-            <channel>Nederland 1</channel>
-            <interval>
-                <begin>23:25</begin>
-                <end>00:10</end>
-            </interval>
-        </program>    
-    </recorded>
-    
-    <interesting>
-        <program>
-            <name>Brainiac</name>
-            <description>Humor</description>
-            <keywords>science</keywords>
-            <channel>Discovery Channel</channel>
-            <interval>
-                <begin>23:30</begin>
-                <end>00:15</end>
-            </interval>
-        </program>
-        <category name="horror">
-            <program>
-                <name>Andere tijden</name>
-                <description>Documentaire</description>
-                <keywords>docu</keywords>
-                <channel>Nederland 1</channel>
-                <interval>
-                    <begin>23:30</begin>
-                    <end>00:15</end>
-                </interval>
-            </program>
-        </category>
-        
-    </interesting>
-  
-</report>
diff --git a/crawler/kiss/deps.xml b/crawler/kiss/deps.xml
deleted file mode 100644 (file)
index 6e9095a..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-<!-- dependencies of the kiss crawler itself -->
-
-<target name="kisscrawler.src.d" 
-  depends="logging.d,mail.d,commons-email.d,commons-beanutils.d,commons-codec.d,dom4j.d,xerces.d,httpclient.d,jtidy.d,wamblee.support.d,wamblee.crawler.d,spring.d">
-</target>
-
-<target name="kisscrawler.test.d" depends="wamblee.support.test.d,wamblee.crawler.test.d">
-</target>
-
-
-<!-- dependency to use for depending on the kiss crawler --> 
-
-<property name="kisscrawler.dist.dir" value="${lib.dir}/wamblee/crawler/kiss"/>
-<target name="wamblee.kisscrawler.d">
-  <copy todir="${download.dir}">
-    <fileset dir="${kisscrawler.dist.dir}">
-      <include name="wamblee-crawler-kiss.jar"/>
-    </fileset>
-  </copy>
-</target>
-<target name="wamblee.kisscrawler.test.d">
-  <copy todir="${download.dir}">
-    <fileset dir="${kisscrawler.dist.dir}">
-      <include name="wamblee-crawler-kiss-test.jar"/>
-    </fileset>
-  </copy>
-</target>
diff --git a/crawler/kiss/docs/README.txt b/crawler/kiss/docs/README.txt
deleted file mode 100644 (file)
index 9bc261b..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-This is the base documentation directory.
-
-skinconf.xml     # This file customizes Forrest for your project. In it, you
-                 # tell forrest the project name, logo, copyright info, etc
-
-sitemap.xmap     # Optional. This sitemap is consulted before all core sitemaps.
-                 # See http://forrest.apache.org/docs/project-sitemap.html
diff --git a/crawler/kiss/docs/classes/CatalogManager.properties b/crawler/kiss/docs/classes/CatalogManager.properties
deleted file mode 100644 (file)
index af7b5ab..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 2002-2005 The Apache Software Foundation or its licensors,
-# as applicable.
-#
-# 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.
-
-#=======================================================================
-# CatalogManager.properties for Catalog Entity Resolver.
-#
-# This is the default properties file for your project.
-# This facilitates local configuration of application-specific catalogs.
-# If you have defined any local catalogs, then they will be loaded
-# before Forrest's core catalogs.
-#
-# See the Apache Forrest documentation:
-# http://forrest.apache.org/docs/your-project.html
-# http://forrest.apache.org/docs/validation.html
-
-# verbosity:
-# The level of messages for status/debug (messages go to standard output).
-# The setting here is for your own local catalogs.
-# The verbosity of Forrest's core catalogs is controlled via
-#  main/webapp/WEB-INF/cocoon.xconf
-#
-# The following messages are provided ...
-#  0 = none
-#  1 = ? (... not sure yet)
-#  2 = 1+, Loading catalog, Resolved public, Resolved system
-#  3 = 2+, Catalog does not exist, resolvePublic, resolveSystem
-#  10 = 3+, List all catalog entries when loading a catalog
-#    (Cocoon also logs the "Resolved public" messages.)
-verbosity=1
-
-# catalogs ... list of additional catalogs to load
-#  (Note that Apache Forrest will automatically load its own default catalog
-#  from main/webapp/resources/schema/catalog.xcat)
-# Use either full pathnames or relative pathnames.
-# pathname separator is always semi-colon (;) regardless of operating system
-# directory separator is always slash (/) regardless of operating system
-catalogs=../resources/schema/catalog.xcat
-
-# relative-catalogs
-# If false, relative catalog URIs are made absolute with respect to the
-# base URI of the CatalogManager.properties file. This setting only 
-# applies to catalog URIs obtained from the catalogs property in the
-# CatalogManager.properties file
-# Example: relative-catalogs=[yes|no]
-relative-catalogs=no
diff --git a/crawler/kiss/docs/content/test1.html b/crawler/kiss/docs/content/test1.html
deleted file mode 100644 (file)
index 1a174a8..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<html>
-  <head>
-               <title>Raw un-processed HTML page (test1)</title>
-  </head>
-       <body>
-               <h1>raw un-processed HTML page (test1)</h1>
-               <p>
-               This raw HTML page is linked to from xdocs/samples/static.xml
-    and from xdocs/samples/linking.xml
-               </p>
-               <p>All linked-to pages (for example: 
-     <a href="test2.html">&lt;a href="test2.html"&gt;</a>) are
-               also available.
-    </p>
-               <hr />
-    <p>
-               [return to <a href="index.html">Index</a>]<br>
-               [return to <a href="samples/linking.html">Linking demonstration</a>]
-    </p>
-       </body>
-</html>
diff --git a/crawler/kiss/docs/content/xdocs/details.html b/crawler/kiss/docs/content/xdocs/details.html
deleted file mode 100644 (file)
index d977ac7..0000000
+++ /dev/null
@@ -1,194 +0,0 @@
-<html>
-<head>
-<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KiSS crawler report</title>
-</head>
-<body>
-<h1>KiSS crawler report</h1>
-<h2>Successfully recorded programs <p>
-<table cellpadding="5" align="left">
-<tr align="left">
-<td>18:00 - 18:55: <strong>Stargate SG-1</strong> (Veronica/Serie/soap)</td>
-
-</tr>
-<tr>
-<td>
-<blockquote>
-<font size="-1">Sf-serie SG-1 krijgt een aanbod van een buitenaardse wereld voor een wondermedicijn.</font>
-</blockquote>
-</td>
-</tr>
-<tr align="left">
-<td>19:25 - 20:25: <strong>Stargate SG-1</strong> (Veronica/Serie/soap)</td>
-</tr>
-<tr>
-
-<td>
-<blockquote>
-<font size="-1">Sf-serie Tijdens een vlucht van de nieuwe X-303, codenaam Prometheus, wordt het schip overmand door NID-agenten.</font>
-</blockquote>
-</td>
-</tr>
-</table>
-<br clear="left">
-</p>
-</h2>
-<h2>Conflicts with other recorded programs<p>
-<table cellpadding="5" align="left">
-<tr align="left">
-<td>20:00 - 20:45: <strong>Doctor Who</strong> (BBC1/Drama)</td>
-
-</tr>
-<tr>
-<td>
-<blockquote>
-<font size="-1">Madame de Pompadour finds the court at Versailles under attack from sinister clockwork killers. Her only hope of salvation lies with the man who has haunted her dreams since childhood - a mysterious stranger known only as the Doctor.</font>
-</blockquote>
-</td>
-</tr>
-</table>
-<br clear="left">
-</p>
-</h2>
-<h2>Possibly interesting programs</h2>
-<p>
-<table cellpadding="5" align="left"></table>
-
-<br clear="left">
-</p>
-<h3>Category: documentaires</h3>
-<p>
-<table cellpadding="5" align="left">
-<tr align="left">
-<td>11:50 - 12:30: <strong>Zembla</strong> (Nederland 3/Documentaire)</td>
-</tr>
-<tr>
-<td>
-<blockquote>
-<font size="-1"></font>
-
-</blockquote>
-</td>
-</tr>
-<tr align="left">
-<td>13:10 - 13:35: <strong>Andere tijden</strong> (Nederland 3/Film)</td>
-</tr>
-<tr>
-<td>
-<blockquote>
-<font size="-1">Geschiedenisrubriek met reportages over (bijna) vergeten gebeurtenissen uit de twintigste eeuw. De redactie gaat op zoek naar ooggetuigen en betrokkenen en naar historische filmbeelden om aan de hand daarvan de verhalen van vroeger opnieuw te vertellen.</font>
-</blockquote>
-</td>
-
-</tr>
-</table>
-<br clear="left">
-</p>
-<h3>Category: films</h3>
-<p>
-<table cellpadding="5" align="left">
-<tr align="left">
-<td>13:10 - 13:35: <strong>Andere tijden</strong> (Nederland 3/Film)</td>
-</tr>
-<tr>
-<td>
-
-<blockquote>
-<font size="-1">Geschiedenisrubriek met reportages over (bijna) vergeten gebeurtenissen uit de twintigste eeuw. De redactie gaat op zoek naar ooggetuigen en betrokkenen en naar historische filmbeelden om aan de hand daarvan de verhalen van vroeger opnieuw te vertellen.</font>
-</blockquote>
-</td>
-</tr>
-<tr align="left">
-<td>22:00 - 06:00: <strong>Face off</strong> (Veronica/Film)</td>
-</tr>
-<tr>
-<td>
-<blockquote>
-<font size="-1">Actiefilm Een FBI-agent wil kost wat het kost een psychotische terrorist pakken, die verantwoordelijk is voor de moord op zijn zoontje. In de strijd om de terrorist in te rekenen raakt deze in een coma. Hij heeft de agent echter nog net kunnen vertellen dat ergens in Los Angeles een bom verborgen ligt. Om op het spoor van deze bom te komen vragen regeringsfunctionarissen of de FBI-agent zich uit wil geven als de moordenaar van zijn zoon. Door middel van een medische ingreep worden de gezichten van beiden verwisseld met alle gevolgen van dien.</font>
-
-</blockquote>
-</td>
-</tr>
-<tr align="left">
-<td>23:25 - 01:00: <strong>Gossip</strong> (Net5/Film)</td>
-</tr>
-<tr>
-<td>
-<blockquote>
-<font size="-1">Thriller Drie studenten doen voor een schoolproject een proef over roddelen. Ze verspreiden een gerucht om te zien hoe lang het duurt voordat deze zich heeft verspreid. Maar wat begint als een onschuldige roddel, escaleert tot een groot misverstand en leidt zelfs tot een arrestatie wegens verkrachting. Het drietal beseft dat hun vooropgezete plan desastreuze gevolgen heeft en dat hun experiment niet meer te stoppen is.</font>
-</blockquote>
-</td>
-
-</tr>
-</table>
-<br clear="left">
-</p>
-<h3>Category: science fiction</h3>
-<p>
-<table cellpadding="5" align="left">
-<tr align="left">
-<td>08:00 - 09:00: <strong>Lois &amp; Clark: The new adventures of Superman</strong> (SBS6/Serie/soap)</td>
-</tr>
-
-<tr>
-<td>
-<blockquote>
-<font size="-1">Sf-serie Lex Luthor ontwikkelt verschillende tests om de kracht van Superman te doorgronden.</font>
-</blockquote>
-</td>
-</tr>
-</table>
-<br clear="left">
-</p>
-<h3>Category: wetenschap</h3>
-<p>
-<table cellpadding="5" align="left">
-<tr align="left">
-<td>11:30 - 12:25: <strong>Triumph of life</strong> (RTL4/Documentaire)</td>
-
-</tr>
-<tr>
-<td>
-<blockquote>
-<font size="-1">Serie documentaires over de evolutie. Al het leven op aarde is ooit ontstaan uit een organisme dat zich door omstandigheden heeft kunnen ontwikkelen tot een wezen dat zich wist voort te planten. Dit ingewikkelde proces voltrok zich miljarden jaren geleden en is sindsdien gaande. Het werd in de negentiende eeuw voor het eerst in kaart gebracht door de Britse bioloog Charles Darwin. Sindsdien wordt de evolutietheorie wetenschappelijk onderzocht en betwijfeld, maar het feit is dat het leven zich in diverse vormen blijft ontwikkelen.</font>
-</blockquote>
-</td>
-</tr>
-<tr align="left">
-<td>00:00 - 00:30: <strong>Sex sense: Bi way</strong> (Discovery Channel/Wetenschap)</td>
-</tr>
-<tr>
-
-<td>
-<blockquote>
-<font size="-1">Documentaireserie Onderzoek naar de wetenschap van seksualiteit, gecombineerd met levendige beelden en ondeugende humor.</font>
-</blockquote>
-</td>
-</tr>
-<tr align="left">
-<td>00:30 - 01:00: <strong>Sex sense: Baring it all</strong> (Discovery Channel/Wetenschap)</td>
-</tr>
-<tr>
-<td>
-<blockquote>
-
-<font size="-1">Documentaireserie Onderzoek naar de wetenschap van seksualiteit, gecombineerd met levendige beelden en ondeugende humor.</font>
-</blockquote>
-</td>
-</tr>
-<tr align="left">
-<td>00:40 - 02:10: <strong>Top secret!</strong> (SBS6/Comedy)</td>
-</tr>
-<tr>
-<td>
-<blockquote>
-<font size="-1">Filmkomedie De knappe jaren '50 rock-'n-roll-ster Nick Rivers is in Oost-Duitsland om op te treden. Daar wordt hij verliefd op de dochter van een ontvoerde wetenschapper en komt hij in contact met het Franse verzet.</font>
-
-</blockquote>
-</td>
-</tr>
-</table>
-<br clear="left">
-</p>
-</body>
-</html>
diff --git a/crawler/kiss/docs/content/xdocs/hello.pdf b/crawler/kiss/docs/content/xdocs/hello.pdf
deleted file mode 100644 (file)
index 5ca4f31..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-%PDF-1.3
-%ª«¬­
-4 0 obj
-<< /Type /Info
-/Producer (FOP 0.20.4) >>
-endobj
-5 0 obj
-<< /Length 203 /Filter [ /ASCII85Decode /FlateDecode ]
- >>
-stream
-Gar'!]afWZ&;9q-MRA)RFnblL2&]tQSZsjOOT[ck2SQkp(bfQ[R7ZPq=U24c0dqq_i?B[A.0s\)5f5<IA'lb0eeo`C+`q\Ip/Tke*)7%T+.hT8:QQidXoPLKZM,RXY"bP+;E@%,ZX;V'Aq+M9rH"!g=N5TToDMoqMeUiEe).I_W3q80:jF+;'9bVIeBRb]DhE9:E2be2~>
-endstream
-endobj
-6 0 obj
-<< /Type /Page
-/Parent 1 0 R
-/MediaBox [ 0 0 595 842 ]
-/Resources 3 0 R
-/Contents 5 0 R
->>
-endobj
-7 0 obj
-<< /Type /Font
-/Subtype /Type1
-/Name /F1
-/BaseFont /Helvetica
-/Encoding /WinAnsiEncoding >>
-endobj
-8 0 obj
-<< /Type /Font
-/Subtype /Type1
-/Name /F5
-/BaseFont /Times-Roman
-/Encoding /WinAnsiEncoding >>
-endobj
-1 0 obj
-<< /Type /Pages
-/Count 1
-/Kids [6 0 R ] >>
-endobj
-2 0 obj
-<< /Type /Catalog
-/Pages 1 0 R
- >>
-endobj
-3 0 obj
-<< 
-/Font << /F1 7 0 R /F5 8 0 R >> 
-/ProcSet [ /PDF /ImageC /Text ] >> 
-endobj
-xref
-0 9
-0000000000 65535 f 
-0000000687 00000 n 
-0000000745 00000 n 
-0000000795 00000 n 
-0000000015 00000 n 
-0000000071 00000 n 
-0000000365 00000 n 
-0000000471 00000 n 
-0000000578 00000 n 
-trailer
-<<
-/Size 9
-/Root 2 0 R
-/Info 4 0 R
->>
-startxref
-883
-%%EOF
diff --git a/crawler/kiss/docs/content/xdocs/images/group-logo.gif b/crawler/kiss/docs/content/xdocs/images/group-logo.gif
deleted file mode 100644 (file)
index f017f32..0000000
Binary files a/crawler/kiss/docs/content/xdocs/images/group-logo.gif and /dev/null differ
diff --git a/crawler/kiss/docs/content/xdocs/images/group.svg b/crawler/kiss/docs/content/xdocs/images/group.svg
deleted file mode 100644 (file)
index 584cedb..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-
-<!--
-       SVG Anteater logo
-
-To get started with SVG, I'd recommend getting the Adobe SVG plugin, and the
-xml-batik CVS module. Then have a look at the xml-batik/samples files. Use the
-SVG spec (http://www.w3.org/TR/SVG/) as a reference.
--->
-
-<!-- See Forrest Issue: FOR-229
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
-"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"
-[
- <!ATTLIST svg xmlns:for CDATA #FIXED "http://apache.org/forrest">
- <!ENTITY % textExt "|for:group-name">
- <!ELEMENT for:group-name (#PCDATA)>
-]>
--->
-<svg xmlns="http://www.w3.org/2000/svg"
-     xmlns:xlink="http://www.w3.org/1999/xlink"
-     xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-     xsl:version="1.0"
-     xmlns:for="http://apache.org/forrest"
-     width="220" height="65" >
-  <title>Anteater logo</title>
-
-  <defs>
-
-    <!--
-    <radialGradient id="radialGradient">
-      <stop style="stop-color:gold" offset="0"/>
-      <stop style="stop-color:orange" offset=".5"/>
-      <stop style="stop-color:crimson" offset="1"/>
-    </radialGradient>
-    <linearGradient id="linearGradient">
-      <stop style="stop-color:gold" offset="0"/>
-      <stop style="stop-color:orange" offset=".5"/>
-      <stop style="stop-color:crimson" offset="1"/>
-    </linearGradient>
-    -->
-
-    <linearGradient id="gradient" x1="0" y1="0" x2="0" y2="1">
-      <stop style="stop-color:white" offset="0"/>
-      <stop style="stop-color:lightgreen" offset="1"/>
-    </linearGradient>
-
-    <filter id="shadowFilter" filterUnits="objectBoundingBox" width="1.4" height="1.4">
-      <!-- Takes the alpha channel (black outline of the text), blurs it and saves as 'blur' -->
-      <feGaussianBlur in="SourceAlpha" stdDeviation="2 2" result="blur"/>
-      <!-- Takes saved 'blur' and offsets it by 4 pixels, saves as 'offsetBlur' -->
-      <feOffset in="blur" dx="4" dy="4" result="offsetBlur"/>
-      <!-- Merges SourceGraphic (original image) and 'offsetBlur', putting the
-      former 'over' the latter, and using the merged result as the finished
-      image -->
-      <feComposite in="SourceGraphic" in2="offsetBlur" operator="over"/>
-    </filter>
-
-  </defs>
-
-  <g filter="url(#shadowFilter)" fill="url(#gradient)">
-    <text x="40%" y="60%" style="font-size:24pt; font-family:Verdana ; text-anchor: middle">
-    <for:group-name />
-    </text>
-  </g>
-</svg>
diff --git a/crawler/kiss/docs/content/xdocs/images/icon.png b/crawler/kiss/docs/content/xdocs/images/icon.png
deleted file mode 100644 (file)
index 3be8bbb..0000000
Binary files a/crawler/kiss/docs/content/xdocs/images/icon.png and /dev/null differ
diff --git a/crawler/kiss/docs/content/xdocs/images/project-logo.gif b/crawler/kiss/docs/content/xdocs/images/project-logo.gif
deleted file mode 100644 (file)
index a60277a..0000000
Binary files a/crawler/kiss/docs/content/xdocs/images/project-logo.gif and /dev/null differ
diff --git a/crawler/kiss/docs/content/xdocs/images/project.svg b/crawler/kiss/docs/content/xdocs/images/project.svg
deleted file mode 100644 (file)
index 01abcdb..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-
-<!--
-       SVG Anteater logo
-
-To get started with SVG, I'd recommend getting the Adobe SVG plugin, and the
-xml-batik CVS module. Then have a look at the xml-batik/samples files. Use the
-SVG spec (http://www.w3.org/TR/SVG/) as a reference.
--->
-
-<!-- See Forrest Issue: FOR-229
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
-"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"
-[
- <!ATTLIST svg xmlns:for CDATA #FIXED "http://apache.org/forrest">
- <!ENTITY % textExt "|for:project-name">
- <!ELEMENT for:project-name (#PCDATA)>
-]>
--->
-<svg xmlns="http://www.w3.org/2000/svg"
-     xmlns:xlink="http://www.w3.org/1999/xlink"
-     xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-     xsl:version="1.0"
-     xmlns:for="http://apache.org/forrest"
-     width="420" height="65" >
-  <title>Anteater logo</title>
-
-  <defs>
-
-    <!--
-    <radialGradient id="radialGradient">
-      <stop style="stop-color:gold" offset="0"/>
-      <stop style="stop-color:orange" offset=".5"/>
-      <stop style="stop-color:crimson" offset="1"/>
-    </radialGradient>
-    <linearGradient id="linearGradient">
-      <stop style="stop-color:gold" offset="0"/>
-      <stop style="stop-color:orange" offset=".5"/>
-      <stop style="stop-color:crimson" offset="1"/>
-    </linearGradient>
-    -->
-
-    <linearGradient id="gradient" x1="0" y1="0" x2="0" y2="1">
-      <stop style="stop-color:white" offset="0"/>
-      <stop style="stop-color:lightgreen" offset="1"/>
-    </linearGradient>
-
-    <filter id="shadowFilter" filterUnits="objectBoundingBox" width="1.4" height="1.4">
-      <!-- Takes the alpha channel (black outline of the text), blurs it and saves as 'blur' -->
-      <feGaussianBlur in="SourceAlpha" stdDeviation="2 2" result="blur"/>
-      <!-- Takes saved 'blur' and offsets it by 4 pixels, saves as 'offsetBlur' -->
-      <feOffset in="blur" dx="4" dy="4" result="offsetBlur"/>
-      <!-- Merges SourceGraphic (original image) and 'offsetBlur', putting the
-      former 'over' the latter, and using the merged result as the finished
-      image -->
-      <feComposite in="SourceGraphic" in2="offsetBlur" operator="over"/>
-    </filter>
-
-  </defs>
-
-  <g filter="url(#shadowFilter)" fill="url(#gradient)">
-    <text x="100%" y="60%" style="font-size:24pt; font-family:Verdana ; text-anchor: end" >
-    <for:project-name />
-    </text>
-  </g>
-</svg>
diff --git a/crawler/kiss/docs/content/xdocs/images/usemap.gif b/crawler/kiss/docs/content/xdocs/images/usemap.gif
deleted file mode 100644 (file)
index c10732c..0000000
Binary files a/crawler/kiss/docs/content/xdocs/images/usemap.gif and /dev/null differ
diff --git a/crawler/kiss/docs/content/xdocs/index.xml b/crawler/kiss/docs/content/xdocs/index.xml
deleted file mode 100644 (file)
index 54dd1d2..0000000
+++ /dev/null
@@ -1,313 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
-<document>
-  <header>
-    <title>Automatic Recording for KiSS Hard Disk Recorders</title>
-  </header>
-  <body>
-    <warning> KiSS makes regular updates to their site that sometimes require adaptations to the
-      crawler. If it stops working, check out the most recent version here. </warning>
-    <section id="changelog">
-      <title>Changelog</title>
-      <section>
-        <title>21 November 2006</title>
-        <ul>
-          <li>Corrected the <code>config.xml</code> again.</li>
-          <li>Corrected errors in the documentation for the web application. It starts running at 19:00
-              and not at 5:00.</li>
-        </ul>
-      </section>
-      <section>
-        <title>19 November 2006</title>
-        <ul>
-          <li>Corrected the <code>config.xml</code> file to deal with changes in the login procedure.</li>
-        </ul>
-      </section>
-      <section>
-        <title>17 November 2006</title>
-        <ul>
-          <li>Corrected the packed distributions. The standalone distribution had an error in the
-            scripts and was missing libraries </li>
-
-        </ul>
-      </section>
-      <section>
-        <title>7 September 2006</title>
-        <ul>
-          <li>KiSS modified the login procedure. It is now working again.</li>
-          <li>Generalized the startup scripts. They should now be insensitive to the specific
-            libraries used. </li>
-        </ul>
-      </section>
-      <section>
-        <title>31 August 2006</title>
-        <ul>
-          <li>Added windows bat file for running the crawler under windows. Very add-hoc, will be
-            generalized. </li>
-        </ul>
-      </section>
-      <section>
-        <title>24 August 2006</title>
-        <ul>
-          <li>The crawler now uses desktop login for crawling. Also, it is much more efficient since
-            it no longer needs to crawl the individual programs. This is because the channel page
-            includes descriptions of programs in javascript popups which can be used by the crawler.
-            The result is a significant reduction of the load on the KiSS EPG site. Also, the delay
-            between requests has been increased to further reduce load on the KiSS EPG site. </li>
-          <li> The crawler now crawls programs for tomorrow instead of for today. </li>
-          <li> The web based crawler is configured to run only between 7pm and 12pm. It used to run
-            at 5am. </li>
-        </ul>
-      </section>
-
-      <section>
-        <title>13-20 August 2006</title>
-        <p> There were several changes to the login procedure, requiring modifications to the
-          crawler. </p>
-        <ul>
-          <li>The crawler now uses the 'Referer' header field correctly at login.</li>
-          <li>KiSS now uses hidden form fields in their login process which are now also handled
-            correctly by the crawler.</li>
-        </ul>
-      </section>
-    </section>
-    <section id="overview">
-      <title>Overview</title>
-
-      <p> In 2005, <a href="site:links/kiss">KiSS</a> introduced the ability to schedule recordings
-        on KiSS hard disk recorder (such as the DP-558) through a web site on the internet. When a
-        new recording is scheduled through the web site, the KiSS recorder finds out about this new
-        recording by polling a server on the internet. This is a really cool feature since it
-        basically allows programming the recorder when away from home. </p>
-      <p> After using this feature for some time, I started noticing regular patterns. Often you
-        are looking for the same programs and for certain types of programs. So, wouldn't it be nice
-        to have a program do this work for you and automatically record programs and notify you of
-        possibly interesting ones? </p>
-      <p> This is where the KiSS crawler comes in. This is a simple crawler which logs on to the
-        KiSS electronic programme guide web site and gets programme information from there. Then
-        based on that it automatically records programs for you or sends notifications about
-        interesting ones. </p>
-      <p> In its current version, the crawler can be used in two ways: </p>
-      <ul>
-        <li><strong>standalone program</strong>: 
-        A standalone program run from the command-line or as a scheduled task.</li>
-        <li><strong>web application</strong>: A web application running on a java application
-          server. With this type of use, the crawler also features an automatic retry mechanism in
-          case of failures, as well as a simple web interface. </li>
-      </ul>
-    </section>
-
-    <section>
-      <title>Downloading</title>
-
-      <p> At this moment, no formal releases have been made and only the latest version can be
-        downloaded. </p>
-      <p> The easy way to start is the <a
-          href="installs/crawler/target/wamblee-crawler-0.2-SNAPSHOT-kissbin.zip">standalone program
-          binary version</a> or using the <a
-          href="installs/crawler/kissweb/target/wamblee-crawler-kissweb.war">web application</a>. </p>
-      <p> The latest source can be obtained from subversion with the URL
-          <code>https://wamblee.org/svn/public/utils</code>. The subversion repository allows
-        read-only access to anyone. </p>
-      <p> The application was developed and tested on SuSE linux 10.1 with 
-        JBoss 4.0.4 application
-        server. An application server or servlet container is only required for the 
-        web application. The crawler requires at least a Java Virtual Machine
-        1.5 or greater to run. </p>
-    </section>
-
-    <section>
-      <title>Configuring the crawler</title>
-
-      <p> The crawler comes with three configuration files: </p>
-      <ul>
-        <li><code>crawler.xml</code>: basic crawler configuration tailored to the KiSS electronic
-          programme guide.</li>
-        <li><code>programs.xml</code>: containing a description of which programs must be recorded
-          and which programs are interesting.</li>
-        <li><code>org.wamblee.crawler.properties</code>: Containing a configuration </li>
-      </ul>
-      <p> For the standalone program, all configuration files are in the <code>conf</code>
-        directory. For the web application, the properties files is located in the
-          <code>WEB-INF/classes</code> directory of the web application, and
-        <code>crawler.xml</code> and <code>programs.xml</code> are located outside of the web
-        application at a location configured in the properties file. </p>
-
-
-      <section>
-        <title>Crawler configuration <code>crawler.xml</code></title>
-
-        <p> First of all, copy the <code>config.xml.example</code> file to <code>config.xml</code>.
-          After that, edit the first entry of that file and replace <code>user</code> and
-            <code>passwd</code> with your personal user id and password for the KiSS Electronic
-          Programme Guide. </p>
-      </section>
-
-      <section>
-        <title>Program configuration</title>
-        <p> Interesting TV shows are described using <code>program</code> elements. Each
-            <code>program</code> element contains one or more <code>match</code> elements that
-          describe a condition that the interesting program must match. </p>
-        <p> Matching can be done on the following properties of a program: </p>
-        <table>
-          <tr>
-            <th>Field name</th>
-            <th>Description</th>
-          </tr>
-          <tr>
-            <td>name</td>
-            <td>Program name</td>
-          </tr>
-          <tr>
-            <td>description</td>
-            <td>Program description</td>
-          </tr>
-          <tr>
-            <td>channel</td>
-            <td>Channel name</td>
-          </tr>
-          <tr>
-            <td>keywords</td>
-            <td>Keywords/classification of the program.</td>
-          </tr>
-        </table>
-        <p> The field to match is specified using the <code>field</code> attribute of the
-            <code>match</code> element. If no field name is specified then the program name is
-          matched. Matching is done by converting the field value to lowercase and then doing a
-          perl-like regular expression match of the provided value. As a result, the content of the
-          match element should be specified in lower case otherwise the pattern will never match. If
-          multiple <code>match</code> elements are specified for a given <code>program</code>
-          element, then all matches must apply for a program to be interesting. </p>
-        <p> Example patterns: </p>
-        <table>
-          <tr>
-            <th>Pattern</th>
-            <th>Examples of matching field values</th>
-          </tr>
-          <tr>
-            <td>the.*x.*files</td>
-            <td>"The X files", "The X-Files: the making of"</td>
-          </tr>
-          <tr>
-            <td>star trek</td>
-            <td>"Star Trek Voyager", "Star Trek: The next generation"</td>
-          </tr>
-        </table>
-
-        <p> It is possible that different programs cannot be recorded since they overlap. To deal
-          with such conflicts, it is possible to specify a priority using the <code>priority</code>
-          element. Higher values of the priority value mean a higher priority. If two programs have
-          the same priority, then it is (more or less) unspecified which of the two will be
-          recorded, but it will at least record one program. If no priority is specified, then the
-          priority is 1 (one). </p>
-
-        <p> Since it is not always desirable to try to record every program that matches the
-          criteria, it is also possible to generate notifications for interesting programs only
-          without recording them. This is done by specifying the <code>action</code> alement with
-          the content <code>notify</code>. By default, the <code>action</code> is
-          <code>record</code>. To make the mail reports more readable it is possible to also assign
-          a category to a program for grouping interesting programs. This can be done using the
-            <code>category</code> element. Note that if the <code>action</code> is
-          <code>notify</code>. then the <code>priority</code> element is not used. </p>
-
-      </section>
-
-      <section>
-        <title>Notification configuration</title>
-        <p> Edit the configuration file <code>org.wamblee.crawler.properties</code>. The properties
-          file is self-explanatory. </p>
-      </section>
-    </section>
-
-
-
-
-    <section>
-      <title>Installing and running the crawler</title>
-
-      <section>
-        <title>Standalone application</title>
-        <p> In the binary distribution, execute the <code>run</code> script for your operating
-          system (<code>run.bat</code> for windows, and <code>run.sh</code> for unix). </p>
-      </section>
-
-      <section>
-        <title>Web application</title>
-        <p> After deploying the web application, navigate to the application in your browser (e.g.
-            <code>http://localhost:8080/wamblee-crawler-kissweb</code>). The screen should show an
-          overview of the last time it ran (if it ran before) as well as a button to run the crawler
-          immediately. Also, the result of the last run can be viewed. The crawler will run
-          automatically starting after 19:00, 
-          and will retry at 1 hour intervals in case
-          of failure to retrieve programme information. 
-          </p> 
-          
-          <p>
-          Since the crawler checks the status at 
-          1 hour intervals it can run for the first time anytime between 19:00 and 20:00. This is done
-          on purpose since it means that crawlers run by different people will not all start running 
-          simultaneously and is thus more friendly to the KiSS servers.  </p>
-      </section>
-
-      <section>
-        <title>Source distribution</title>
-        <p> With the source code, build everything with maven2 as follows:</p>
-        <source>
-           mvn -Dmaven.test.skip=true install
-           cd crawler
-           mvn package assembly:assembly
-        </source> 
-        <p>
-          After this, locate the
-          binary distribution in the <code>target</code> subdirectory of the <code>crawler</code>
-          directory. Then
-          proceed as for the binary distribution.</p>
-         
-      </section>
-
-      <section>
-        <title>General usage</title>
-        <p> When the crawler runs, it retrieves the programs for tomorrow. 
-        </p>
-        <note> If you deploy the web application today, it will run automatically on the next (!)
-          day. This even holds if you deploy the application before the normal scheduled time. </note>
-      </section>
-
-
-    </section>
-
-    <section id="examples">
-      <title>Examples</title>
-
-      <p> The best example is in the distribution itself. It is my personal
-        <code>programs.xml</code> file. </p>
-    </section>
-
-    <section>
-      <title>Contributing</title>
-
-      <p> You are always welcome to contribute. If you find a problem just tell me about it and if
-        you have ideas am I always interested to hear about them. </p>
-      <p> If you are a programmer and have a fix for a bug, just send me a patch and if you are
-        fanatic enough and have ideas, I can also give you write access to the repository. </p>
-    </section>
-
-
-  </body>
-</document>
diff --git a/crawler/kiss/docs/content/xdocs/main.html b/crawler/kiss/docs/content/xdocs/main.html
deleted file mode 100644 (file)
index e700881..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-
-
-
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-  <head>
-    <title>KiSS Crawler overview page</title>
-    
-    <meta http-equiv="pragma" content="no-cache">
-    <meta http-equiv="cache-control" content="no-cache">
-    <meta http-equiv="expires" content="0">
-
-    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
-    <meta http-equiv="description" content="This is my page">
-    
-    <!--
-    <link rel="stylesheet" type="text/css" href="styles.css">
-    -->
-  </head>
-  
-  <body>
-    <h1>KiSS Crawler Overview</h1>
-    
-    <TABLE border="1">
-      <tr>
-
-        <td>
-           Currently running:
-        </td>
-        <td>
-           false
-        </td>
-      </tr>
-      
-            <tr>
-        <td>
-          Last executed at:
-        </td>
-
-        <td>
-          Sat May 06 05:18:54 CEST 2006
-        </td>
-      </tr>
-      <tr>
-        <td>
-          Last result: 
-        </td>
-        <td>
-          true
-        </td>
-
-      </tr>
-        <tr>
-        <td>
-          Last message: 
-        </td>
-        <td>
-          
-        </td>
-        </tr>
-        <tr>
-
-        <td>
-          Last report: 
-        </td>
-        <td>
-          <a href="details.html">details</a>
-        </td>
-        </tr>
-      
-    </TABLE>
-    
-    <FORM action="runnow">
-
-      <INPUT type="submit" name="runnow" value="Run Crawler as soon as possible">
-    </FORM>
-    
-  </body>
-</html>
diff --git a/crawler/kiss/docs/content/xdocs/samples/ascii-art.xml b/crawler/kiss/docs/content/xdocs/samples/ascii-art.xml
deleted file mode 100644 (file)
index 4f984d0..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
-<document> 
-  <header> 
-    <title>Ascii Art sample</title> 
-  </header> 
-  <body> 
-    <section>
-      <title>Sample Ascii Art</title>
-      <p>To create a <code>.png</code> image like the one below with ASCII art, just save 
-         the text file with the <code>.aart</code> extension and then link from any page
-         as an image (<code>&lt;image src="asci-art-file.png"/&gt;</code>).</p> 
-      <p><img src="cocoon-pyramid.png" alt="cocoon pyramid of management-(logic-content-style)"/></p> 
-      <p>Here is the source file that has created the above image.</p>         
-      <source>
-         +-------------------+
-         |    Management     |
-         +-+-------+-------+-+
-           |       |       |                          
-           |       |       |
-   +-------+  +----+----+  +-------+  
-   | logic +--+ content +--+ style |  
-   +-------+  +---------+  +-------+  
-      </source>  
-      <p>An ascii art pad recognized following ascii characters:</p>  
-        <ul>
-          <li> '-' horizontal SVG line</li>
-          <li>'|' vertical SVG line</li>
-          <li> '+' corner</li>
-          <li> \ oblique line</li>
-          <li> String starting with letter, digit, or '_' is converted to a SVG text.</li>
-        </ul>
-    </section>
-  </body> 
-  <footer> 
-    <legal>Copyright 2002-2004 The Apache Software Foundation or its licensors, as applicable.</legal>
-  </footer>
-</document>
diff --git a/crawler/kiss/docs/content/xdocs/samples/cocoon-pyramid.aart b/crawler/kiss/docs/content/xdocs/samples/cocoon-pyramid.aart
deleted file mode 100644 (file)
index 090a0e0..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-
-       +-------------------+
-       |    Management     |
-       +-+-------+-------+-+
-         |       |       |                          
-         |       |       |
- +-------+  +----+----+  +-------+  
- | logic +--+ content +--+ style |  
- +-------+  +---------+  +-------+  
-
diff --git a/crawler/kiss/docs/content/xdocs/samples/custom.xml b/crawler/kiss/docs/content/xdocs/samples/custom.xml
deleted file mode 100644 (file)
index dff5776..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE greeting PUBLIC "-//Acme//DTD Hello Document V1.0//EN" "hello-v10.dtd">
-<greeting>
-Hello XML Custom World!!
-</greeting>
diff --git a/crawler/kiss/docs/content/xdocs/samples/customSchema.xml b/crawler/kiss/docs/content/xdocs/samples/customSchema.xml
deleted file mode 100644 (file)
index 81c7c1a..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
-<document> 
-  <header> 
-    <title>Custom Schema</title> 
-  </header> 
-  <body> 
-    <p>Forrest comes with a set of schemas for common documents, however, if you have existing documents
-    that use a different schema you will want to tell Forrest how to work with them. The best way of doing
-    this is to <a href="http://forrest.apache.org/0.7/docs/howto/howto-buildPlugin.html">build a plugin</a>
-    so that you can easily reuse the functionality on different projects. Plugins also allow you to share
-    this new functionality with other users, and to benefit from their contributions to your work.</p>
-    
-    <p>If you don't want to build a plugin you can make Forrest process them within your project sitemap 
-    (but this won't really save you any work since the process is almost the same). This sample site has
-    a demonstration of using a custom DTD. If you request <a href="custom.html">&lt;a href="custom.html"&gt;</a>
-    you can see the results. Take a look at the project <code>sitemap.xmap</code> to see how it is done.</p>
-    
-    <note>Adding custom schemas with a plugin has the added benefit of being able to add the schema
-    definition to the catalog file rather than having to reference it directly from within the XML
-    document.</note>
-  </body>
-</document>
diff --git a/crawler/kiss/docs/content/xdocs/samples/document-v13.xml b/crawler/kiss/docs/content/xdocs/samples/document-v13.xml
deleted file mode 100644 (file)
index 9ca3809..0000000
+++ /dev/null
@@ -1,381 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.3//EN" "http://forrest.apache.org/dtd/document-v13.dtd">
-<document> 
-  <header> 
-    <title>The Apache Forrest xdocs document-v1.3 DTD</title> 
-    <notice>The content of this document doesn't make any sense at all.</notice>
-    <abstract>This is a demonstration document using all possible elements in
-      the current Apache Forrest xdocs <code>document-v13.dtd</code>
-    </abstract> 
-  </header> 
-  <body> 
-    <note>
-      This is a demonstration document using all possible elements in the
-      current Apache Forrest xdocs <code>document-v13.dtd</code>
-      (See the <link href="#changes">DTD changes</link> section at the bottom.)
-    </note>
-    <section id="sample">
-      <title>Sample Content</title>
-      <p><strong>Hint:</strong> See the xml source to see how the various
-      elements are used and see the
-<!-- FOR-321 workaround
-      <link href="ext:dtd-docs">DTD reference documentation</link>.
--->
-      <link href="http://forrest.apache.org/docs/dtd-docs.html">DTD reference documentation</link>.
-      </p>
-      <section id="block-inline">
-        <title>Block and inline elements</title>
-      <p>This is a simple paragraph. Most documents contain a fair amount of
-        paragraphs. Paragraphs are called <code>&lt;p&gt;</code>.</p> 
-      <p xml:space="preserve"
-        >With the <code>&lt;p xml:space="preserve"&gt;</code> attribute, you can declare
-        that whitespace should    be   preserved, without implying it is in any other
-        way special.</p>
-      <p>
-        This next paragraph has a class attribute of 'quote'.  CSS can
-        be used to present this <code>&lt;p class='quote'&gt;</code> in
-        a different style than the other paragraphs.  The handling of
-        this quoted paragraph is defined in the &lt;extra-css&gt;
-        element in the skinconf.xml.
-      </p>
-      <p class="quote">
-        Anyway, like I was sayin', shrimp is the fruit of the sea. You can
-        barbecue it, boil it, broil it, bake it, sautee it. Dey's uh,
-        shrimp-kabobs, shrimp creole, shrimp gumbo. Pan fried, deep fried,
-        stir-fried. There's pineapple shrimp, lemon shrimp, coconut shrimp,
-        pepper shrimp, shrimp soup, shrimp stew, shrimp salad, shrimp and
-        potatoes, shrimp burger, shrimp sandwich. That- that's about it.
-      </p>
-      <p>A number of in-line elements are available in the DTD, we will show them
-        inside an unordered list (<code>&lt;ul&gt;</code>):</p> 
-      <ul> 
-        <li>Here is a simple list item (<code>&lt;li&gt;</code>).</li> 
-        <li>Have you seen the use of the <code>&lt;code&gt;</code> element in the
-          previous item?</li> 
-        <li>Also, we have <code>&lt;sub&gt;</code> and <code>&lt;sup&gt;</code>
-          elements to show content <sup>above</sup> or <sub>below</sub> the text
-          baseline.</li> 
-        <li>There is a facility to <em>emphasize</em> certain words using the
-          <code>&lt;em&gt;</code> <strong><code>&lt;strong&gt;</code></strong>
-          elements.</li> 
-        <li>We can use
-          <icon height="22" width="26" src="../images/icon.png" alt="feather"/>
-          <code>&lt;icon&gt;</code>s too.</li> 
-        <li>Another possibility is the <code>&lt;img&gt;</code> element:
-          <img src="../images/icon.png" alt="another feather" height="22" width="26"/>,
-          which offers the ability to refer to an image map.</li> 
-        <li>We have elements for hyperlinking: 
-          <dl> 
-            <dt><code>&lt;link href="faq.html"&gt;</code></dt> 
-            <dd>Use this to
-              <link href="faq.html" title="Example of a document via link">link</link>
-              to another document. As per normal, this will open the new document
-              in the same browser window.</dd> 
-
-            <dt><code>&lt;link href="#section"&gt;</code></dt> 
-            <dd>Use this to
-              <link href="#section" title="Example of a document via local anchor">link</link>
-              to the named anchor in the current document.
-            </dd> 
-
-            <dt><code>&lt;link href="faq.html#forrest"&gt;</code></dt> 
-            <dd>Use this to
-              <link href="faq.html#forrest" title="Example of a document via link and anchor">link</link>
-              to another document and go to the named anchor. This will open
-              the new document in the same browser window.
-            </dd> 
-
-            <dt><code>&lt;jump href="faq.html"&gt;</code></dt> 
-            <dd>Use this to
-              <jump href="faq.html" title="Example of a document via jump">jump</jump>
-              to another document and optionally go to a named
-              <jump href="faq.html#forrest" title="Example of a document via jump to anchor">anchor</jump>
-              within that document. This will open the new document in the same
-              browser window. So what is the difference between link and jump?
-              The jump behaves differently, in that it will replace any frames
-              in the current window.
-              This is the equivalent of
-              <code>&lt;a ... target="_top"&gt;</code>
-            </dd>
-
-            <dt><code>&lt;fork href="faq.html"&gt;</code></dt> 
-            <dd>Use this to
-              <fork href="faq.html" title="Example of a document via fork">fork</fork>
-              your webbrowser to another document. This will open the document
-              in a new, unnamed browser window.
-              This is the equivalent of
-              <code>&lt;a ... target="_blank"&gt;</code>
-            </dd> 
-        </dl></li> 
-
-        <li>Oh, by the way, a definition list <code>&lt;dl&gt;</code> was used inside
-          the previous list item. We could put another 
-          <ul> 
-            <li>unordered list</li> 
-            <li>inside the list item</li> 
-          </ul>
-          <table>
-            <caption>A sample nested table</caption>
-            <tr><td>Or even tables.. </td><td>
-                <table><tr><td>inside tables..</td></tr></table>
-            </td></tr>
-            <tr><td>or inside lists, but I believe this liberty gets quickly quite
-                hairy as you see.</td></tr>
-          </table>
-        </li>
-      </ul> 
-      <p>So far for the in-line elements, let's look at some paragraph-level
-        elements.</p> 
-      <fixme author="SN">The <code>&lt;fixme&gt;</code> element is used for stuff
-        which still needs work. Mind the <code>author</code> attribute!</fixme> 
-      <note>Use the <code>&lt;note&gt;</code> element to draw attention to something, e.g. ...The <code>&lt;code&gt;</code> element is used when the author can't
-        express himself clearly using normal sentences ;-)</note>
-      <warning>Sleep deprivation can be the result of being involved in an open
-        source project. (a.k.a. the <code>&lt;warning&gt;</code> element).
-      </warning>
-      <note label="Important">If you want your own labels for notes and
-        warnings, specify them using the <code>label</code> attribute.
-      </note>
-      <p>Apart from unordered lists, we have ordered lists too, of course.</p> 
-      <ol> 
-        <li>Item 1</li> 
-        <li>Item 2</li> 
-        <li>This should be 3 if my math is still OK.</li> 
-      </ol>
-      </section>
-
-      <section id="presentations">
-        <title>Various presentation formats</title>
-
-        <p>This sample document, written in document-v13 XML can be presented
-        via Forrest in a number of different formats. The links in the
-        following list show this document in each of the currently available
-        formats.</p>
-
-        <p>Each of the formats can be made available as a link near the top of
-        the page. Actual placement of those links depends on the skin
-        currently in use. Those links are enabled in the skinconf.xml via the
-        &#60;disable-XXX-link&#62; elements in the skinconf.xml</p>
-
-        <table>
-          <tr>
-            <th>Presentation Format</th>
-
-            <th>Description</th>
-
-            <th>skinconf.xml Element</th>
-          </tr>
-
-          <tr>
-            <td><link href="document-v13.html">HTML</link></td>
-
-            <td>This document in HTML format. </td>
-
-            <td>Always generated by default. Cannot be turned off.</td>
-          </tr>
-
-          <tr>
-            <td><link href="document-v13.xml">XML</link></td>
-
-            <td>This document in its raw XML format.</td>
-
-            <td>&#60;disable-xml-link&#62;. By default, set to true, meaning
-            that this link will not be shown.</td>
-          </tr>
-
-          <tr>
-            <td><link href="document-v13.pdf">PDF</link></td>
-
-            <td>This document as Adobe PDF</td>
-
-            <td>&#60;disable-pdf-link&#62;. By default, set to false, meaning
-            that this link will be shown.</td>
-          </tr>
-
-          <tr>
-            <td>Text</td>
-
-            <td><p>This document as straight text.</p>
-            <p>For additional information see the Forrest text-output
-            plugin.</p></td>
-
-            <td>&#60;disable-txt-link&#62;. By default, set to true, meaning
-            that this link will not be shown.</td>
-          </tr>
-
-          <tr>
-            <td>POD</td>
-
-            <td><p>This document as Perl POD (Plain Old Documentation). Text
-            with minimal formatting directives. If on a *nix system with perl
-            installed, see &#34;man perlpod&#34;.</p>
-            <p>For additional information see the Forrest pod-output
-            plugin.</p></td>
-
-            <td>&#60;disable-pod-link&#62;. By default, set to true, meaning
-            that this link will not be shown.</td>
-          </tr>
-        </table>
-      </section>
-      <section id="section"> 
-        <title>Using sections</title>
-        <p>You can use sections to put some structure in your document. For some
-          strange historical reason, the section title is an attribute of the
-          <code>&lt;section&gt;</code> element.</p> 
-      </section> 
-      <section id="sub-section">
-        <title>Sections, the sequel</title>
-        <p>Just some second section.</p> 
-        <section id="sub-sub-section">
-          <title>Section 2.1</title>
-          <p>Which contains a subsection (2.1).</p> 
-        </section> 
-      </section> 
-
-      <section id="source">
-        <title>Showing preformatted source code</title> 
-        <p>Enough about these sections. Let's have a look at more interesting
-          elements, <code>&lt;source&gt;</code> for instance:</p> 
-        <source>
-// This example is from the book _Java in a Nutshell_ by David Flanagan.
-// Written by David Flanagan.  Copyright (c) 1996 O'Reilly &amp; Associates.
-// You may study, use, modify, and distribute this example for any purpose.
-// This example is provided WITHOUT WARRANTY either expressed or implied.
-
-import java.applet.*;    // Don't forget these import statements!
-import java.awt.*;
-
-public class FirstApplet extends Applet {
-    // This method displays the applet.
-    // The Graphics class is how you do all drawing in Java.
-    public void paint(Graphics g) {
-        g.drawString("Hello World", 25, 50);
-    }
-}</source>
-        <p>CDATA sections are used within 
-          <code>&lt;source&gt;</code> elements so that you can write pointy
-           brackets without needing to escape them with messy
-          <code>&amp;lt;</code> entities ...
-        </p> 
-        <source><![CDATA[
-<pointy>
-  easy
-</pointy>
-]]></source>
-        <p>Please take care to still use a sensible line-length within your
-          source elements.</p>
-      </section>
-
-      <section id="table">
-        <title>Using tables</title>
-        <p>And now for a table:</p>
-        <table>
-          <caption>Table caption</caption>
-          <tr>
-            <th>heading cell 1</th>
-            <th>heading cell 2</th>
-            <th>heading cell 3</th>
-          </tr>
-          <tr>
-            <td>data cell</td>
-            <td colspan="2">this data cell spans two columns</td>
-          </tr>
-          <tr>
-            <td>
-              Tables can be nested:
-            </td>
-            <td>
-              <table>
-                <tr>
-                  <th>column 1</th>
-                  <th>column 2</th>
-                </tr> 
-                <tr>
-                  <td>cell A</td>
-                  <td>cell B</td>
-                </tr>
-              </table>
-            </td>
-            <td>
-              <ul><li>and can include most other elements</li><li>such as lists</li></ul>
-            </td>
-          </tr>
-        </table> 
-      </section>
-
-      <anchor id="second-figure-anchor"/>
-      <section id="figure"> 
-        <title>Using figures</title>
-        <p>And a <code>&lt;figure&gt;</code> to end all of this.
-          Note that this can also be implemented with an
-          <code>&lt;img&gt;</code> element.
-        </p>
-        <figure src="../images/project.png" alt="The fine Forrest logo" width="220" height="65"/>      
-      </section>
-    </section>
-
-    <section id="changes">
-      <title>DTD changes</title>
-      <p>See the generated
-<!-- FOR-321 workaround
-      <link href="ext:dtd-docs">DTD reference documentation</link>.
--->
-      <link href="http://forrest.apache.org/docs/dtd-docs.html">DTD reference documentation</link>.
-      </p>
-      <section id="changes-13">
-        <title>Changes since document-v12</title>
-        <p>
-          All v1.2 docs will work fine as v1.3 DTD. The main change is the
-          addition of a @class attribute to every element, which enables the
-          "extra-css" section in the skinconf to be put to good use.
-        </p>
-      </section>
-      <section id="changes-12">
-        <title>Changes since document-v11</title>
-        <p>
-          doc-v12 enhances doc-v11 by relaxing various restrictions that were
-          found to be unnecessary.
-        </p>
-        <ul>
-          <li>
-            Links ((link|jump|fork) and inline elements (br|img|icon|acronym) are
-            allowed inside title.
-          </li>
-          <li>
-            Paragraphs (p|source|note|warning|fixme), table and figure|anchor are
-            allowed inside li.
-          </li>
-          <li>
-            Paragraphs (p|source|note|warning|fixme), lists (ol|ul|dl), table,
-            figure|anchor are allowed inside definition lists (dd) and tables (td
-            and dh).
-          </li>
-          <li>
-            Inline content
-            (strong|em|code|sub|sup|br|img|icon|acronym|link|jump|fork) is
-            allowed in strong and em.
-          </li>
-        </ul>
-      </section>
-    </section>
-  </body> 
-  <footer> 
-    <legal>This is a legal notice, so it is <strong>important</strong>.</legal> 
-  </footer>
-</document>
diff --git a/crawler/kiss/docs/content/xdocs/samples/embedded_html.html b/crawler/kiss/docs/content/xdocs/samples/embedded_html.html
deleted file mode 100644 (file)
index 29b2d6a..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<html>
-<head>
-  <title>Embedded HTML demonstration page</title>
-</head>
-<body>
-
-<h1><a name="intro" />Embedded HTML demonstration page</h1>
-               
-<p>An HTML document is used as the source for this page, and translated
-to the intermediate Apache Forrest xdocs document structure. The sitemap then
-does the normal aggregation with the navigation content and application of
-the skin.
-</p>
-
-<p>
-The html is being interpreted by Forrest and transformed to the
-intermediate Apache xdocs document structure. That stylesheet cannot deal
-with every possibility in unstructured html, so it tries to guess how to
-build &lt;section&gt; elements and such.
-It needs &lt;h1&gt; (&lt;h2&gt; etc.) headings in the source html
-in order to identify sections. Patches are welcome to enhance
-that transformer.
-</p>
-
-<p>
-You can still take advantage of Forrest's
-<a href="http://forrest.apache.org/docs/linking.html">"<b>site:<b>"
-method of linking</a>, for example:
-<a href="site:index">&lt;a href="site:index"&gt;</a>
-</p>
-
-<hr>
-<note>XHTML can also be used, but it is just treated as interpreted
-html. Future versions of Forrest will take much more advantage of XHTML.
-</note>
-<hr>
-
-<h1><a name="examples" />Some example uses of HTML</h1>
-<p>
-There are situations when the Apache Forrest xdocs DTD is not sufficient.
-The use of embedded HTML enables you to use HTML code in these situations.
-</p>
-
-<h2><a name="js" />Embedded applets and Javascript</h2>
-      
-<p>
-See the
-<a href="javascript:alert('Opened with Javascript via the body of the source html.')">Javascript alert pop-up</a>
-</p>
-
-<h2><a name="forms" />HTML forms for user interaction</h2>
-<p>
-Search the Forrest website via Google:
-<!-- Search Google -->
-<form target="_blank" action="http://www.google.com/search" method="get">
-<input value="forrest.apache.org" name="as_sitesearch" type="hidden">
-<input type=hidden name=ie value=UTF-8>
-<input type=hidden name=oe value=UTF-8>
-<a href="http://www.google.com/">
-<img src="http://www.google.com/logos/Logo_40wht.gif" 
-border="0" alt="Google Search" align="middle" width="150" height="55"></a>
-<input type="text" name="as_q" size="25" maxlength="255" value="HTML">
-&nbsp;
-<input type="submit" name="btnG" value="Google Search">
-</form>
-<!-- Search Google -->
-</p>
-
-<p>
-See a demonstration of "html" and "html forms" with our 
-<a href="http://forrest.apache.org/mirrors.cgi">Forrest download mirror</a>
-facility and the
-<a href="http://forrest.apache.org/howto/howto-asf-mirror.html">explanation</a> howto document.
-</p>
-
-<h2><a name="invalid" />Invalid HTML</h2>
-<p>
-This paragraph has a missing closing tag for the &lt;p&gt; element. If you look
-at the <a href="embedded_html.xml">XML created by Forrest</a> you'll notice that 
-Forrest has fixed this.
-
-<h2>Potentially Invalid XDocs</h2>
-
-<warning>However, it should also be noted that the resultant XML is not a valid document
-since it contains the additional HTML elements. If you are intending to use
-the intermediate XDocs for any purpose be aware of this fact.</warning>
-
-<h2><a name="blink" />Other non-standard html-type abilities</h2>
-<p>
-Use other HTML <blink>delights (???) and tricks</blink>.
-</p>
-</body>
-</html>
diff --git a/crawler/kiss/docs/content/xdocs/samples/faq.xml b/crawler/kiss/docs/content/xdocs/samples/faq.xml
deleted file mode 100644 (file)
index 62b41ca..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE faqs PUBLIC "-//APACHE//DTD FAQ V2.0//EN" "http://forrest.apache.org/dtd/faq-v20.dtd">
-
-<faqs>
-  <title>Frequently Asked Questions</title>
-
-  <faqsection id="docs">
-    <title>Documentation</title>
-    <faq id="forrest">
-      <question>
-        How can I help write documentation?
-      </question>
-      <answer>
-        <p>
-          This project uses <a href="ext:forrest">Apache Forrest</a> to
-          generate documentation from XML.  Please download a copy of Forrest,
-          which can be used to <a
-            href="ext:forrest/validation">validate</a>, <a
-            href="ext:forrest/webapp">develop</a> and render a project site.
-        </p>
-      </answer>
-    </faq>
-    <!-- More faqs or parts here -->
-  </faqsection>
-  <!-- More faqs or parts here -->
-</faqs>
diff --git a/crawler/kiss/docs/content/xdocs/samples/hello-v10.dtd b/crawler/kiss/docs/content/xdocs/samples/hello-v10.dtd
deleted file mode 100644 (file)
index ee62644..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!-- ===================================================================
-
-     Apache Hello Document DTD (Version 1.1)
-
-PURPOSE:
-  This DTD was developed to create a sample of custom document.
-
-TYPICAL INVOCATION:
-
-  <!DOCTYPE greeting PUBLIC
-       "-//APACHE//DTD Hello Document Vx.y//EN"
-       "hello-vxy.dtd">
-
-  where
-
-    x := major version
-    y := minor version
-
-NOTES:
-
-FIXME:
-
-CHANGE HISTORY:
-[Version 1.0]
-  20050112 Initial version. (JJP)
-
-==================================================================== -->
-
-<!ELEMENT greeting (#PCDATA)>
-
-<!-- =============================================================== -->
-<!-- End of DTD -->
-<!-- =============================================================== -->
diff --git a/crawler/kiss/docs/content/xdocs/samples/helloAgain.pdf b/crawler/kiss/docs/content/xdocs/samples/helloAgain.pdf
deleted file mode 100644 (file)
index 5ca4f31..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-%PDF-1.3
-%ª«¬­
-4 0 obj
-<< /Type /Info
-/Producer (FOP 0.20.4) >>
-endobj
-5 0 obj
-<< /Length 203 /Filter [ /ASCII85Decode /FlateDecode ]
- >>
-stream
-Gar'!]afWZ&;9q-MRA)RFnblL2&]tQSZsjOOT[ck2SQkp(bfQ[R7ZPq=U24c0dqq_i?B[A.0s\)5f5<IA'lb0eeo`C+`q\Ip/Tke*)7%T+.hT8:QQidXoPLKZM,RXY"bP+;E@%,ZX;V'Aq+M9rH"!g=N5TToDMoqMeUiEe).I_W3q80:jF+;'9bVIeBRb]DhE9:E2be2~>
-endstream
-endobj
-6 0 obj
-<< /Type /Page
-/Parent 1 0 R
-/MediaBox [ 0 0 595 842 ]
-/Resources 3 0 R
-/Contents 5 0 R
->>
-endobj
-7 0 obj
-<< /Type /Font
-/Subtype /Type1
-/Name /F1
-/BaseFont /Helvetica
-/Encoding /WinAnsiEncoding >>
-endobj
-8 0 obj
-<< /Type /Font
-/Subtype /Type1
-/Name /F5
-/BaseFont /Times-Roman
-/Encoding /WinAnsiEncoding >>
-endobj
-1 0 obj
-<< /Type /Pages
-/Count 1
-/Kids [6 0 R ] >>
-endobj
-2 0 obj
-<< /Type /Catalog
-/Pages 1 0 R
- >>
-endobj
-3 0 obj
-<< 
-/Font << /F1 7 0 R /F5 8 0 R >> 
-/ProcSet [ /PDF /ImageC /Text ] >> 
-endobj
-xref
-0 9
-0000000000 65535 f 
-0000000687 00000 n 
-0000000745 00000 n 
-0000000795 00000 n 
-0000000015 00000 n 
-0000000071 00000 n 
-0000000365 00000 n 
-0000000471 00000 n 
-0000000578 00000 n 
-trailer
-<<
-/Size 9
-/Root 2 0 R
-/Info 4 0 R
->>
-startxref
-883
-%%EOF
diff --git a/crawler/kiss/docs/content/xdocs/samples/index.xml b/crawler/kiss/docs/content/xdocs/samples/index.xml
deleted file mode 100644 (file)
index 41f7ac5..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
-<document> 
-  <header> 
-    <title>Samples</title> 
-  </header> 
-  <body> 
-    <section id="please-contribute">
-      <title>If something goes wrong..</title>
-      <p>Patches are welcome: <a href="http://forrest.apache.org/docs/faq.html">Forrest FAQ</a></p>
-    </section>
-  </body>
-</document>
diff --git a/crawler/kiss/docs/content/xdocs/samples/linking.xml b/crawler/kiss/docs/content/xdocs/samples/linking.xml
deleted file mode 100644 (file)
index 31b82af..0000000
+++ /dev/null
@@ -1,353 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://apache.org/forrest/dtd/document-v20.dtd">
-<document>
-  <header>
-    <title>Demonstration of linking</title>
-  </header>
-
-  <body>
-    <section id="overview">
-      <title>Overview</title>
-      <p>Forrest has many powerful techniques for linking between documents
-      and for managing the site navigation. This document demonstrates those
-      techniques.
-      The document "<a href="ext:linking">Menus and Linking</a>" 
-      has the full details.
-      </p>
-    </section>
-
-    <section id="uri-space">
-      <title>Building and maintaining consistent URI space</title>
-      <p>
-      When Forrest builds your site, it starts from the front page. Like
-      a robot, it traverses all of the links that it finds in the documents
-      and builds the corresponding pages. Any new links are further traversed.
-      </p>
-      <p>
-      Sometimes those links lead to documents that are generated directly
-      from xml source files, sometimes they are generated from other source
-      via an intermediate xml format. Other times the links lead to raw
-      un-processed content.
-      </p>
-      <p>
-       The site navigation configuration file "<code>site.xml</code>" provides
-       a way to manage this URI space. In the future, when documents are
-       re-arranged and renamed, the site.xml configuration will enable this
-       smoothly.
-      </p>
-    </section>
-
-    <section id="resource-space">
-      <title>Mapping the local resource space to the final URI space</title>
-      <p>
-       For both generated and raw (un-processed) files, the top-level of the
-       URI space corresponds to the "<code>content/xdocs/</code>" directory,
-       i.e. the location of the "<code>site.xml</code>" configuration file.
-      </p>
-      <note>
-        In versions prior to 0.7 raw un-processed content was stored in
-        the "<code>content/</code>" directory. In 0.7 onwards, raw
-        un-processed data is stored alongside the xdocs. In addition,
-        in 0.6 and earlier, HTML documents could be stored in the xdocs
-        directory and served without processing. If you 
-        you wish to emulate the behaviour of 0.6 and earlier see the 
-        next section.
-      </note>
-      <p>
-        A diagram will help.
-      </p>
-      <source><![CDATA[
-The resource space          ==============>    The final URI space
-------------------                             -------------------
-Generated content ...
- content/xdocs/index.xml                       index.html
- content/xdocs/samples/index.xml               samples/index.html
- content/xdocs/samples/faq.xml                 samples/faq.html
- content/xdocs/test1.html                      test1.html
- content/xdocs/samples/test3.html              samples/test3.html
- content/xdocs/samples/subdir/test4.html       samples/subdir/test4.html
-
-Raw un-processed content ...
- content/xdocs/hello.pdf                       hello.pdf
- content/xdocs/hello.sxw                       hello.sxw
- content/xdocs/subdir/hello.sxw                subdir/hello.sxw
-]]></source>
-
-  <section>
-    <title>How Plugins May Affect The URI Space</title>
-      <p>By using <a href="site:plugins">Forrest Input Plugins</a>
-      you can process some file formats, such as
-      OpenOffice.org documents and produce processed content from them. For example,
-      the file <code>content/xdocs/hello.sxw</code> can be used to produce a 
-      skinned version of the document at with the name <code>hello.html</code>.
-      Similarly, you can use <a href="site:plugins">Forrest Output 
-      Plugins</a> to create different output formats such as PDF, in this 
-      case <code>content/xdocs/hello.sxw</code> can produce 
-      <code>hello.pdf</code>.</p>
-      
-      <p>However, this does not affect the handling of raw content. That is, you 
-      can still retrieve the raw un-processed version with, for example, 
-      <code>hello.sxw</code>. If you want to prevent the user retrieving the 
-      un-processed version you will have to create matchers that intercept
-      these requests within your project sitemap.</p>
-      </section>
-  
-    </section>
-
-    <section id="generated">
-      <title>Basic link to internal generated pages</title>
-      <p>
-      When this type of link is encountered, Forrest will look for a
-      corresponding xml file, relative to this document (i.e. in
-      <code>content/xdocs/samples/</code>).
-      </p>
-      <p>A generated document in the current directory, which corresponds to
-      <code>content/xdocs/samples/sample.html</code> ...
-      </p>
-      <source><![CDATA[<a href="sample.html">]]><a href="sample.html">sample.html</a><![CDATA[</a>]]></source>
-      <p>In a sub-directory, which corresponds to
-      <code>content/xdocs/samples/subdir/index.html</code> ...
-      </p>
-      <source><![CDATA[<a href="subdir/index.html">]]><a href="subdir/index.html">subdir/index.html</a><![CDATA[</a>]]></source>
-    </section>
-
-    <section id="raw">
-      <title>Basic link to raw un-processed content</title>
-      <p>
-      Raw content files are not intended for any processing, they are just
-      linked to (e.g. pre-prepared PDFs, zip archives).
-      These files are placed alongside your normal content in the 
-      "<code>content/xdocs</code>" directory.
-      </p>
-      <p>A raw document in the current directory, which corresponds to
-      <code>content/xdocs/samples/helloAgain.pdf</code> ...
-      </p>
-      <source><![CDATA[<a href="helloAgain.pdf">]]><a href="helloAgain.pdf">helloAgain.pdf</a><![CDATA[</a>]]></source>
-      <p>A raw document in a sub-directory, which corresponds to 
-      <code>content/xdocs/samples/subdir/hello.zip</code> ...
-      </p>
-      <source><![CDATA[<a href="subdir/hello.zip">]]><a href="subdir/hello.zip">subdir/hello.zip</a><![CDATA[</a>]]></source>
-      <p>A raw document at the next level up, which corresponds to 
-      <code>content/hello.pdf</code> ...
-      </p>
-      <source><![CDATA[<a href="../hello.pdf">]]><a href="../hello.pdf">../hello.pdf</a><![CDATA[</a>]]></source>
-      
-      <section>
-        <title>Serving (X)HTML content without Skinning</title>
-        
-        <p>Prior to version 0.7, the raw un-processed content was stored in
-        the "<code>content/</code>" directory. In 0.7 onwards, raw
-        un-processed data is stored alongside the xdocs. In addition
-        in 0.6 and earlier, HTML files could be stored in the xdocs 
-        directory and they would be served without further processing.
-        As described above, this is not the case in 0.7 where HTML files
-        are, by default, skinned by Forrest.</p>
-        
-        <p>If you 
-        you wish to emulate the behaviour of 0.6 and earlier then you
-        must add the following to your project sitemap.</p>
-        
-        <source>
-&lt;map:match pattern="**.html"&gt;
- &lt;map:select type="exists"&gt;
-  &lt;map:when test="{project:content}{0}"&gt;
-    &lt;map:read src="{project:content}/{0}" mime-type="text/html"/&gt;
-    &lt;!--
-      Use this instead if you want JTidy to clean up your HTML
-      &lt;map:generate type="html" src="{project:content}/{0}" /&gt;
-      &lt;map:serialize type="html"/&gt;
-    --&gt;
-  &lt;/map:when&gt;
-  &lt;map:when test="{project:content.xdocs}{0}"&gt;
-    &lt;map:read src="{project:content.xdocs}/{0}" mime-type="text/html"/&gt;
-    &lt;!--
-      Use this instead if you want JTidy to clean up your HTML
-      &lt;map:generate type="html" src="{project:content.xdocs}/{0}" /&gt;
-      &lt;map:serialize type="html"/&gt;
-    --&gt;
-  &lt;/map:when&gt;
- &lt;/map:select&gt;
-&lt;/map:match&gt;
-        </source>
-        
-        <p>The above allows us to create links to un-processed skinned files stored
-        in the <code>{project:content}</code> or <code>{project:content.xdocs}</code> 
-        directory. For example:  
-        &lt;a href="/test1.html"&gt;HTML content&lt;/a&gt;. However, it will
-        break the 0.7 behaviour of skinning HTML content. For this reason the old
-        ".ehtml" extension can be used to embed HTML content in a Forrest skinned
-        site </p>
-                
-        <p>Note that you can change the matchers above to selectively serve some
-        content as raw un-processed content, whilst still serving other content
-        as skinned documents. For example, the following snippet would allow
-        you to serve the content of an old, deprecated site without processing
-        from Forrest, whilst still allowing all other content to be processed 
-        by Forrest in the normal way:</p>
-        
-        <source>
-&lt;map:match pattern="old_site/**.html"&gt;
- &lt;map:select type="exists"&gt;
-  &lt;map:when test="{project:content}{1}.html"&gt;
-    &lt;map:read src="{project:content}/{1}.html" mime-type="text/html"/&gt;
-    &lt;!--
-      Use this instead if you want JTidy to clean up your HTML
-      &lt;map:generate type="html" src="{project:content}/{0}" /&gt;
-      &lt;map:serialize type="html"/&gt;
-    --&gt;
-  &lt;/map:when&gt;
-&lt;/map:match&gt;
-        </source>
-        
-        <p>For example, <a href="/old_site/test1.html">HTML content</a>.</p>
-      </section>
-    </section>
-
-    <section id="url">
-      <title>Full URL to external documents</title>
-      <p>A full URL ...</p>
-      <source><![CDATA[<a href="http://forrest.apache.org/">]]><a href="http://forrest.apache.org/">http://forrest.apache.org/</a><![CDATA[</a>]]></source>
-      <p>A full URL with a fragment identifier ...</p>
-      <source><![CDATA[<a href="http://forrest.apache.org/faq.html#link_raw">]]><a href="http://forrest.apache.org/faq.html#link_raw">http://forrest.apache.org/faq.html#link_raw</a><![CDATA[</a>]]></source>
-      <p>
-      Note that Forrest does not traverse external links to look for
-      other links.
-      </p>
-    </section>
-
-    <section id="site">
-      <title>Using site.xml to manage the links</title>
-      <p>As you will have discovered, using pathnames with ../../ etc. will
-      get very nasty. Real problems occur when you use a smart text editor
-      that tries to manage the links for you. For example, it will have
-      trouble linking to the raw content files which are not yet in their
-      final location.
-      </p>
-      <p>
-      Links and filenames are bound to change and re-arrange. It is
-      essential to only change those links in one central place, not in every
-      document.
-      </p>
-      <p>
-      The "<code>site.xml</code>" configuration file to the rescue. It maps
-      symbolic names to actual resources.
-      </p>
-
-      <section id="site-simple">
-        <title>Basic link to internal generated pages</title>
-        <p>This single entry ...</p>
-        <source><![CDATA[<index label="Index" href="index.html"/>]]></source>
-        <p>
-        enables a simple link to a generated document, which corresponds to 
-        <code>content/xdocs/index.xml</code> ...
-        </p>
-        <source><![CDATA[<a href="site:index">]]><a href="site:index">site:index</a><![CDATA[</a>]]></source>
-      </section>
-
-      <section id="site-compound">
-        <title>Group some items</title>
-        <p>This compound entry ...</p>
-        <source><![CDATA[
-  <samples label="Samples" href="samples/" tab="samples">
-    <faq label="FAQ" href="faq.html"/>
-    ...
-  </samples>
-]]></source>
-        <p>
-        enables a link to a generated document, which corresponds to 
-        <code>content/xdocs/samples/index.xml</code> ...
-        </p>
-        <source><![CDATA[<a href="site:samples">]]><a href="site:samples">site:samples</a><![CDATA[</a>]]></source>
-        <p>
-        and a link to a generated document, which corresponds to 
-        <code>content/xdocs/samples/faq.xml</code> ...
-        </p>
-        <source>
-<![CDATA[<a href="site:faq">]]><a href="site:faq">site:faq</a><![CDATA[</a>]]>
-which can also be a complete reference
-<![CDATA[<a href="site:samples/faq">]]><a href="site:samples/faq">site:samples/faq</a><![CDATA[</a>]]>
-        </source>
-      </section>
-
-      <section id="site-fragment">
-        <title>Fragment identifiers</title>
-        <p>This compound entry ...</p>
-        <source><![CDATA[
-  <samples label="Samples" href="samples/" tab="samples">
-    <sample label="Apache document" href="sample.html">
-      <top href="#top"/>
-      <section href="#section"/>
-    </sample>
-    ...
-  </samples>
-]]></source>
-        <p>
-        enables a link to a fragment identifier within the
-        <code>samples/sample.html</code> document ...
-        </p>
-        <source><![CDATA[<a href="site:samples/sample/section">]]><a href="site:samples/sample/section">site:samples/sample/section</a><![CDATA[</a>]]></source>
-      </section>
-
-      <section id="site-raw">
-        <title>Define items for raw content</title>
-        <p>This entry ...</p>
-        <source><![CDATA[<hello_print href="hello.pdf"/>]]></source>
-        <p>
-        enables a link to a raw document, which corresponds to 
-        <code>content/hello.pdf</code> ...
-        </p>
-        <source><![CDATA[<a href="site:hello_print">]]><a href="site:hello_print">site:hello_print</a><![CDATA[</a>]]></source>
-
-      </section>
-
-      <section id="site-ext">
-        <title>External links</title>
-        <p>This compound entry ...</p>
-        <source><![CDATA[
-  <external-refs>
-    <forrest href="http://forrest.apache.org/">
-      <linking href="docs/linking.html"/>
-      <webapp href="docs/your-project.html#webapp"/>
-    </forrest>
-  </external-refs>
-]]></source>
-        <p>
-        enables a link to an external URL ...
-        </p>
-        <source><![CDATA[<a href="ext:forrest">]]><a href="ext:forrest">ext:forrest</a><![CDATA[</a>]]></source>
-        <p>
-        and a link to another external URL ...
-        </p>
-        <source>
-<![CDATA[<a href="ext:linking">]]><a href="ext:linking">ext:linking</a><![CDATA[</a>]]>
-which can also be a complete reference
-<![CDATA[<a href="ext:forrest/linking">]]><a href="ext:forrest/linking">ext:forrest/linking</a><![CDATA[</a>]]>
-        </source>
-        <p>
-        and a link to another external URL with a fragment identifier ...
-        </p>
-        <source>
-<![CDATA[<a href="ext:webapp">]]><a href="ext:webapp">ext:webapp</a><![CDATA[</a>]]>
-which can also be a complete reference
-<![CDATA[<a href="ext:forrest/webapp">]]><a href="ext:forrest/webapp">ext:forrest/webapp</a><![CDATA[</a>]]>
-        </source>
-      </section>
-    </section>
-  </body>
-</document>
diff --git a/crawler/kiss/docs/content/xdocs/samples/sample.xml b/crawler/kiss/docs/content/xdocs/samples/sample.xml
deleted file mode 100644 (file)
index 52774f7..0000000
+++ /dev/null
@@ -1,407 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
-<document> 
-  <header> 
-    <title>The Apache Forrest xdocs document-v2.0 DTD</title> 
-    <notice>The content of this document doesn't make any sense at all.</notice>
-    <abstract>This is a demonstration document using all possible elements in
-      the current Apache Forrest xdocs <code>document-v20.dtd</code>
-    </abstract> 
-  </header> 
-  <body> 
-    <note>
-      This is a demonstration document using all possible elements in the
-      current Apache Forrest xdocs <code>document-v20.dtd</code>
-      (See the <a href="#changes">DTD changes</a> section at the bottom.)
-    </note>
-    <section id="sample">
-      <title>Sample Content</title>
-      <p><strong>Hint:</strong> See the xml source to see how the various
-      elements are used and see the
-<!-- FOR-321 workaround
-      <a href="ext:dtd-docs">DTD reference documentation</a>.
--->
-      <a href="http://forrest.apache.org/docs/dtd-docs.html">DTD reference documentation</a>.
-      </p>
-      <section id="block-inline">
-        <title>Block and inline elements</title>
-      <p>This is a simple paragraph. Most documents contain a fair amount of
-        paragraphs. Paragraphs are called <code>&lt;p&gt;</code>.</p> 
-      <p xml:space="preserve"
-        >With the <code>&lt;p xml:space="preserve"&gt;</code> attribute, you can declare
-        that whitespace should    be   preserved, without implying it is in any other
-        way special.</p>
-      <p>
-        This next paragraph has a class attribute of 'quote'.  CSS can
-        be used to present this <code>&lt;p class='quote'&gt;</code> in
-        a different style than the other paragraphs.  The handling of
-        this quoted paragraph is defined in the &lt;extra-css&gt;
-        element in the skinconf.xml.
-      </p>
-      <p class="quote">
-        Anyway, like I was sayin', shrimp is the fruit of the sea. You can
-        barbecue it, boil it, broil it, bake it, sautee it. Dey's uh,
-        shrimp-kabobs, shrimp creole, shrimp gumbo. Pan fried, deep fried,
-        stir-fried. There's pineapple shrimp, lemon shrimp, coconut shrimp,
-        pepper shrimp, shrimp soup, shrimp stew, shrimp salad, shrimp and
-        potatoes, shrimp burger, shrimp sandwich. That- that's about it.
-      </p>
-      <p>A number of in-line elements are available in the DTD, we will show them
-        inside an unordered list (<code>&lt;ul&gt;</code>):</p> 
-      <ul> 
-        <li>Here is a simple list item (<code>&lt;li&gt;</code>).</li> 
-        <li>Have you seen the use of the <code>&lt;code&gt;</code> element in the
-          previous item?</li> 
-        <li>Also, we have <code>&lt;sub&gt;</code> and <code>&lt;sup&gt;</code>
-          elements to show content <sup>above</sup> or <sub>below</sub> the text
-          baseline.</li> 
-        <li>There is a facility to <em>emphasize</em> certain words using the
-          <code>&lt;em&gt;</code> <strong><code>&lt;strong&gt;</code></strong>
-          elements.</li> 
-        <li>We can use
-          <icon height="22" width="26" src="../images/icon.png" alt="feather"/>
-          <code>&lt;icon&gt;</code>s too.</li> 
-        <li>Another possibility is the <code>&lt;img&gt;</code> element:
-          <img src="../images/icon.png" alt="another feather" height="22" width="26"/>,
-          which offers the ability to refer to an image map.</li> 
-        <li>We have elements for hyperlinking: 
-          <dl> 
-            <dt><code>&lt;a href="faq.html"&gt;</code></dt> 
-            <dd>Use this to
-              <a href="faq.html" title="Example of a document via link">link</a>
-              to another document. As per normal, this will open the new document
-              in the same browser window.</dd> 
-
-            <dt><code>&lt;a href="#section"&gt;</code></dt> 
-            <dd>Use this to
-              <a href="#section" title="Example of a document via local anchor">link</a>
-              to the named anchor in the current document.
-            </dd> 
-
-            <dt><code>&lt;a href="faq.html#forrest"&gt;</code></dt> 
-            <dd>Use this to
-              <a href="faq.html#forrest" title="Example of a document via link and anchor">link</a>
-              to another document and go to the named anchor. This will open
-              the new document in the same browser window.
-            </dd> 
-            <dt>Targetted window control with jump and fork.</dt> 
-            <dd>See demonstration
-             <a href="#link-class">using class attribute on links</a>.
-            </dd> 
-        </dl></li> 
-
-        <li>Oh, by the way, a definition list <code>&lt;dl&gt;</code> was used inside
-          the previous list item. We could put another 
-          <ul> 
-            <li>unordered list</li> 
-            <li>inside the list item</li> 
-          </ul>
-          <table>
-            <caption>A sample nested table</caption>
-            <tr><td>Or even tables.. </td><td>
-                <table><tr><td>inside tables..</td></tr></table>
-            </td></tr>
-            <tr><td>or inside lists, but I believe this liberty gets quickly quite
-                hairy as you see.</td></tr>
-          </table>
-        </li>
-      </ul> 
-      <p>So far for the in-line elements, let's look at some paragraph-level
-        elements.</p> 
-      <fixme author="SN">The <code>&lt;fixme&gt;</code> element is used for stuff
-        which still needs work. Mind the <code>author</code> attribute!</fixme> 
-      <note>Use the <code>&lt;note&gt;</code> element to draw attention to something, e.g. ...The <code>&lt;code&gt;</code> element is used when the author can't
-        express himself clearly using normal sentences ;-)</note>
-      <warning>Sleep deprivation can be the result of being involved in an open
-        source project. (a.k.a. the <code>&lt;warning&gt;</code> element).
-      </warning>
-      <note label="Important">If you want your own labels for notes and
-        warnings, specify them using the <code>label</code> attribute.
-      </note>
-      <p>Apart from unordered lists, we have ordered lists too, of course.</p> 
-      <ol> 
-        <li>Item 1</li> 
-        <li>Item 2</li> 
-        <li>This should be 3 if my math is still OK.</li> 
-      </ol>
-      </section>
-
-      <section id="presentations">
-        <title>Various presentation formats</title>
-
-        <p>This sample document, written in document-v20 XML can be presented
-        via Forrest in a number of different formats. The links in the
-        following list show this document in each of the currently available
-        formats.</p>
-
-        <p>Each of the formats can be made available as a link near the top of
-        the page. Actual placement of those links depends on the skin
-        currently in use. Those links are enabled in the skinconf.xml via the
-        &#60;disable-XXX-link&#62; elements in the skinconf.xml</p>
-
-        <table>
-          <tr>
-            <th>Presentation Format</th>
-
-            <th>Description</th>
-
-            <th>skinconf.xml Element</th>
-          </tr>
-
-          <tr>
-            <td><a href="sample.html">HTML</a></td>
-
-            <td>This document in HTML format. </td>
-
-            <td>Always generated by default. Cannot be turned off.</td>
-          </tr>
-
-          <tr>
-            <td><a href="sample.xml">XML</a></td>
-
-            <td>This document in its raw XML format.</td>
-
-            <td>&#60;disable-xml-link&#62;. By default, set to true, meaning
-            that this link will not be shown.</td>
-          </tr>
-
-          <tr>
-            <td><a href="sample.pdf">PDF</a></td>
-
-            <td>This document as Adobe PDF</td>
-
-            <td>&#60;disable-pdf-link&#62;. By default, set to false, meaning
-            that this link will be shown.</td>
-          </tr>
-
-          <tr>
-            <td>Text</td>
-
-            <td><p>This document as straight text.</p>
-            <p>For additional information see the Forrest text-output
-            plugin.</p></td>
-
-            <td>&#60;disable-txt-link&#62;. By default, set to true, meaning
-            that this link will not be shown.</td>
-          </tr>
-
-          <tr>
-            <td>POD</td>
-
-            <td><p>This document as Perl POD (Plain Old Documentation). Text
-            with minimal formatting directives. If on a *nix system with perl
-            installed, see &#34;man perlpod&#34;.</p>
-            <p>For additional information see the Forrest pod-output
-            plugin.</p></td>
-
-            <td>&#60;disable-pod-link&#62;. By default, set to true, meaning
-            that this link will not be shown.</td>
-          </tr>
-        </table>
-      </section>
-      <section id="section"> 
-        <title>Using sections</title>
-        <p>You can use sections to put some structure in your document. For some
-          strange historical reason, the section title is an attribute of the
-          <code>&lt;section&gt;</code> element.</p> 
-      </section> 
-      <section id="sub-section">
-        <title>Sections, the sequel</title>
-        <p>Just some second section.</p> 
-        <section id="sub-sub-section">
-          <title>Section 2.1</title>
-          <p>Which contains a subsection (2.1).</p> 
-        </section> 
-      </section> 
-
-      <section id="source">
-        <title>Showing preformatted source code</title> 
-        <p>Enough about these sections. Let's have a look at more interesting
-          elements, <code>&lt;source&gt;</code> for instance:</p> 
-        <source>
-// This example is from the book _Java in a Nutshell_ by David Flanagan.
-// Written by David Flanagan.  Copyright (c) 1996 O'Reilly &amp; Associates.
-// You may study, use, modify, and distribute this example for any purpose.
-// This example is provided WITHOUT WARRANTY either expressed or implied.
-
-import java.applet.*;    // Don't forget these import statements!
-import java.awt.*;
-
-public class FirstApplet extends Applet {
-    // This method displays the applet.
-    // The Graphics class is how you do all drawing in Java.
-    public void paint(Graphics g) {
-        g.drawString("Hello World", 25, 50);
-    }
-}</source>
-        <p>CDATA sections are used within 
-          <code>&lt;source&gt;</code> elements so that you can write pointy
-           brackets without needing to escape them with messy
-          <code>&amp;lt;</code> entities ...
-        </p> 
-        <source><![CDATA[
-<pointy>
-  easy
-</pointy>
-]]></source>
-        <p>Please take care to still use a sensible line-length within your
-          source elements.</p>
-      </section>
-
-      <section id="table">
-        <title>Using tables</title>
-        <p>And now for a table:</p>
-        <table>
-          <caption>Table caption</caption>
-          <tr>
-            <th>heading cell 1</th>
-            <th>heading cell 2</th>
-            <th>heading cell 3</th>
-          </tr>
-          <tr>
-            <td>data cell</td>
-            <td colspan="2">this data cell spans two columns</td>
-          </tr>
-          <tr>
-            <td>
-              Tables can be nested:
-            </td>
-            <td>
-              <table>
-                <tr>
-                  <th>column 1</th>
-                  <th>column 2</th>
-                </tr> 
-                <tr>
-                  <td>cell A</td>
-                  <td>cell B</td>
-                </tr>
-              </table>
-            </td>
-            <td>
-              <ul><li>and can include most other elements</li><li>such as lists</li></ul>
-            </td>
-          </tr>
-        </table> 
-      </section>
-
-      <anchor id="second-figure-anchor"/>
-      <section id="figure"> 
-        <title>Using figures</title>
-        <p>And a <code>&lt;figure&gt;</code> to end all of this.
-          Note that this can also be implemented with an
-          <code>&lt;img&gt;</code> element.
-        </p>
-        <figure src="../images/project.png" alt="The fine Forrest logo" width="220" height="65"/>      
-      </section>
-      <section id="link-class">
-        <title>Using class attribute on links</title>
-
-        <p>The document-v13 had elements &lt;fork&gt; and &lt;jump&gt;. In
-        document-v20, those elements no longer exist but the functionality can
-        be duplicated by using the @class attribute.
-        Even though the opening of separate windows should be under the
-        control of the user, these techniques can still be employed.</p>
-
-        <table>
-          <tr>
-            <th><p>Document V1.3</p></th>
-
-            <th><p>Document V2.0</p></th>
-          </tr>
-
-          <tr>
-            <td><p>&lt;fork href="faq.html"&gt;</p></td>
-
-            <td><a class="fork" href="faq.html">&lt;a class="fork"
-            href="faq.html"&gt;</a></td>
-          </tr>
-
-          <tr>
-            <td><p>&lt;jump href="faq.html"&gt;</p></td>
-
-            <td><p><a class="jump" href="faq.html">&lt;a class="jump"
-            href="faq.html"&gt;</a></p></td>
-          </tr>
-        </table>
-      </section>
-    </section>
-
-    <section id="changes">
-      <title>DTD changes</title>
-      <p>See the generated
-<!-- FOR-321 workaround
-      <a href="ext:dtd-docs">DTD reference documentation</a>.
--->
-      <a href="http://forrest.apache.org/docs/dtd-docs.html">DTD reference documentation</a>.
-      </p>
-      <section id="changes-20">
-        <title>Changes between document-v13 and document-v20</title>
-        <ul>
-          <li>Renamed <strong>&lt;link&gt;</strong>
-             to <strong>&lt;a&gt;</strong>
-          </li>
-          <li>Removed <strong>&lt;fork&gt;</strong>
-             and <strong>&lt;jump&gt;</strong> in favour of the
-             <strong>&lt;a&gt;</strong> element. See demonstration
-             <a href="#link-class">using class attribute on links</a>.
-          </li>
-        </ul>
-      </section>
-      <section id="changes-13">
-        <title>Changes between document-v12 and document-v13</title>
-        <p>
-          All v1.2 docs will work fine as v1.3 DTD. The main change is the
-          addition of a @class attribute to every element, which enables the
-          "extra-css" section in the skinconf to be put to good use.
-        </p>
-      </section>
-      <section id="changes-12">
-        <title>Changes between document-v11 and document-v12</title>
-        <p>
-          doc-v12 enhances doc-v11 by relaxing various restrictions that were
-          found to be unnecessary.
-        </p>
-        <ul>
-          <li>
-            Links ((link|jump|fork) and inline elements (br|img|icon|acronym) are
-            allowed inside title.
-          </li>
-          <li>
-            Paragraphs (p|source|note|warning|fixme), table and figure|anchor are
-            allowed inside li.
-          </li>
-          <li>
-            Paragraphs (p|source|note|warning|fixme), lists (ol|ul|dl), table,
-            figure|anchor are allowed inside definition lists (dd) and tables (td
-            and dh).
-          </li>
-          <li>
-            Inline content
-            (strong|em|code|sub|sup|br|img|icon|acronym|link|jump|fork) is
-            allowed in strong and em.
-          </li>
-        </ul>
-      </section>
-    </section>
-  </body> 
-  <footer> 
-    <legal>This is a legal notice, so it is <strong>important</strong>.</legal> 
-  </footer>
-</document>
diff --git a/crawler/kiss/docs/content/xdocs/samples/static.xml b/crawler/kiss/docs/content/xdocs/samples/static.xml
deleted file mode 100644 (file)
index 9553525..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
-<document> 
-  <header> 
-    <title>Static content - including raw un-processed files and documents</title> 
-  </header> 
-  <body> 
-    <section>
-      <title>Linking to static content</title>
-      <p>
-        You can place some types of raw content into the xdocs directory. For example,
-        you can place a PDF file in <code>src/documentation/content/xdocs</code> and link
-        to it normally, 
-        <strong>&lt;a href="../hello.pdf"&gt;</strong><a href="../hello.pdf">hello.pdf</a><strong>&lt;/a&gt;</strong>
-        However, note that if the file is one that Forrest is able to process, for example
-        an HTML file, these files will be processed accordingly.</p>
-      
-      <p>
-        It is also worth noting that files in the xdocs directory will only be copied 
-        into your final site if there is a link to them somewhere in the site. See the next
-        section for details of how to include content that is not linked.</p>
-        
-      <p>
-        For more information see the
-        <a href="site:linking">Linking demonstration</a>.</p>
-    </section>
-    
-    <section>
-      <title>Including Static Content that is Not Linked</title>
-      
-      <p>
-        You can include raw HTML, PDFs, plain-text, and other files. In your final site by
-        placing them in the <code>src/documentation/content</code> directory. Files in this
-        directory will be copied over automatically but will not be processed in any way by
-        Forrest, that is they will be linked to as raw files.</p>
-        
-      <p>
-        You can also have sub-directories such as 
-        <code>src/documentation/content/samples/subdir/</code> which
-        reflects your main
-        <code>xdocs/</code> tree. The raw files will then end up
-        beside your documents.
-      </p>
-    </section>
-  </body>
-</document>
diff --git a/crawler/kiss/docs/content/xdocs/samples/subdir/book-sample.xml b/crawler/kiss/docs/content/xdocs/samples/subdir/book-sample.xml
deleted file mode 100644 (file)
index f5396c6..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE book PUBLIC "-//APACHE//DTD Cocoon Documentation Book V1.0//EN" "http://forrest.apache.org/dtd/book-cocoon-v10.dtd">
-
-<!-- Sample book.xml file.  If this file is renamed to 'book.xml', it will be
-used to define the menu in this subdirectory, instead of that generated from
-the usual site.xml mechanism. The normal relative and absolute hrefs are also
-available. -->
-
-<book software="MyProj"
-  title="MyProj"
-  copyright="@year@ The Apache Software Foundation"
-  xmlns:xlink="http://www.w3.org/1999/xlink">
-
-  <menu label="About">
-    <!-- using the normal site.xml linking mechanism -->
-    <menu-item label="Index" href="site:index"/>
-    <!-- using relative URIs with relative path -->
-    <menu-item label="Sample page" href="../sample.html"/>
-    <!-- using relative URIs with absolute path -->
-    <menu-item label="Sample ihtml page" href="/samples/ihtml-sample.html"/>
-    <!-- using the normal site.xml linking mechanism -->
-    <menu-item label="FAQ" href="site:faq"/>
-    <menu-item label="Changes" href="site:changes"/>
-    <menu-item label="Todo" href="site:todo"/>
-  </menu>
-
-  <menu label="Subdir">
-    <menu-item label="index" href="site:subdir/index"/>
-  </menu>
-
-</book>
diff --git a/crawler/kiss/docs/content/xdocs/samples/subdir/hello.zip b/crawler/kiss/docs/content/xdocs/samples/subdir/hello.zip
deleted file mode 100644 (file)
index b4fb6aa..0000000
Binary files a/crawler/kiss/docs/content/xdocs/samples/subdir/hello.zip and /dev/null differ
diff --git a/crawler/kiss/docs/content/xdocs/samples/subdir/index.xml b/crawler/kiss/docs/content/xdocs/samples/subdir/index.xml
deleted file mode 100644 (file)
index d060da5..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
-<document>
-   <header>
-      <title>Page generated from a sub-directory</title>
-
-      <authors>
-        <person name="Joe Bloggs" email="joe@joescompany.org" />
-       </authors>
-   </header>
-
-   <body>
-     <section>
-       <title>A sub-directory</title>
-       <p>This was generated from a sub-directory.</p>
-       <p>When creating new subdirectories, remember that these <em>must</em>
-         be declared in site.xml or each directory must have a book.xml file.
-       </p>
-      </section>
-   </body>
-</document>
-
diff --git a/crawler/kiss/docs/content/xdocs/samples/usemap.xml b/crawler/kiss/docs/content/xdocs/samples/usemap.xml
deleted file mode 100644 (file)
index 50bf2af..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
-<document> 
-  <header> 
-    <title>Interactive client-side imagemaps - the usemap attribute</title> 
-  </header> 
-  <body> 
-    <section id="demo">
-      <title>Imagemap demo</title>
-      <p>
-        <img src="/images/usemap.gif" usemap="#my-map"
-          alt="usemap demo" width="256" height="256"/>
-      </p>
-      <p>
-        <map name="my-map">
-          <area shape="rect" coords="173,14,240,71"
-             alt="Rectangle" href="ext:forrest"/>
-          <area shape="circle" coords="53,172,28"
-             alt="Circle" href="../index.html"/>
-          <area shape="default" coords="0,0.256,256"
-             alt="Default" href="http://www.apache.org"/>
-        </map>
-      </p>
-    </section>
-    <section id="source">
-      <title>Source code</title>
-      <source><![CDATA[
-      <p>
-        <img src="/images/usemap.gif" usemap="#my-map"
-          alt="usemap demo" width="256" height="256"/>
-      </p>
-      <p>
-        <map name="my-map">
-          <area shape="rect" coords="173,14,240,71"
-             alt="Rectangle" href="ext:forrest"/>
-          <area shape="circle" coords="53,172,28"
-             alt="Circle" href="../index.html"/>
-          <area shape="default" coords="0,0.256,256"
-             alt="Default" href="http://www.apache.org"/>
-        </map>
-      </p>
-]]></source>
-    </section>
-  </body>
-</document>
diff --git a/crawler/kiss/docs/content/xdocs/site.xml b/crawler/kiss/docs/content/xdocs/site.xml
deleted file mode 100644 (file)
index 4c28650..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-
-<!--
-Forrest site.xml
-
-This file contains an outline of the site's information content.  It is used to:
-- Generate the website menus (though these can be overridden - see docs)
-- Provide semantic, location-independent aliases for internal 'site:' URIs, eg
-<link href="site:changes"> links to changes.html (or ../changes.html if in
-  subdir).
-- Provide aliases for external URLs in the external-refs section.  Eg, <link
-  href="ext:cocoon"> links to http://cocoon.apache.org/ 
-
-See http://forrest.apache.org/docs/linking.html for more info
--->
-
-<site label="MyProj" href="" xmlns="http://apache.org/forrest/linkmap/1.0" tab="">
-   <!-- Note: No matter what you configure here, Forrest will always try to load
-       index.html when you request http://yourHost/.
-       'How can I use a start-up-page other than index.html?' in the FAQs has more 
-       information tells you how to change that. 
-   -->
-  <about label="About">
-    <index label="Index" href="index.html" description="Welcome to the KiSS crawler"/>
-  </about>
-
-  <!-- samples label="Samples" href="samples/" tab="samples">
-    <index href="index.html"/>
-    <sample label="Apache doc v2.0" href="sample.html" 
-      description="A nonsense document using all possible elements in the current document v2.0">
-      <top href="#top"/>
-      <section href="#section"/>
-    </sample>
-    <document-v13 label="Apache doc v1.3" href="document-v13.html" 
-      description="A nonsense document using all possible elements in the document v1.3">
-      <top href="#top"/>
-      <section href="#section"/>
-    </document-v13>
-    <static label="Static content" href="static.html" 
-      description="Static raw un-processed content" />
-    <linking label="Linking" href="linking.html" 
-      description="Linking explained and demonstrated" />
-    <sample-html label="Embedded HTML" href="embedded_html.html" 
-      description="Test of Embedded HTML" />
-    <sample-ascii-art label="ascii-art page" href="ascii-art.html" 
-      description="Sample Ascii Art page" />
-    <sample-usemap label="usemap" href="usemap.html" 
-      description="Client-side imagemap" />
-    <sample-custom label="User Schemas" href="customSchema.html" 
-      description="Custom XML Schemas"/>
-    <custom label="Custom File" href="custom.html" description="A custom XML file"/>
-    <faq label="FAQ" href="faq.html" description="Frequently Asked Questions" />
-    <subdir label="Subdir" href="subdir/">
-      <index label="Index" href="index.html" 
-        description="Page generated from a sub-directory"/>
-    </subdir>
-  </samples -->
-  
-  <!-- plugins label="Plugins" href="pluginDocs/plugins_0_70/" tab="plugins">
-    <index label="Index" href="index.html" description="List of plugins available for Forrest"/>
-  </plugins -->
-
-  <files>
-    <hello_print href="hello.pdf" />
-    <test1 href="test1.html" />
-  </files>
-  
-  
-
-  <!--
-  The href must be wholesite.html/pdf  You can change the labels and node names
-  <all label="All">
-    <whole_site_html label="Whole Site HTML" href="wholesite.html"/>
-    <whole_site_pdf label="Whole Site PDF" href="wholesite.pdf"/>
-  </all>
-  -->
-  
-  <links>
-    <kiss href="http://www.kiss-technology.com"/>
-  </links>
-
-  <external-refs>
-    <forrest href="http://forrest.apache.org/">
-      <linking href="docs/linking.html"/>
-      <validation href="docs/validation.html"/>
-      <webapp href="docs/your-project.html#webapp"/>
-      <dtd-docs href="docs/dtd-docs.html"/>
-    </forrest>
-    <cocoon href="http://cocoon.apache.org/"/>
-    <xml.apache.org href="http://xml.apache.org/"/>
-  </external-refs>
-
-</site>
diff --git a/crawler/kiss/docs/content/xdocs/tabs.xml b/crawler/kiss/docs/content/xdocs/tabs.xml
deleted file mode 100644 (file)
index e56b9c5..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE tabs PUBLIC "-//APACHE//DTD Cocoon Documentation Tab V1.1//EN" "http://forrest.apache.org/dtd/tab-cocoon-v11.dtd">
-
-<tabs software="MyProj"
-  title="MyProj"
-  copyright="Foo"
-  xmlns:xlink="http://www.w3.org/1999/xlink">
-
-  <!-- The rules for tabs are:
-    @dir will always have '/@indexfile' added.
-    @indexfile gets appended to @dir if the tab is selected. Defaults to 'index.html'
-    @href is not modified unless it is root-relative and obviously specifies a
-    directory (ends in '/'), in which case /index.html will be added
-    If @id's are present, site.xml entries with a matching @tab will be in that tab.
-
-   Tabs can be embedded to a depth of two. The second level of tabs will only 
-    be displayed when their parent tab is selected.    
-  -->
-
-  <tab id="" label="Home" dir="" indexfile="index.html"/>
-  
-  
-  <!-- tab id="samples" label="Samples" dir="samples" indexfile="sample.html">
-    <tab id="samples-index" label="Index" dir="samples" indexfile="index.html"/>
-    <tab id="samples-sample2" label="Sample2" dir="samples" indexfile="static.html"/>
-  </tab -->
-  <!-- tab label="Apache XML Projects" href="http://xml.apache.org">
-    <tab label="Forrest" href="http://forrest.apache.org"/>
-    <tab label="Xerces" href="http://xml.apache.org/xerces"/>
-  </tab -->
-  <!-- tab id="plugins" label="Plugins" dir="pluginDocs/plugins_0_70" indexfile="index.html"/ -->
-  <!-- Add new tabs here, eg:
-  <tab label="How-Tos" dir="community/howto/"/>
-  <tab label="XML Site" dir="xml-site/"/>
-  -->
-
-</tabs>
diff --git a/crawler/kiss/docs/resources/schema/catalog.xcat b/crawler/kiss/docs/resources/schema/catalog.xcat
deleted file mode 100644 (file)
index 91da410..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN"
-"http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
-
-<!-- OASIS XML Catalog for Forrest Documents -->
-<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog"
-         prefer="public">
-
-<!-- Download  -->
-<public publicId="-//Acme//DTD Hello Document V1.0//EN"
-        uri="hello-v10.dtd"/>
-
-</catalog>
diff --git a/crawler/kiss/docs/resources/schema/hello-v10.dtd b/crawler/kiss/docs/resources/schema/hello-v10.dtd
deleted file mode 100644 (file)
index 4fab270..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!-- ===================================================================
-
-     Apache Hello DTD (Version 1.0)
-
-PURPOSE:
-  
-
-TYPICAL INVOCATION:
-
-  <!DOCTYPE greeting PUBLIC
-       "-//Acme//DTD Hello Document Vx.y//EN"
-       "hello.dtd">
-
-  where
-
-    x := major version
-    y := minor version
-
-FIXME:
-
-CHANGE HISTORY:
-[Version 1.0]
-  20041009 Initial version. (JJP)
-
-==================================================================== -->
-
-<!-- =============================================================== -->
-<!-- Greeting type element -->
-<!-- =============================================================== -->
-
-<!ELEMENT greeting (#PCDATA)>
-
-<!-- =============================================================== -->
-<!-- End of DTD -->
-<!-- =============================================================== -->
diff --git a/crawler/kiss/docs/resources/stylesheets/hello2document.xsl b/crawler/kiss/docs/resources/stylesheets/hello2document.xsl
deleted file mode 100644 (file)
index 1a8e453..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-
-<!--+
-    | Transforms Hello document format.
-    +-->
-
-<xsl:stylesheet version="1.0"
-                xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-
-  <xsl:template match="/">
-    <document>
-      <header>
-        <title>
-          <xsl:value-of select="greeting"/>
-        </title>
-      </header>
-      <body>
-          <xsl:value-of select="greeting"/>
-      </body>
-    </document>
-  </xsl:template>
-</xsl:stylesheet>
diff --git a/crawler/kiss/docs/sitemap.xmap b/crawler/kiss/docs/sitemap.xmap
deleted file mode 100644 (file)
index 76557f9..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2005 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
-
-  <map:components>
-    <map:actions>
-      <map:action logger="sitemap.action.sourcetype" name="sourcetype" src="org.apache.forrest.sourcetype.SourceTypeAction">
-        <sourcetype name="hello-v1.0">
-          <document-declaration public-id="-//Acme//DTD Hello Document V1.0//EN" />
-        </sourcetype>
-      </map:action>
-    </map:actions>   
-    
-    <map:selectors default="parameter">
-           <map:selector logger="sitemap.selector.parameter" name="parameter" src="org.apache.cocoon.selection.ParameterSelector" />
-    </map:selectors>
-  </map:components>
-  
-  <map:resources>    
-    <map:resource name="transform-to-document">
-      <map:act type="sourcetype" src="{src}">
-        <map:select type="parameter">
-          <map:parameter name="parameter-selector-test" value="{sourcetype}" />
-
-          <map:when test="hello-v1.0">
-            <map:generate src="{project:content.xdocs}{../../1}.xml" />
-            <map:transform src="{project:resources.stylesheets}/hello2document.xsl" />
-            <map:serialize type="xml-document"/>
-          </map:when>
-        </map:select>
-      </map:act>
-    </map:resource>
-  </map:resources>
-  
- <map:pipelines>
-  <map:pipeline>
-    <map:match pattern="old_site/*.html">
-     <map:select type="exists">
-      <map:when test="{project:content}{1}.html">
-        <map:read src="{project:content}{1}.html" mime-type="text/html"/>
-        <!--
-          Use this instead if you want JTidy to clean up your HTML
-          <map:generate type="html" src="{project:content}/{0}" />
-          <map:serialize type="html"/>
-        -->
-      </map:when>
-     </map:select>
-   </map:match>
-   
-   
-   <map:match pattern="installs/**">
-     <map:read src="../../../{1}"/>
-   </map:match>     
-  
-   <map:match pattern="**.xml">
-      <map:call resource="transform-to-document">
-        <map:parameter name="src" value="{project:content.xdocs}{1}.xml" />
-      </map:call>
-    </map:match>
-  </map:pipeline>
- </map:pipelines>
-</map:sitemap>
diff --git a/crawler/kiss/docs/skinconf.xml b/crawler/kiss/docs/skinconf.xml
deleted file mode 100644 (file)
index a3127e6..0000000
+++ /dev/null
@@ -1,441 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2005 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-
-<!--
-Skin configuration file. This file contains details of your project,
-which will be used to configure the chosen Forrest skin.
--->
-
-<!DOCTYPE skinconfig PUBLIC "-//APACHE//DTD Skin Configuration V0.7-1//EN" "http://forrest.apache.org/dtd/skinconfig-v07-1.dtd">
-<skinconfig>
-  <!-- To enable lucene search add provider="lucene" (default is google).
-    Add box-location="alt" to move the search box to an alternate location
-    (if the skin supports it) and box-location="all" to show it in all
-    available locations on the page.  Remove the <search> element to show
-    no search box. @domain will enable sitesearch for the specific domain with google.
-    In other words google will search the @domain for the query string.
-  -->
-  <search name="MyProject" domain="mydomain" provider="google"/>
-
-  <!-- Disable the print link? If enabled, invalid HTML 4.0.1 -->
-  <disable-print-link>true</disable-print-link>  
-  <!-- Disable the PDF link? -->
-  <disable-pdf-link>false</disable-pdf-link>
-  <!-- Disable the POD link? -->
-  <disable-pod-link>true</disable-pod-link>
-  <!-- Disable the Text link? FIXME: NOT YET IMPLEMENETED. -->
-  <disable-txt-link>true</disable-txt-link>
-  <!-- Disable the xml source link? -->
-  <!-- The xml source link makes it possible to access the xml rendition
-    of the source frim the html page, and to have it generated statically.
-    This can be used to enable other sites and services to reuse the
-    xml format for their uses. Keep this disabled if you don't want other
-    sites to easily reuse your pages.-->
-  <disable-xml-link>true</disable-xml-link>
-
-  <!-- Disable navigation icons on all external links? -->
-  <disable-external-link-image>true</disable-external-link-image>
-
-  <!-- Disable w3c compliance links? 
-    Use e.g. align="center" to move the compliance links logos to 
-    an alternate location default is left.
-    (if the skin supports it) -->
-  <disable-compliance-links>false</disable-compliance-links>
-
-  <!-- Render mailto: links unrecognisable by spam harvesters? -->
-  <obfuscate-mail-links>true</obfuscate-mail-links>
-  <obfuscate-mail-value>.at.</obfuscate-mail-value>
-
-  <!-- Disable the javascript facility to change the font size -->
-  <disable-font-script>true</disable-font-script>
-
-  <!-- mandatory project logo
-       default skin: renders it at the top -->
-  <project-name>KiSS Crawler</project-name>
-  <project-description>Automatic recording for KiSS harddisk recorders</project-description>
-  <project-url>http://kiss.wamblee.org</project-url>
-  <project-logo>images/project.png</project-logo>
-  <!-- Alternative static image:
-  <project-logo>images/project-logo.gif</project-logo> -->
-
-  <!-- optional group logo
-       default skin: renders it at the top-left corner -->
-  <group-name>wamblee.org</group-name>
-  <group-description></group-description>
-  <group-url>http://wamblee.org</group-url>
-  <group-logo>images/group.png</group-logo>
-  <!-- Alternative static image:
-  <group-logo>images/group-logo.gif</group-logo> -->
-
-  <!-- optional host logo (e.g. sourceforge logo)
-       default skin: renders it at the bottom-left corner -->
-  <host-url></host-url>
-  <host-logo></host-logo>
-
-  <!-- relative url of a favicon file, normally favicon.ico -->
-  <favicon-url></favicon-url>
-
-  <!-- The following are used to construct a copyright statement -->
-  <year>2006</year>
-  <vendor>wamblee.org</vendor>
-  <!-- The optional copyright-link URL will be used as a link in the
-    copyright statement
-  <copyright-link>http://www.apache.org/licenses/</copyright-link>
-  -->
-
-  <!-- Some skins use this to form a 'breadcrumb trail' of links.
-    Use location="alt" to move the trail to an alternate location
-    (if the skin supports it).
-    Omit the location attribute to display the trail in the default location.
-    Use location="none" to not display the trail (if the skin supports it).
-    For some skins just set the attributes to blank.
-    
-    NOTE: If a breadcrumb entry points at a local file the href must
-    be complete, that is it must point to the file itself, not to a 
-    directory.
-  -->
-  <trail>
-    <link1 name="wamblee.org" href="http://wamblee.org/"/>
-    <link2 name="utils" href="http://wamblee.org/utils"/>
-    <link3 name="KiSS crawler" href="http://kiss.wamblee.org"/>
-  </trail>
-
-  <!-- Configure the TOC, i.e. the Table of Contents.
-  @max-depth
-   how many "section" levels need to be included in the
-   generated Table of Contents (TOC). 
-  @min-sections
-   Minimum required to create a TOC.
-  @location ("page","menu","page,menu", "none")
-   Where to show the TOC.
-  -->
-  <toc max-depth="2" min-sections="1" location="page"/>
-
-  <!-- Heading types can be clean|underlined|boxed  -->
-  <headings type="boxed"/>
-  
-  <!-- The optional feedback element will be used to construct a
-    feedback link in the footer with the page pathname appended:
-    <a href="@href">{@to}</a>
-    -->
-  <feedback to="erik@wamblee.org"
-    href="mailto:erik@wamblee.org?subject=Feedback&#160;" >
-    Send feedback about the website to:
-  </feedback>
-
-  <!-- Optional message of the day (MOTD).
-    Note: This is only implemented in the pelt skin.
-    If the optional <motd> element is used, then messages will be appended
-    depending on the URI string pattern.
-    motd-option : Specifies a pattern to match and provides small text content.
-    motd-title : This text will be added in brackets after the <html><title>
-    motd-page : This text will be added in a panel on the face of the page,
-    with the "motd-page-url" being the hyperlink "More".
-    Values for the "location" attribute are:
-      page : on the face of the page, e.g. in the spare space of the toc
-      alt : at the bottom of the left-hand navigation panel
-      both : both
-    -->
-<!--
-  <motd>
-    <motd-option pattern="docs_0_80">
-      <motd-title>v0.8-dev</motd-title>
-      <motd-page location="both">
-        This is documentation for development version v0.8
-      </motd-page>
-      <motd-page-url>/versions/index.html</motd-page-url>
-    </motd-option>
-    <motd-option pattern="docs_0_70">
-      <motd-title>v0.7</motd-title>
-      <motd-page location="both">
-        This is documentation for current version v0.7
-      </motd-page>
-      <motd-page-url>/versions/index.html</motd-page-url>
-    </motd-option>
-  </motd>
--->
-
-  <!--
-    extra-css - here you can define custom css-elements that are 
-    A) overriding the fallback elements or 
-    B) adding the css definition from new elements that you may have 
-       used in your documentation.
-    -->
-  <extra-css>
-    <!--Example of reason B:
-        To define the css definition of a new element that you may have used
-        in the class attribute of a <p> node. 
-        e.g. <p class="quote"/>
-    -->
-    p.quote {
-      margin-left: 2em;
-      padding: .5em;
-      background-color: #f0f0f0;
-      font-family: monospace;
-    }
-    <!--Example:
-        To override the colours of links only in the footer.
-    -->
-    #footer a { color: #0F3660; }
-    #footer a:visited { color: #009999; }
-  </extra-css>
-
-  <colors>
-  <!-- These values are used for the generated CSS files.
-    They essentially "override" the default colors defined in the chosen skin.
-    There are four duplicate "groups" of colors below, denoted by comments:
-      Color group: Forrest, Krysalis, Collabnet, and Lenya using Pelt.
-    They are provided for example only. To customize the colors of any skin,
-    uncomment one of these groups of color elements and change the values
-    of the particular color elements that you wish to change.
-    Note that by default, all color groups are commented-out which means that
-    the default colors provided by the skin are being used.
-  -->
-
-  <!-- Color group: Forrest: example colors similar to forrest.apache.org
-    Some of the element names are obscure, so comments are added to show how
-    the "pelt" skin uses them, other skins might use these elements in a different way.
-    Tip: temporarily change the value of an element to red (#ff0000) and see the effect.
-     pelt: breadtrail: the strip at the top of the page and the second strip under the tabs
-     pelt: header: top strip containing project and group logos
-     pelt: heading|subheading: section headings within the content
-     pelt: navstrip: the strip under the tabs which contains the published date
-     pelt: menu: the left-hand navigation panel
-     pelt: toolbox: the selected menu item
-     pelt: searchbox: the background of the searchbox
-     pelt: border: line border around selected menu item
-     pelt: body: any remaining parts, e.g. the bottom of the page
-     pelt: footer: the second from bottom strip containing credit logos and published date
-     pelt: feedback: the optional bottom strip containing feedback link
-  -->
-<!--
-    <color name="breadtrail" value="#cedfef" font="#0F3660" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
-    <color name="header" value="#294563"/>
-    <color name="tab-selected" value="#4a6d8c" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
-    <color name="tab-unselected" value="#b5c7e7" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
-    <color name="subtab-selected" value="#4a6d8c" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
-    <color name="subtab-unselected" value="#4a6d8c" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
-    <color name="heading" value="#294563"/>
-    <color name="subheading" value="#4a6d8c"/>
-    <color name="published" value="#4C6C8F" font="#FFFFFF"/>
-    <color name="feedback" value="#4C6C8F" font="#FFFFFF" align="center"/>
-    <color name="navstrip" value="#4a6d8c" font="#ffffff" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
-    <color name="menu" value="#4a6d8c" font="#cedfef" link="#ffffff" vlink="#ffffff" hlink="#ffcf00"/>    
-    <color name="toolbox" value="#4a6d8c"/>
-    <color name="border" value="#294563"/>
-    <color name="dialog" value="#4a6d8c"/>
-    <color name="searchbox" value="#4a6d8c" font="#000000"/>
-    <color name="body" value="#ffffff" link="#0F3660" vlink="#009999" hlink="#000066"/>
-    <color name="table" value="#7099C5"/>    
-    <color name="table-cell" value="#f0f0ff"/>    
-    <color name="highlight" value="#ffff00"/>
-    <color name="fixme" value="#cc6600"/>
-    <color name="note" value="#006699"/>
-    <color name="warning" value="#990000"/>
-    <color name="code" value="#CFDCED"/>
-    <color name="footer" value="#cedfef"/>
--->
-
-  <!-- Color group: Krysalis -->
-<!--
-    <color name="header"    value="#FFFFFF"/>
-
-    <color name="tab-selected" value="#a5b6c6" link="#000000" vlink="#000000" hlink="#000000"/>
-    <color name="tab-unselected" value="#F7F7F7"  link="#000000" vlink="#000000" hlink="#000000"/>
-    <color name="subtab-selected" value="#a5b6c6"  link="#000000" vlink="#000000" hlink="#000000"/>
-    <color name="subtab-unselected" value="#a5b6c6"  link="#000000" vlink="#000000" hlink="#000000"/>
-
-    <color name="heading" value="#a5b6c6"/>
-    <color name="subheading" value="#CFDCED"/>
-        
-    <color name="navstrip" value="#CFDCED" font="#000000" link="#000000" vlink="#000000" hlink="#000000"/>
-    <color name="toolbox" value="#a5b6c6"/>
-    <color name="border" value="#a5b6c6"/>
-        
-    <color name="menu" value="#F7F7F7" link="#000000" vlink="#000000" hlink="#000000"/>    
-    <color name="dialog" value="#F7F7F7"/>
-            
-    <color name="body"    value="#ffffff" link="#0F3660" vlink="#009999" hlink="#000066"/>
-    
-    <color name="table" value="#a5b6c6"/>    
-    <color name="table-cell" value="#ffffff"/>    
-    <color name="highlight" value="#ffff00"/>
-    <color name="fixme" value="#cc6600"/>
-    <color name="note" value="#006699"/>
-    <color name="warning" value="#990000"/>
-    <color name="code" value="#a5b6c6"/>
-        
-    <color name="footer" value="#a5b6c6"/>
--->
-
-  <!-- Color group: Collabnet --> 
-<!--
-    <color name="header"    value="#003366"/>
-
-    <color name="tab-selected" value="#dddddd" link="#555555" vlink="#555555" hlink="#555555"/>
-    <color name="tab-unselected" value="#999999" link="#ffffff" vlink="#ffffff" hlink="#ffffff"/>
-    <color name="subtab-selected" value="#cccccc" link="#000000" vlink="#000000" hlink="#000000"/>
-    <color name="subtab-unselected" value="#cccccc" link="#555555" vlink="#555555" hlink="#555555"/>
-
-    <color name="heading" value="#003366"/>
-    <color name="subheading" value="#888888"/>
-    
-    <color name="navstrip" value="#dddddd" font="#555555"/>
-    <color name="toolbox" value="#dddddd" font="#555555"/>
-    <color name="border" value="#999999"/>
-    
-    <color name="menu" value="#ffffff"/>    
-    <color name="dialog" value="#eeeeee"/>
-            
-    <color name="body"      value="#ffffff"/>
-    
-    <color name="table" value="#ccc"/>    
-    <color name="table-cell" value="#ffffff"/>   
-    <color name="highlight" value="#ffff00"/>
-    <color name="fixme" value="#cc6600"/>
-    <color name="note" value="#006699"/>
-    <color name="warning" value="#990000"/>
-    <color name="code" value="#003366"/>
-        
-    <color name="footer" value="#ffffff"/>
--->
- <!-- Color group: Lenya using pelt-->
-<!--
-
-    <color name="header" value="#ffffff"/>
-
-    <color name="tab-selected" value="#E5E4D9" link="#000000" vlink="#000000" hlink="#000000"/>
-    <color name="tab-unselected" value="#F5F4E9" link="#000000" vlink="#000000" hlink="#000000"/>
-    <color name="subtab-selected" value="#000000" link="#000000" vlink="#000000" hlink="#000000"/>
-    <color name="subtab-unselected" value="#E5E4D9" link="#000000" vlink="#000000" hlink="#000000"/>
-
-    <color name="heading" value="#E5E4D9"/>
-    <color name="subheading" value="#000000"/>
-    <color name="published" value="#000000"/>
-    <color name="navstrip" value="#E5E4D9" font="#000000"/>
-    <color name="toolbox" value="#CFDCED" font="#000000"/>
-    <color name="border" value="#999999"/>
-
-    <color name="menu" value="#E5E4D9" font="#000000" link="#000000" vlink="#000000" hlink="#000000"/>
-    <color name="dialog" value="#CFDCED"/>
-    <color name="body" value="#ffffff" />
-
-    <color name="table" value="#ccc"/>
-    <color name="table-cell" value="#ffffff"/>
-    <color name="highlight" value="#ffff00"/>
-    <color name="fixme" value="#cc6600"/>
-    <color name="note" value="#006699"/>
-    <color name="warning" value="#990000"/>
-    <color name="code" value="#003366"/>
-
-    <color name="footer" value="#E5E4D9"/>
--->
-  </colors>
-  <!-- Settings specific to PDF output. -->
-  <pdf>
-    <!-- 
-       Supported page sizes are a0, a1, a2, a3, a4, a5, executive,
-       folio, legal, ledger, letter, quarto, tabloid (default letter).
-       Supported page orientations are portrait, landscape (default
-       portrait).
-       Supported text alignments are left, right, justify (default left).
-    -->
-    <page size="letter" orientation="portrait" text-align="left"/>
-
-    <!-- 
-       Pattern of the page numbering in the footer - Default is "Page x".
-       first occurrence of '1' digit represents the current page number,
-       second occurrence of '1' digit represents the total page number,
-       anything else is considered as the static part of the numbering pattern.
-       Examples : x is the current page number, y the total page number.
-       <page-numbering-format>none</page-numbering-format> Do not displays the page numbering
-       <page-numbering-format>1</page-numbering-format> Displays "x"
-       <page-numbering-format>p1.</page-numbering-format> Displays "px."
-       <page-numbering-format>Page 1/1</page-numbering-format> Displays "Page x/y"
-       <page-numbering-format>(1-1)</page-numbering-format> Displays "(x-y)"
-    -->
-    <page-numbering-format>Page 1</page-numbering-format>
-
-    <!--
-       Margins can be specified for top, bottom, inner, and outer
-       edges. If double-sided="false", the inner edge is always left
-       and the outer is always right. If double-sided="true", the
-       inner edge will be left on odd pages, right on even pages,
-       the outer edge vice versa.
-       Specified below are the default settings.
-    -->
-    <margins double-sided="false">
-      <top>1in</top>
-      <bottom>1in</bottom>
-      <inner>1.25in</inner>
-      <outer>1in</outer>
-    </margins>
-
-    <!--
-      Print the URL text next to all links going outside the file
-    -->
-    <show-external-urls>false</show-external-urls>
-
-    <!--
-      Disable the copyright footer on each page of the PDF.
-      A footer is composed for each page. By default, a "credit" with role=pdf
-      will be used, as explained below. Otherwise a copyright statement
-      will be generated. This latter can be disabled.
-    -->
-    <disable-copyright-footer>false</disable-copyright-footer>
-  </pdf>
-
-  <!-- 
-    Credits are typically rendered as a set of small clickable
-    images in the page footer.
-    
-    Use box-location="alt" to move the credits to an alternate location
-    (if the skin supports it).
-
-    For example, pelt skin:
-    - box-location="alt" will place the logo at the end of the
-      left-hand coloured menu panel.
-    - box-location="alt2" will place them underneath that panel
-      in the left-hand whitespace.
-    - Otherwise they are placed next to the compatibility icons
-      at the bottom of the screen.
-
-    Comment out the whole <credit>-element if you want no credits in the
-    web pages  
-   -->
-  <credits>
-    <credit box-location="alt">
-      <name>Built with Apache Forrest</name>
-      <url>http://forrest.apache.org/</url>
-      <image>images/built-with-forrest-button.png</image>
-      <width>88</width>
-      <height>31</height>
-    </credit>
-    <!-- A credit with @role="pdf" will be used to compose a footer
-     for each page in the PDF, using either "name" or "url" or both.
-    -->
-    <!--
-    <credit role="pdf">
-      <name>Built with Apache Forrest</name>
-      <url>http://forrest.apache.org/</url>
-    </credit>
-    -->
-  </credits>
-
-</skinconfig>
diff --git a/crawler/kiss/docs/translations/langcode.xml b/crawler/kiss/docs/translations/langcode.xml
deleted file mode 100644 (file)
index ed09f41..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<!--
-  This catalog is used so displays how the language name 
-  is named by their speakers.
--->
-<catalogue >
-  <message key="en">English</message>
-  <message key="es">Espanol</message>
-  <message key="it">Italiano</message>
-</catalogue>
diff --git a/crawler/kiss/docs/translations/languages_en.xml b/crawler/kiss/docs/translations/languages_en.xml
deleted file mode 100644 (file)
index 1037e0e..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<catalogue xml:lang="en">
-  <message key="en">English</message>
-  <message key="es">Spanish</message>
-  <message key="nl">Dutch</message>
-</catalogue>
diff --git a/crawler/kiss/docs/translations/languages_es.xml b/crawler/kiss/docs/translations/languages_es.xml
deleted file mode 100644 (file)
index a5d17dd..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<catalogue xml:lang="es">
-  <message key="en">Inglés</message>
-  <message key="es">Español</message>
-  <message key="nl">Holandés</message>
-</catalogue>
diff --git a/crawler/kiss/docs/translations/menu.xml b/crawler/kiss/docs/translations/menu.xml
deleted file mode 100644 (file)
index 003da62..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<catalogue xml:lang="en">
-  <message key="About">About</message>
-  <message key="Index">Index</message>
-  <message key="Changes">Changes</message>
-  <message key="Todo">Todo</message>
-  <message key="Samples">Samples</message>
-  <message key="Apache document">Apache document</message>
-  <message key="Static content">Static content</message>
-  <message key="Linking">Linking</message>
-  <message key="Wiki page">Wiki page</message>
-  <message key="ihtml page">Ihtml page</message>
-  <message key="ehtml page">Ehtml page</message>
-  <message key="FAQ">FAQ</message>
-  <message key="Simplifed Docbook">Simplifed Docbook</message>
-  <message key="XSP page">XSP page</message>
-</catalogue>
diff --git a/crawler/kiss/docs/translations/menu_af.xml b/crawler/kiss/docs/translations/menu_af.xml
deleted file mode 100644 (file)
index 108faa7..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<catalogue xml:lang="af">
-    <message key="About">Aangaande</message>
-    <message key="Index">Inhoud</message>
-    <message key="Changes">Veranderinge</message>
-    <message key="Todo">Om te doen</message>
-    <message key="Samples">Voorbeelde</message>
-    <message key="Apache document">Apache dokument</message>
-    <message key="Static content">Statise Inhoud</message>
-    <message key="Linking">Linking</message>
-    <message key="Wiki page">Wiki bladsy</message>
-    <message key="ihtml page">Ihtml bladsy</message>
-    <message key="ehtml page">Ehtml bladsy</message>
-    <message key="FAQ">FAQ</message>
-    <message key="Simplifed Docbook">Vereenvoudigde Docbook</message>
-    <message key="XSP page">XSP bladsy</message>
-</catalogue>
diff --git a/crawler/kiss/docs/translations/menu_de.xml b/crawler/kiss/docs/translations/menu_de.xml
deleted file mode 100644 (file)
index 3cb39f4..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<catalogue xml:lang="de">
-  <message key="About">Über</message>
-  <message key="Index">Index</message>
-  <message key="Changes">Änderungen </message>
-  <message key="Todo">Todo</message>
-  <message key="Samples">Beispiele</message>
-  <message key="Apache document">Apache Dokumentationsseite</message>
-  <message key="Static content">Statischer Inhalt</message>
-  <message key="Linking">Linking</message>
-  <message key="Wiki page">Wiki Seite</message>
-  <message key="ihtml page">ihtml Seite</message>
-  <message key="ehtml page">ehtml Seite</message>
-  <message key="FAQ">FAQ</message>
-  <message key="Simplifed Docbook">Vereinfachte Docbook</message>
-  <message key="XSP page">XSP Seite</message>
-</catalogue>
diff --git a/crawler/kiss/docs/translations/menu_es.xml b/crawler/kiss/docs/translations/menu_es.xml
deleted file mode 100644 (file)
index 690808d..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<catalogue xml:lang="es">
-    <message key="About">Acerca de</message>
-    <message key="Index">Indice</message>
-    <message key="Changes">Cambios</message>
-    <message key="Todo">Tareas pendientes</message>
-    <message key="Samples">Ejemplos</message>
-    <message key="Apache document">Documento Apache</message>
-    <message key="Static content">Contenido Estático</message>
-    <message key="Linking">Linking</message>
-    <message key="Wiki page">Página Wiki</message>
-    <message key="ihtml page">Página ihtml</message>
-    <message key="ehtml page">Página ehtml</message>
-    <message key="FAQ">Preguntas Frecuentes</message>
-    <message key="Simplifed Docbook">Página Simplifed Docbook</message>
-    <message key="XSP page">Página XSP</message>
-</catalogue>
diff --git a/crawler/kiss/docs/translations/menu_it.xml b/crawler/kiss/docs/translations/menu_it.xml
deleted file mode 100644 (file)
index fce8ccc..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<catalogue xml:lang="it">
-    <message key="About">Riguardo a</message>
-    <message key="Index">Indice</message>
-    <message key="Changes">Cambiamenti</message>
-    <message key="Todo">Cose da fare</message>
-    <message key="Samples">Esempi</message>
-    <message key="Apache document">Apache document</message>
-    <message key="Static content">Contenuto Statico</message>
-    <message key="Linking">Linking</message>
-    <message key="Wiki page">Pagina Wiki</message>
-    <message key="ihtml page">Pagina ihtml</message>
-    <message key="ehtml page">Pagina ehtml</message>
-    <message key="FAQ">Domande frequenti</message>
-    <message key="Simplifed Docbook">Simplifed Docbook</message>
-    <message key="XSP page">Pagina XSP</message>
-</catalogue>
diff --git a/crawler/kiss/docs/translations/menu_no.xml b/crawler/kiss/docs/translations/menu_no.xml
deleted file mode 100644 (file)
index 7b094ed..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<catalogue xml:lang="no">
-    <message key="About">Om</message>
-    <message key="Index">Indeks</message>
-    <message key="Changes">Endringer</message>
-    <message key="Todo">Oppgave liste</message>
-    <message key="Samples">Eksempler</message>
-    <message key="Apache document">Apache Dokument</message>
-    <message key="Static content">Statisk innhold</message>
-    <message key="Linking">Linking</message>
-    <message key="Wiki page">Wiki side</message>
-    <message key="ihtml page">ihtml side</message>
-    <message key="ehtml page">ehtml side</message>
-    <message key="FAQ">FAQ</message>
-    <message key="Simplifed Docbook">Simplifed Docbook</message>
-    <message key="XSP page">XSP side</message>
-</catalogue>
diff --git a/crawler/kiss/docs/translations/menu_ru.xml b/crawler/kiss/docs/translations/menu_ru.xml
deleted file mode 100644 (file)
index 7454fac..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<catalogue xml:lang="ru">
-    <message key="About">О проекте</message>
-    <message key="Index">Содержание</message>
-    <message key="Changes">Изменения</message>
-    <message key="Todo">План</message>
-    <message key="Samples">Примеры</message>
-    <message key="Apache document">Страница документа Apache</message>
-    <message key="Static content">Статическое содержание</message>
-    <message key="Linking">Linking</message>
-    <message key="Wiki page">Страница Wiki</message>
-    <message key="ihtml page">Страница ihtml</message>
-    <message key="ehtml page">Страница ehtml</message>
-    <message key="FAQ">Вопросы/Ответы</message>
-    <message key="Simplifed Docbook">Docbook страница</message>
-    <message key="XSP page">XSP страница</message>
-</catalogue>
diff --git a/crawler/kiss/docs/translations/menu_sk.xml b/crawler/kiss/docs/translations/menu_sk.xml
deleted file mode 100644 (file)
index 801c5e2..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<catalogue xml:lang="sk">
-    <message key="About">O programe</message>
-    <message key="Index">Zoznám</message>
-    <message key="Changes">Zmeny</message>
-    <message key="Todo">Úlohy</message>
-    <message key="Samples">Príklady</message>
-    <message key="Apache document">Apache Document</message>
-    <message key="Static content">Statický Obsah</message>
-    <message key="Linking">Linking</message>
-    <message key="Wiki page">Wiki stránka</message>
-    <message key="ihtml page">ihtml stránka</message>
-    <message key="ehtml page">ehtml stránka</message>
-    <message key="FAQ">Casté Otázky</message>
-    <message key="Simplifed Docbook">Simplifed Docbook stránka</message>
-    <message key="XSP page">XSP stránka</message>
-</catalogue>
diff --git a/crawler/kiss/docs/translations/tabs.xml b/crawler/kiss/docs/translations/tabs.xml
deleted file mode 100644 (file)
index 1cfbca6..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<catalogue xml:lang="en">
-  <message key="Home">Home</message>
-  <message key="Samples">Samples</message>
-  <message key="Apache XML Projects">Apache XML Projects</message>
-</catalogue>
diff --git a/crawler/kiss/docs/translations/tabs_es.xml b/crawler/kiss/docs/translations/tabs_es.xml
deleted file mode 100644 (file)
index adf5a65..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0"?>
-<!--
-  Copyright 2002-2004 The Apache Software Foundation or its licensors,
-  as applicable.
-
-  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.
--->
-<catalogue xml:lang="es">
-  <message key="Home">Inicio</message>
-  <message key="Samples">Ejemplos</message>
-  <message key="Apache XML Projects">Projectos XML Apache</message>
-</catalogue>
diff --git a/crawler/kiss/forrest.properties b/crawler/kiss/forrest.properties
deleted file mode 100644 (file)
index ab7e802..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-# Copyright 2002-2005 The Apache Software Foundation or its licensors,
-# as applicable.
-#
-# 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.
-
-##############
-# Properties used by forrest.build.xml for building the website
-# These are the defaults, un-comment them only if you need to change them.
-##############
-
-# Prints out a summary of Forrest settings for this project
-#forrest.echo=true
-
-# Project name (used to name .war file)
-#project.name=my-project
-
-# Specifies name of Forrest skin to use
-# See list at http://forrest.apache.org/docs/skins.html
-#project.skin=pelt
-
-# Descriptors for plugins and skins
-# comma separated list, file:// is supported
-#forrest.skins.descriptors=http://forrest.apache.org/skins/skins.xml,file:///c:/myskins/skins.xml
-#forrest.plugins.descriptors=http://forrest.apache.org/plugins/plugins.xml,http://forrest.apache.org/plugins/whiteboard-plugins.xml
-
-##############
-# behavioural properties
-#project.menu-scheme=tab_attributes
-#project.menu-scheme=directories
-
-##############
-# layout properties
-
-# Properties that can be set to override the default locations
-#
-# Parent properties must be set. This usually means uncommenting
-# project.content-dir if any other property using it is uncommented
-
-project.build-dir=${project.home}/target/forrest
-
-#project.status=status.xml
-project.content-dir=docs
-#project.raw-content-dir=${project.content-dir}/content
-#project.conf-dir=${project.content-dir}/conf
-#project.sitemap-dir=${project.content-dir}
-#project.xdocs-dir=${project.content-dir}/content/xdocs
-#project.resources-dir=${project.content-dir}/resources
-#project.stylesheets-dir=${project.resources-dir}/stylesheets
-#project.images-dir=${project.resources-dir}/images
-#project.schema-dir=${project.resources-dir}/schema
-#project.skins-dir=${project.content-dir}/skins
-#project.skinconf=${project.content-dir}/skinconf.xml
-#project.lib-dir=${project.content-dir}/lib
-#project.classes-dir=${project.content-dir}/classes
-#project.translations-dir=${project.content-dir}/translations
-
-##############
-# validation properties
-
-# This set of properties determine if validation is performed
-# Values are inherited unless overridden.
-# e.g. if forrest.validate=false then all others are false unless set to true.
-#forrest.validate=true
-#forrest.validate.xdocs=${forrest.validate}
-#forrest.validate.skinconf=${forrest.validate}
-#forrest.validate.sitemap=${forrest.validate}
-#forrest.validate.stylesheets=${forrest.validate}
-#forrest.validate.skins=${forrest.validate}
-#forrest.validate.skins.stylesheets=${forrest.validate.skins}
-
-# *.failonerror=(true|false) - stop when an XML file is invalid
-#forrest.validate.failonerror=true
-
-# *.excludes=(pattern) - comma-separated list of path patterns to not validate
-# e.g.
-#forrest.validate.xdocs.excludes=samples/subdir/**, samples/faq.xml
-#forrest.validate.xdocs.excludes=
-
-
-##############
-# General Forrest properties
-
-# The URL to start crawling from
-#project.start-uri=linkmap.html
-
-# Set logging level for messages printed to the console
-# (DEBUG, INFO, WARN, ERROR, FATAL_ERROR)
-#project.debuglevel=ERROR
-
-# Max memory to allocate to Java
-#forrest.maxmemory=64m
-
-# Any other arguments to pass to the JVM. For example, to run on an X-less
-# server, set to -Djava.awt.headless=true
-#forrest.jvmargs=
-
-# The bugtracking URL - the issue number will be appended
-#project.bugtracking-url=http://issues.apache.org/bugzilla/show_bug.cgi?id=
-#project.bugtracking-url=http://issues.apache.org/jira/browse/
-
-# The issues list as rss
-#project.issues-rss-url=
-
-#I18n Property. Based on the locale request for the browser.
-#If you want to use it for static site then modify the JVM system.language
-# and run once per language
-#project.i18n=true
-
-# The names of plugins that are required to build the project
-# comma separated list (no spaces)
-# You can request a specific version by appending "-VERSION" to the end of
-# the plugin name. If you exclude a version number the latest released version
-# will be used, however, be aware that this may be a development version. In
-# a production environment it is recomended that you specify a known working 
-# version.
-# Run "forrest available-plugins" for a list of plug-ins currently available
-project.required.plugins=org.apache.forrest.plugin.output.pdf
-
-# Proxy configuration
-# proxy.host=
-# proxy.port=
diff --git a/crawler/kiss/pom.xml b/crawler/kiss/pom.xml
deleted file mode 100644 (file)
index 9bfa02f..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-  <parent>
-    <groupId>org.wamblee</groupId>
-    <artifactId>wamblee-crawler</artifactId>
-    <version>0.2-SNAPSHOT</version>
-  </parent>
-
-  <modelVersion>4.0.0</modelVersion>
-  <groupId>org.wamblee</groupId>
-  <artifactId>wamblee-crawler-kiss</artifactId>
-  <packaging>jar</packaging>
-  <name>/crawler/kiss</name>
-  <url>http://wamblee.org</url>
-  
-  <dependencies>
-    <dependency>
-        <groupId>org.wamblee</groupId>
-        <artifactId>wamblee-crawler-basic</artifactId>
-    </dependency>
-    <dependency>
-        <groupId>org.wamblee</groupId>
-        <artifactId>wamblee-support-spring</artifactId>
-        <version>0.2-SNAPSHOT</version>
-    </dependency>
-       <dependency>
-         <groupId>commons-email</groupId>
-         <artifactId>commons-email</artifactId>
-       </dependency>
-
-  </dependencies>
-
-</project>
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/AbstractVisitor.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/AbstractVisitor.java
deleted file mode 100644 (file)
index eae5589..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright 2005 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.guide;
-
-/**
- * Abstract visitor of the tv guide with default looping behavior.
- *
- * @author Erik Brakkee
- */
-public abstract class AbstractVisitor implements Visitor {
-
-    /**
-     * Constructs the visitor.
-     * 
-     */
-    protected AbstractVisitor() {
-        // Empty
-    }
-
-    /**
-     * Visits the channel by visiting all programs of the channel.
-     * 
-     * @param aChannel
-     *            Channel to visit.
-     */
-    public void visitChannel(Channel aChannel) {
-        for (Program program : aChannel.getPrograms()) {
-            program.accept(this);
-        }
-    }
-
-    /**
-     * Visits the TV guide by visiting all channels of the guide.
-     * 
-     * @param aGuide
-     *            TV guide to visit.
-     */
-    public void visitTvGuide(TVGuide aGuide) {
-        for (Channel channel : aGuide.getChannels()) {
-            channel.accept(this);
-        }
-    }
-
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/Channel.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/Channel.java
deleted file mode 100644 (file)
index c3d8061..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Copyright 2005 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.guide;
-
-import java.util.Collections;
-import java.util.List;
-
-
-/**
- * Represents the programme for a tv channel.
- *
- * @author Erik Brakkee
- */
-public class Channel {
-
-    /**
-     * TV channel name. 
-     */
-    private String _name;
-
-    /**
-     * List of programs in chronological order. 
-     */
-    private List<Program> _programs;
-
-    /**
-     * Constructs the channel. 
-     * @param aName Channel name.
-     * @param aPrograms Programs. 
-     */
-    public Channel(String aName, List<Program> aPrograms) {
-        _name = aName;
-        _programs = aPrograms;
-    }
-
-    /**
-     * Gets the channel name. 
-     * @return channel name. 
-     */
-    public String getName() {
-        return _name;
-    }
-
-    /**
-     * Gets the list of program. 
-     * @return Programs. 
-     */
-    public List<Program> getPrograms() {
-        return Collections.unmodifiableList(_programs);
-    }
-
-    /**
-     * Accepts a visitor. 
-     * @param aVisitor Visitor. 
-     */
-    public void accept(Visitor aVisitor) {
-        aVisitor.visitChannel(this);
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/MatchVisitor.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/MatchVisitor.java
deleted file mode 100644 (file)
index 53a8403..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright 2005 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.guide;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.wamblee.conditions.Condition;
-
-/**
- * Visitor which determines the interesting programs in the TV guide. 
- *
- * @author Erik Brakkee
- */
-public class MatchVisitor extends AbstractVisitor {
-
-    /**
-     * Criterion that determines which programs are interesting. 
-     */
-    private Condition<Program> _matcher;
-
-    /**
-     * List of interesting programs. 
-     */
-    private List<Program> _programs;
-
-    /**
-     * Constructs the visitor. 
-     * @param aMatcher Condition describing interesting programs. 
-     */
-    public MatchVisitor(Condition<Program> aMatcher) {
-        _matcher = aMatcher;
-        _programs = new ArrayList<Program>();
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.kiss.Visitor#visitProgram(org.wamblee.crawler.kiss.Program)
-     */
-    public void visitProgram(Program aProgram) {
-        if (_matcher.matches(aProgram)) {
-            _programs.add(aProgram);
-        }
-    }
-
-    /**
-     * Gets the list of interesting programs. To be called after applying 
-     * the visitor on a tv guide. 
-     * @return List of interesting programs. 
-     */
-    public List<Program> getMatches() {
-        return _programs;
-    }
-
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/PrintVisitor.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/PrintVisitor.java
deleted file mode 100644 (file)
index 5f05491..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright 2005 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.guide;
-
-import java.io.PrintStream;
-
-
-/**
- * Print visitor for pretty printing the TV guide. 
- *
- * @author Erik Brakkee
- */
-public class PrintVisitor extends AbstractVisitor {
-    
-    /**
-     * Stream to print the guide on. 
-     */
-    private PrintStream _stream; 
-    
-    /**
-     * Constructs the print visitor. 
-     * @param aStream Stream to print on. 
-     */
-    public PrintVisitor(PrintStream aStream) { 
-        _stream = aStream;
-    }
-
-    /* (non-Javadoc)
-     * @see org.wamblee.crawler.kiss.Visitor#visitProgram(org.wamblee.crawler.kiss.Program)
-     */
-    public void visitProgram(Program aProgram) {
-        _stream.println("  " + aProgram.toString());   
-    }
-    
-    /* (non-Javadoc)
-     * @see org.wamblee.crawler.kiss.AbstractVisitor#visitChannel(org.wamblee.crawler.kiss.Channel)
-     */
-    @Override
-    public void visitChannel(Channel aChannel) {
-        _stream.println(aChannel.getName());
-        super.visitChannel(aChannel);
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/Program.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/Program.java
deleted file mode 100644 (file)
index 0def738..0000000
+++ /dev/null
@@ -1,336 +0,0 @@
-/*
- * Copyright 2005 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.guide;
-
-import java.util.Comparator;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.dom4j.DocumentFactory;
-import org.dom4j.Element;
-import org.wamblee.crawler.Action;
-import org.wamblee.crawler.Page;
-import org.wamblee.crawler.PageException;
-import org.wamblee.crawler.kiss.main.SystemProperties;
-
-/**
- * Represents a television program.
- *
- * @author Erik Brakkee
- */
-public class Program {
-
-    private static final String ELEM_PROGRAM = "program";
-
-    private static final String ELEM_NAME = "name";
-
-    private static final String ELEM_KEYWORDS = "keywords";
-
-    private static final String ELEM_DESCRIPTION = "description";
-
-    private static final String ELEM_CHANNEL = "channel";
-
-    private static final String ELEM_INTERVAL = "interval";
-
-    private static final String ELEM_END_TIME = "end";
-
-    private static final String ELEM_BEGIN_TIME = "begin";
-
-    /**
-     * Lexicographical comparison of programs based on (time, title, channel).
-     * 
-     */
-    public static class TimeComparator implements Comparator<Program> {
-
-        /**
-         * Lexicographical comparison based on start time, program name, and
-         * channel.
-         * 
-         * @param aProgram1
-         *            First program.
-         * @param aProgram2
-         *            Second program.
-         * @return See {@link Comparator#compare(T, T)}
-         */
-        public int compare(Program aProgram1, Program aProgram2) {
-            int value = aProgram1.getInterval().getBegin().compareTo(
-                    aProgram2.getInterval().getBegin());
-            if (value != 0) {
-                return value;
-            }
-            value = aProgram1.getName().compareTo(aProgram2.getName());
-            if (value != 0) {
-                return value;
-            }
-            return aProgram1.getChannel().compareTo(aProgram2.getChannel());
-        }
-    }
-
-    private static final Log LOG = LogFactory.getLog(Program.class);
-
-    /**
-     * Name of the record action on the program details page.
-     */
-    private static final String RECORD_ACTION = "record";
-
-    /**
-     * Result of recording a program.
-     * 
-     */
-    public enum RecordingResult {
-        /**
-         * Successfully recorded.
-         */
-        OK,
-
-        /**
-         * Already recorded program.
-         */
-        DUPLICATE,
-
-        /**
-         * Recording conflict with another program.
-         */
-        CONFLICT,
-
-        /**
-         * Program occurred in the past.
-         */
-        OLDSHOW,
-
-        /**
-         * Program could not be recorded for technical reasons.
-         */
-        ERROR;
-    };
-
-    /**
-     * Indent string to use for pretty printing.
-     */
-    private static final String INDENT = "       ";
-
-    /**
-     * Channel the program is on.
-     */
-    private String _channel;
-
-    /**
-     * Program name.
-     */
-    private String _name;
-
-    /**
-     * Program description.
-     */
-    private String _description;
-
-    /**
-     * Keywords or classification of the program.
-     */
-    private String _keywords;
-
-    /**
-     * Time interval for the program (from/to).
-     */
-    private TimeInterval _interval;
-
-    /**
-     * Action to execute to obtain program information and/or record the
-     * program.
-     */
-    private Action _programInfo;
-
-    /**
-     * Constructs the program.
-     * 
-     * @param aChannel
-     *            Channel name.
-     * @param aName
-     *            Program name.
-     * @param aDescription
-     *            Description.
-     * @param aKeywords
-     *            Keywords/classification.
-     * @param aInterval
-     *            Time interval.
-     * @param aProgramInfo
-     *            Action to execute for detailed program information or for
-     *            recording the page.
-     */
-    public Program(String aChannel, String aName, String aDescription,
-            String aKeywords, TimeInterval aInterval, Action aProgramInfo) {
-        _channel = aChannel;
-        _name = aName;
-        _description = aDescription;
-        _keywords = aKeywords;
-        _interval = aInterval;
-        _programInfo = aProgramInfo;
-    }
-
-    /**
-     * Gets the channel.
-     * 
-     * @return Channel.
-     */
-    public String getChannel() {
-        return _channel;
-    }
-
-    /**
-     * Gets the program name.
-     * 
-     * @return Name.
-     */
-    public String getName() {
-        return _name;
-    }
-
-    /**
-     * Gets the description.
-     * 
-     * @return Description.
-     */
-    public String getDescription() {
-        return _description;
-    }
-
-    /**
-     * Gets the keywords/classification.
-     * 
-     * @return Keywords/classification
-     */
-    public String getKeywords() {
-        return _keywords;
-    }
-
-    /**
-     * Gets the time interval.
-     * 
-     * @return Time interval.
-     */
-    public TimeInterval getInterval() {
-        return _interval;
-    }
-
-    /**
-     * Checks if recording is possible.
-     * 
-     * @return True iff recording is possible.
-     */
-    public boolean isRecordingPossible() {
-        try {
-            return _programInfo.execute().getAction(RECORD_ACTION) != null;
-        } catch (PageException e) {
-            return false;
-        }
-    }
-
-    /**
-     * Records the show.
-     * 
-     * @return Status describing the result of recording.
-     */
-    public RecordingResult record() {
-        LOG.info("Recording " + this);
-        if (SystemProperties.isRecordDisabled()) {
-            return RecordingResult.OK;
-        }
-        try {
-            Action record = _programInfo.execute().getAction(RECORD_ACTION);
-            if (record == null) {
-                LOG.info("  result: " + RecordingResult.OLDSHOW);
-                return RecordingResult.OLDSHOW;
-            }
-            Page result = record.execute();
-            RecordingResult recordingResult = RecordingResult.valueOf(result
-                    .getContent().getText());
-            LOG.info("  result: " + recordingResult);
-            return recordingResult;
-        } catch (PageException e) {
-            LOG.warn("Technical problem recording program: '" + this + "'", e);
-            LOG.info("  result: " + RecordingResult.ERROR);
-            return RecordingResult.ERROR;
-        }
-    }
-
-    /**
-     * Accepts the visitor.
-     * 
-     * @param aVisitor
-     *            Visitor.
-     */
-    public void accept(Visitor aVisitor) {
-        aVisitor.visitProgram(this);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#toString()
-     */
-    @Override
-    public String toString() {
-        return _interval + " - " + _name + " (" + _channel + "/" + _keywords
-                + ")" + "\n"
-                + (INDENT + _description).replaceAll("\n", "\n" + INDENT);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#equals(java.lang.Object)
-     */
-    @Override
-    public boolean equals(Object aObject) {
-        if (!(aObject instanceof Program)) {
-            return false;
-        }
-        Program program = (Program) aObject;
-        return getName().equals(program.getName())
-                && _programInfo.equals(program._programInfo);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#hashCode()
-     */
-    @Override
-    public int hashCode() {
-        return getName().hashCode();
-    }
-
-    /**
-     * Converts program information to XML.
-     * 
-     * @return XML representation of program information.
-     */
-    public Element asXml() {
-        DocumentFactory factory = DocumentFactory.getInstance();
-        Element program = factory.createElement(ELEM_PROGRAM);
-        program.addElement(ELEM_NAME).setText(getName());
-        program.addElement(ELEM_DESCRIPTION).setText(getDescription());
-        program.addElement(ELEM_KEYWORDS).setText(getKeywords());
-        program.addElement(ELEM_CHANNEL).setText(getChannel());
-        Element interval = program.addElement(ELEM_INTERVAL);
-        interval.addElement(ELEM_BEGIN_TIME).setText(
-                getInterval().getBegin().toString());
-        interval.addElement(ELEM_END_TIME).setText(
-                getInterval().getEnd().toString());
-        return program;
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/TVGuide.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/TVGuide.java
deleted file mode 100644 (file)
index dcb79d8..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright 2005 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.guide;
-
-import java.util.Collections;
-import java.util.List;
-
-
-/**
- * The TV guide. 
- *
- * @author Erik Brakkee
- */
-public class TVGuide {
-    
-    /**
-     * List of channels. 
-     */
-    private List<Channel> _channels; 
-
-    /**
-     * Constructs the guide. 
-     * @param aChannels Channels of the guide. 
-     */
-    public TVGuide(List<Channel> aChannels) { 
-        _channels = aChannels; 
-    }
-    
-    /**
-     * Gets the channels. 
-     * @return Channels. 
-     */
-    public List<Channel> getChannels() { 
-        return Collections.unmodifiableList(_channels);
-    }
-    
-    /**
-     * Accepts the visitor. 
-     * @param aVisitor Visitor. 
-     */
-    public void accept(Visitor aVisitor) { 
-        aVisitor.visitTvGuide(this);
-    }
-   
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/Time.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/Time.java
deleted file mode 100644 (file)
index df8f666..0000000
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- * Copyright 2005 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.guide;
-
-import java.text.DecimalFormat;
-import java.text.NumberFormat;
-
-/**
- * TIme at which a program starts or ends.
- *
- * @author Erik Brakkee
- */
-public class Time implements Comparable {
-
-    /**
-     * 
-     */
-    private static final int HOURS_PER_DAY = 24;
-
-    /**
-     * 
-     */
-    private static final int EARLY_HOUR = 3;
-
-    /**
-     * Number of seconds per minute.
-     */
-    private static final double SECONDS_PER_MINUTE = 60.0;
-
-    /**
-     * Hour of the time.
-     */
-    private int _hour;
-
-    /**
-     * Minute of the hour.
-     */
-    private int _minute;
-
-    /**
-     * Constructs the time.
-     * 
-     * @param aHour
-     *            Hour.
-     * @param aMinute
-     *            Minute.
-     */
-    public Time(int aHour, int aMinute) {
-        _hour = aHour;
-        _minute = aMinute;
-    }
-
-    /**
-     * Gets the hour.
-     * 
-     * @return Hour.
-     */
-    public int getHour() {
-        return _hour;
-    }
-
-    /**
-     * Gets te minute.
-     * 
-     * @return Minute.
-     */
-    public int getMinute() {
-        return _minute;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#toString()
-     */
-    @Override
-    public String toString() {
-        NumberFormat format = new DecimalFormat("00");
-        return format.format(_hour) + ":" + format.format(_minute);
-    }
-
-    /**
-     * Convert time to floating point value. Useful for comparing two times.
-     * 
-     * @return Converted value.
-     */
-    float asFloat() {
-        int hour = _hour;
-        // Hack to make sure that programs appearing shortly after midnight are
-        // sorted
-        // after those running during the day.
-        if (hour <= EARLY_HOUR) {
-            hour += HOURS_PER_DAY;
-        }
-        return (float) hour + (float) _minute / (float) SECONDS_PER_MINUTE;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#equals(java.lang.Object)
-     */
-    @Override
-    public boolean equals(Object aObject) {
-        if (!(aObject instanceof Time)) {
-            return false;
-        }
-        return toString().equals(aObject.toString());
-    }
-
-    /**
-     * Compares based on time.
-     * 
-     * @param aObject
-     *            Time object to compare to.
-     * @return See {@link Comparable#compareTo(T)}.
-     */
-    public int compareTo(Object aObject) {
-        if (!(aObject instanceof Time)) {
-            throw new IllegalArgumentException("object not an instance of Time");
-        }
-        Time time = (Time) aObject;
-        return new Float(asFloat()).compareTo(new Float(time.asFloat()));
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#hashCode()
-     */
-    @Override
-    public int hashCode() {
-        return toString().hashCode();
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/TimeInterval.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/TimeInterval.java
deleted file mode 100644 (file)
index 71a1780..0000000
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * Copyright 2005 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.guide;
-
-/**
- * Time interval.
- *
- * @author Erik Brakkee
- */
-public class TimeInterval {
-
-    /**
-     * Begin time.
-     */
-    private Time _begin;
-
-    /**
-     * End time.
-     */
-    private Time _end;
-
-    /**
-     * Construts the interval.
-     * 
-     * @param aBegin
-     *            Start time.
-     * @param aEnd
-     *            End time.
-     */
-    public TimeInterval(Time aBegin, Time aEnd) {
-        _begin = aBegin;
-        _end = aEnd;
-    }
-
-    /**
-     * Gets the begin time.
-     * 
-     * @return Begin time.
-     */
-    public Time getBegin() {
-        return _begin;
-    }
-
-    /**
-     * Gets the end time.
-     * 
-     * @return End time.
-     */
-    public Time getEnd() {
-        return _end;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#toString()
-     */
-    @Override
-    public String toString() {
-        return _begin + " - " + _end;
-    }
-
-    /**
-     * Determines if there is an overlap between the current interval and given
-     * one.
-     * 
-     * @param aInterval
-     *            Interval to compare with.
-     * @return True iff there is overlap
-     */
-    public boolean overlap(TimeInterval aInterval) {
-
-        if (isUncertain() || aInterval.isUncertain()) {
-            // Optimistic assume there is no overlap if one of the intervals is
-            // uncertain.
-            return false;
-        }
-
-        if (_end.asFloat() <= aInterval._begin.asFloat()
-                || aInterval._end.asFloat() <= _begin.asFloat()) {
-            return false;
-        }
-
-        return true;
-    }
-
-    /**
-     * Determines if the actual time that the program corresponds to is
-     * uncertain due to the representation of a period of more than 24 hours
-     * using a 24 hour clock.
-     * 
-     * @return True iff the interval is uncertain.
-     */
-    boolean isUncertain() {
-        return _begin.asFloat() > _end.asFloat();
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#equals(java.lang.Object)j
-     */
-    @Override
-    public boolean equals(Object aObject) {
-        if (!(aObject instanceof TimeInterval)) {
-            return false;
-        }
-        return aObject.toString().equals(aObject.toString());
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#hashCode()
-     */
-    @Override
-    public int hashCode() {
-        return _begin.hashCode();
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/Visitor.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/Visitor.java
deleted file mode 100644 (file)
index 1629f70..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright 2005 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.guide;
-
-
-/**
- * Visitor of the TV guide. 
- *
- * @author Erik Brakkee
- */
-public interface Visitor {
-
-    /**
-     * Visits a program. 
-     * @param aProgram Program. 
-     */
-    void visitProgram(Program aProgram);
-    
-    /**
-     * Visits a channel. 
-     * @param aChannel Channel. 
-     */
-    void visitChannel(Channel aChannel); 
-    
-    /**
-     * Visits the guide. 
-     * @param aGuide Guide. 
-     */
-    void visitTvGuide(TVGuide aGuide); 
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/package.html b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/guide/package.html
deleted file mode 100644 (file)
index 5f9643f..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-    wamblee.org
-</head>
-<body bgcolor="white">
-
-This package contains the object model for the TV guide and the classes for 
-searching the TV guide for relevant programs. 
-
-<!-- Put @see and @since tags down here. -->
-
-@since -
-
-</body>
-</html>
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/InterestingProgramAction.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/InterestingProgramAction.java
deleted file mode 100644 (file)
index 2f45460..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright 2005 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.main;
-
-import org.wamblee.crawler.kiss.guide.Program;
-
-/**
- * Represents an action to execute for an interesting program.
- *
- * @author Erik Brakkee
- */
-public class InterestingProgramAction implements ProgramAction {
-
-    /**
-     * Category under which the interesting program is listed.
-     */
-    private String _category;
-
-    /**
-     * Constructs the action.
-     * 
-     * @param aCategory
-     *            Category of the program. Useful for structuring the output.
-     */
-    public InterestingProgramAction(String aCategory) {
-        _category = aCategory;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.kiss.ProgramAction#execute(org.wamblee.crawler.kiss.Program,
-     *      org.wamblee.crawler.kiss.Report)
-     */
-    public void execute(Program aProgram, ProgramActionExecutor aReport) {
-        if (aProgram.isRecordingPossible()) {
-            aReport.interestingProgram(_category, aProgram);
-        }
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/KissCrawler.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/KissCrawler.java
deleted file mode 100644 (file)
index 9fc9a77..0000000
+++ /dev/null
@@ -1,371 +0,0 @@
-/*
- * Copyright 2005 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.main;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import javax.mail.MessagingException;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.NameValuePair;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.dom4j.Element;
-import org.wamblee.crawler.Action;
-import org.wamblee.crawler.Configuration;
-import org.wamblee.crawler.Crawler;
-import org.wamblee.crawler.Page;
-import org.wamblee.crawler.PageException;
-import org.wamblee.crawler.impl.ConfigurationParser;
-import org.wamblee.crawler.impl.CrawlerImpl;
-import org.wamblee.crawler.kiss.guide.Channel;
-import org.wamblee.crawler.kiss.guide.PrintVisitor;
-import org.wamblee.crawler.kiss.guide.Program;
-import org.wamblee.crawler.kiss.guide.TVGuide;
-import org.wamblee.crawler.kiss.guide.Time;
-import org.wamblee.crawler.kiss.guide.TimeInterval;
-import org.wamblee.crawler.kiss.notification.NotificationException;
-import org.wamblee.crawler.kiss.notification.Notifier;
-import org.wamblee.general.BeanFactory;
-import org.wamblee.xml.ClasspathUriResolver;
-import org.wamblee.xml.XslTransformer;
-
-/**
- * The KiSS crawler for automatic recording of interesting TV shows.
- * 
- *
- * @author Erik Brakkee
- */
-public class KissCrawler {
-
-    private static final Log LOG = LogFactory.getLog(KissCrawler.class);
-
-    /**
-     * Start URL of the electronic programme guide.
-     */
-    private static final String START_URL = "http://epg.kml.kiss-technology.com/login.php";
-
-    /**
-     * Default socket timeout to use.
-     */
-    private static final int SOCKET_TIMEOUT = 10000;
-
-    /**
-     * Regular expression for matching time interval strings in the retrieved
-     * pages.
-     */
-    private static final String TIME_REGEX = "[^0-9]*([0-9]{2}):([0-9]{2})[^0-9]*([0-9]{2}):([0-9]{2}).*";
-
-    /**
-     * Compiled pattern for the time regular expression.
-     */
-    private Pattern _pattern;
-
-    /**
-     * Runs the KiSS crawler.
-     * 
-     * @param aArgs
-     *            Arguments: First argument is the crawler configuration file,
-     *            and second is the program configuration file. 
-     * @throws Exception
-     *             In case of problems.
-     */
-    public static void main(String[] aArgs) throws Exception {
-        String crawlerConfig = new File(aArgs[0]).getCanonicalPath();
-        String programConfig = new File(aArgs[1]).getCanonicalPath();
-
-        BeanFactory factory = new StandaloneCrawlerBeanFactory();
-        Notifier notifier = factory.find(Notifier.class);
-        new KissCrawler(START_URL, SOCKET_TIMEOUT, crawlerConfig,
-                programConfig, notifier, new Report());
-    }
-
-    /**
-     * 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.
-     * @param aNotifier
-     *            Object used to send notifications of the results.
-     * @param aReport
-     *            Report to use.
-     * @throws IOException
-     *             In case of problems reading files.
-     * @throws NotificationException
-     *             In case notification fails.
-     * @throws PageException
-     *             In case of problems retrieving the TV guide.
-     */
-    public KissCrawler(String aCrawlerConfig, String aProgramConfig,
-            Notifier aNotifier, Report aReport) throws IOException,
-            NotificationException, PageException {
-        this(START_URL, SOCKET_TIMEOUT, aCrawlerConfig, aProgramConfig,
-                aNotifier, aReport);
-    }
-
-    /**
-     * 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 aStartUrl
-     *            Start URL of the electronic programme guide.
-     * @param aSocketTimeout
-     *            Socket timeout to use.
-     * @param aCrawlerConfig
-     *            Configuration file for the crawler.
-     * @param aProgramConfig
-     *            Configuration file describing interesting shows.
-     * @param aNotifier
-     *            Object used to send notifications of the results.
-     * @param aReport
-     *            Report to use.
-     * @throws IOException
-     *             In case of problems reading files.
-     * @throws NotificationException
-     *             In case notification fails.
-     * @throws PageException
-     *             In case of problems retrieving the TV guide.
-     */
-    public KissCrawler(String aStartUrl, int aSocketTimeout,
-            String aCrawlerConfig, String aProgramConfig, Notifier aNotifier,
-            Report aReport) throws IOException, NotificationException,
-            PageException {
-
-        _pattern = Pattern.compile(TIME_REGEX);
-
-        try {
-            HttpClient client = new HttpClient();
-            // client.getHostConfiguration().setProxy("127.0.0.1", 3128);
-            client.getParams().setParameter("http.socket.timeout",
-                    SOCKET_TIMEOUT);
-
-            XslTransformer transformer = new XslTransformer(
-                    new ClasspathUriResolver());
-
-            Crawler crawler = createCrawler(aCrawlerConfig, client, transformer);
-            InputStream programConfigFile = new FileInputStream(new File(
-                    aProgramConfig));
-            ProgramConfigurationParser parser = new ProgramConfigurationParser();
-            parser.parse(programConfigFile);
-            List<ProgramFilter> programFilters = parser.getFilters();
-
-            try {
-                Page page = getStartPage(aStartUrl, crawler, aReport);
-                TVGuide guide = createGuide(page, aReport);
-                PrintVisitor printer = new PrintVisitor(System.out);
-                guide.accept(printer);
-                processResults(programFilters, guide, aNotifier, aReport);
-            } catch (PageException e) {
-                aReport.addMessage("Problem getting TV guide", e);
-                LOG.info("Problem getting TV guide", e);
-                throw e;
-            }
-            aNotifier.send(aReport.asXml());
-        } finally {
-            System.out.println("Crawler finished");
-        }
-    }
-
-    /**
-     * Records interesting shows.
-     * 
-     * @param aProgramCondition
-     *            Condition determining which shows are interesting.
-     * @param aGuide
-     *            Television guide.
-     * @throws MessagingException
-     *             In case of problems sending a summary mail.
-     */
-    private void processResults(List<ProgramFilter> aProgramCondition,
-            TVGuide aGuide, Notifier aNotifier, Report aReport) {
-        ProgramActionExecutor executor = new ProgramActionExecutor(aReport);
-        for (ProgramFilter filter : aProgramCondition) {
-            List<Program> programs = filter.apply(aGuide);
-            ProgramAction action = filter.getAction();
-            for (Program program : programs) {
-                action.execute(program, executor);
-            }
-        }
-        executor.commit();
-
-    }
-
-    /**
-     * Creates the crawler.
-     * 
-     * @param aCrawlerConfig
-     *            Crawler configuration file.
-     * @param aOs
-     *            Logging output stream for the crawler.
-     * @param aClient
-     *            HTTP Client to use.
-     * @return Crawler.
-     * @throws FileNotFoundException
-     *             In case configuration files cannot be found.
-     */
-    private Crawler createCrawler(String aCrawlerConfig, HttpClient aClient,
-            XslTransformer aTransformer) throws FileNotFoundException {
-        ConfigurationParser parser = new ConfigurationParser(aTransformer);
-        InputStream crawlerConfigFile = new FileInputStream(new File(
-                aCrawlerConfig));
-        Configuration config = parser.parse(crawlerConfigFile);
-        Crawler crawler = new CrawlerImpl(aClient, config);
-        return crawler;
-    }
-
-    /**
-     * Gets the start page of the electronic programme guide. This involves
-     * login and navigation to a suitable start page after logging in.
-     * 
-     * @param aStartUrl
-     *            URL of the electronic programme guide.
-     * @param aCrawler
-     *            Crawler to use.
-     * @param aReport
-     *            Report to use.
-     * @return Starting page.
-     */
-    private Page getStartPage(String aStartUrl, Crawler aCrawler, Report aReport)
-            throws PageException {
-        try {
-            Page page = aCrawler.getPage(aStartUrl, new NameValuePair[0]);
-            page = page.getAction("login").execute();
-            Action favorites = page.getAction("channels-favorites");
-            if (favorites == null) {
-                String msg = "Channels favorites action not found on start page";
-                throw new PageException(msg);
-            }
-            return favorites.execute();
-        } catch (PageException e) {
-            String msg = "Could not complete login to electronic programme guide.";
-            throw new PageException(msg, e);
-        }
-    }
-
-    /**
-     * Creates the TV guide by web crawling.
-     * 
-     * @param aPage
-     *            Starting page.
-     * @param aReport
-     *            Report to use.
-     * @return TV guide.
-     * @throws PageException
-     *             In case of problem getting the tv guide.
-     */
-    private TVGuide createGuide(Page aPage, Report aReport)
-            throws PageException {
-        LOG.info("Obtaining full TV guide");
-        Action[] actions = aPage.getActions();
-        if (actions.length == 0) {
-            LOG.error("No channels found");
-            throw new PageException("No channels found");
-        }
-        List<Channel> channels = new ArrayList<Channel>();
-        for (Action action : actions) {
-            try {
-                LOG.info("Getting channel info for '" + action.getName() + "'");
-                Action tomorrow = action.execute().getAction("tomorrow");
-                if (tomorrow == null) {
-                    throw new PageException("Channel summary page for '"
-                            + action.getName()
-                            + "' does not contain required information");
-                }
-                Channel channel = createChannel(action.getName(), tomorrow
-                        .execute(), aReport);
-                channels.add(channel);
-                if (SystemProperties.isDebugMode()) {
-                    break; // Only one channel is crawled.
-                }
-            } catch (PageException e) {
-                aReport.addMessage("Could not create channel information for '"
-                        + action.getName() + "'");
-                LOG.error("Could not create channel information for '"
-                        + action.getName() + "'", e);
-            }
-        }
-        return new TVGuide(channels);
-    }
-
-    /**
-     * Create channel information for a specific channel.
-     * 
-     * @param aChannel
-     *            Channel name.
-     * @param aPage
-     *            Starting page for the channel.
-     * @return Channel.
-     */
-    private Channel createChannel(String aChannel, Page aPage, Report aReport) {
-        LOG.info("Obtaining program for " + aChannel);
-        Action[] programActions = aPage.getActions();
-        List<Program> programs = new ArrayList<Program>();
-        for (Action action : programActions) {
-            String time = action.getContent().element("time").getText().trim();
-            Matcher matcher = _pattern.matcher(time);
-            if (matcher.matches()) {
-                Time begin = new Time(Integer.parseInt(matcher.group(1)),
-                        Integer.parseInt(matcher.group(2)));
-                Time end = new Time(Integer.parseInt(matcher.group(3)), Integer
-                        .parseInt(matcher.group(4)));
-                TimeInterval interval = new TimeInterval(begin, end);
-                String description = "";
-                String keywords = "";
-
-                if (!SystemProperties.isNoProgramDetailsRequired()) {
-                    Element descriptionElem = action.getContent().element(
-                            "description");
-                    if (descriptionElem == null) {
-                        try {
-                            Page programInfo = action.execute();
-                            description = programInfo.getContent().element(
-                                    "description").getText().trim();
-                            keywords = programInfo.getContent().element(
-                                    "keywords").getText().trim();
-                        } catch (PageException e) {
-                            String msg = "Program details could not be determined for '"
-                                    + action.getName() + "'";
-                            aReport.addMessage(msg, e);
-                            LOG.warn(msg, e);
-                        }
-                    } else {
-                        description = descriptionElem.getTextTrim();
-                    }
-                }
-                Program program = new Program(aChannel, action.getName(),
-                        description, keywords, interval, action);
-
-                LOG.info("Got program " + program);
-                programs.add(program);
-            }
-        }
-        return new Channel(aChannel, programs);
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/KissCrawlerBootstrapper.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/KissCrawlerBootstrapper.java
deleted file mode 100644 (file)
index 0f9b52d..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * 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.main;
-
-import java.io.File;
-
-import org.wamblee.general.ClassLoaderUtils;
-
-/**
- * Bootstrapper for the kiss crawler which adds all files in the directory
- * given by the first argument to the classpath. 
- */
-public class KissCrawlerBootstrapper {
-    
-    public static void main(String[] aArgs) throws Exception {
-        File libdir = new File(aArgs[0]);
-        if ( !libdir.isDirectory() ) { 
-            throw new IllegalArgumentException("'" + aArgs[0] + "' is not a directory.");
-        }
-        ClassLoaderUtils.addJarsInDirectory(libdir);
-        String[] args = new String[2];
-        args[0] = aArgs[1];
-        args[1] = aArgs[2];
-        KissCrawler.main(args);
-    }
-
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/ProgramAction.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/ProgramAction.java
deleted file mode 100644 (file)
index 73769c1..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright 2005 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.main;
-
-import org.wamblee.crawler.kiss.guide.Program;
-
-/**
- * Represents an action configured for a program.
- *
- * @author Erik Brakkee
- */
-public interface ProgramAction {
-
-    /**
-     * Executes the action.
-     * 
-     * @param aProgram
-     *            Program to execute the action for.
-     * @param aExecutor
-     *            Executor to use. 
-     */
-    void execute(Program aProgram, ProgramActionExecutor aExecutor);
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/ProgramActionExecutor.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/ProgramActionExecutor.java
deleted file mode 100644 (file)
index 68a4c13..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
- * Copyright 2005 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.main;
-
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-import java.util.TreeMap;
-import java.util.TreeSet;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.wamblee.crawler.kiss.guide.Program;
-import org.wamblee.crawler.kiss.guide.TimeInterval;
-import org.wamblee.crawler.kiss.guide.Program.RecordingResult;
-
-/**
- * Provides execution of actions for programs. Actions use this class to tell
- * the executor what to do. The executor then decides on exactly what to do and
- * in what order and makes decisions in case of conflicts.
- */
-public class ProgramActionExecutor {
-
-    private static final Log LOG = LogFactory
-            .getLog(ProgramActionExecutor.class);
-
-    /**
-     * Map of priority to set of programs.
-     */
-    private Map<Integer, Set<Program>> _showsToRecord;
-    
-    /**
-     * Report to use. 
-     */
-    private Report _report; 
-
-    /**
-     * Constructs the program action executor.
-     *
-     * @param aReport Report to use. 
-     */
-    public ProgramActionExecutor(Report aReport) {
-        _showsToRecord = new TreeMap<Integer, Set<Program>>();
-        _report = aReport;
-    }
-
-    /**
-     * Called by an action to indicate the desire to record a program.
-     * 
-     * @param aPriority
-     *            Priority of the program. Used to resolve conflicts.
-     * @param aProgram
-     *            Program to record.
-     */
-    public void recordProgram(int aPriority, Program aProgram) {
-        LOG.info("priority = " + aPriority + ", program: " + aProgram);
-        // Putting -priority into the set makes sure that iteration order
-        // over the priorities will go from higher priority to lower priority.
-        Set<Program> programs = _showsToRecord.get(-aPriority);
-        if (programs == null) {
-            programs = new TreeSet<Program>(new Program.TimeComparator());
-            _showsToRecord.put(-aPriority, programs);
-        }
-        programs.add(aProgram);
-    }
-
-    /**
-     * Called by an action to indicate that a program is interesting.
-     * 
-     * @param aCategory
-     *            Category of the program.
-     * @param aProgram
-     *            Program.
-     */
-    public void interestingProgram(String aCategory, Program aProgram) {
-        LOG.info("category = '" + aCategory + "', program: " + aProgram);
-        _report.interestingProgram(aCategory, aProgram);
-    }
-
-    /**
-     * Makes sure that the actions are performed.
-     */
-    public void commit() {
-        Set<TimeInterval> previouslyRecorded = new HashSet<TimeInterval>();
-        for (Integer priority : _showsToRecord.keySet()) {
-            for (Program program : _showsToRecord.get(priority)) {
-                TimeInterval interval = program.getInterval();
-                if (recordingConflictExists(previouslyRecorded, interval)) {
-                    _report.setRecordingResult(RecordingResult.CONFLICT, program);
-                } else {
-                    RecordingResult result = program.record();
-                    _report.setRecordingResult(result, program);
-                    previouslyRecorded.add(interval);
-                }
-            }
-        }
-    }
-
-    /**
-     * Checks an interval for overlap with a previously recorded program.
-     * 
-     * @param aPreviouslyRecorded
-     *            Previously recorded programs.
-     * @param aInterval
-     *            Interval.
-     * @return True iff there is a recording conflict.
-     */
-    private boolean recordingConflictExists(
-            Set<TimeInterval> aPreviouslyRecorded, TimeInterval aInterval) {
-        for (TimeInterval recordedInterval : aPreviouslyRecorded) {
-            if (aInterval.overlap(recordedInterval)) {
-                return true;
-            }
-        }
-        return false;
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/ProgramConfigurationParser.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/ProgramConfigurationParser.java
deleted file mode 100644 (file)
index 1eb971c..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-/*
- * Copyright 2005 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.main;
-
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.dom4j.Attribute;
-import org.dom4j.Document;
-import org.dom4j.DocumentException;
-import org.dom4j.Element;
-import org.dom4j.io.SAXReader;
-import org.wamblee.conditions.AndCondition;
-import org.wamblee.conditions.Condition;
-import org.wamblee.conditions.PropertyRegexCondition;
-import org.wamblee.crawler.kiss.guide.Program;
-
-/**
- * Parse the configuration of desired programs.
- *
- * @author Erik Brakkee
- */
-class ProgramConfigurationParser {
-    private static final int DEFAULT_PRIORITY = 1; 
-
-    // Configuration of interesting programs.
-
-    private static final String ELEM_PROGRAM = "program";
-    
-    private static final String ELEM_PRIORITY = "priority";
-
-    private static final String ELEM_PATTERN = "match";
-
-    private static final String ELEM_ACTION = "action";
-
-    private static final String ELEM_CATEGORY = "category";
-
-    private static final String ACTION_NOTIFY = "notify";
-
-    private List<ProgramFilter> _filters;
-
-    ProgramConfigurationParser() {
-        _filters = null;
-    }
-
-    /**
-     * Parses the condition used to match the desired programs.
-     * 
-     * @param aStream
-     *            Input stream to parse from.
-     * @return Condition.
-     */
-    void parse(InputStream aStream) {
-        List<ProgramFilter> filters = new ArrayList<ProgramFilter>();
-        try {
-            SAXReader reader = new SAXReader();
-            Document document = reader.read(aStream);
-
-            Element root = document.getRootElement();
-
-            for (Iterator i = root.elementIterator(ELEM_PROGRAM); i.hasNext();) {
-                Element program = (Element) i.next();
-
-                Element categoryElem = program.element(ELEM_CATEGORY);
-                String category = "";
-                if (categoryElem != null) {
-                    category = categoryElem.getText().trim();
-                }
-
-                Element actionElem = program.element(ELEM_ACTION);
-                int priority = DEFAULT_PRIORITY; 
-                String priorityString = program.elementTextTrim(ELEM_PRIORITY);
-                if ( priorityString != null ) { 
-                    priority = Integer.valueOf(priorityString);
-                }
-                ProgramAction action = new RecordProgramAction(priority);
-                if (actionElem != null) {
-                    if (actionElem.getText().equals(ACTION_NOTIFY)) {
-                        action = new InterestingProgramAction(category);
-                    }
-                }
-
-                List<Condition<Program>> regexConditions = new ArrayList<Condition<Program>>();
-                for (Iterator j = program.elementIterator(ELEM_PATTERN); j
-                        .hasNext();) {
-                    Element patternElem = (Element) j.next();
-                    String fieldName = "name";
-                    Attribute fieldAttribute = patternElem.attribute("field");
-                    if (fieldAttribute != null) {
-                        fieldName = fieldAttribute.getText();
-                    }
-                    String pattern = ".*(" + patternElem.getText() + ").*";
-                    regexConditions.add(new PropertyRegexCondition<Program>(
-                            fieldName, pattern, true));
-                }
-                Condition<Program> condition = new AndCondition<Program>(
-                        regexConditions);
-                filters.add(new ProgramFilter(condition, action));
-            }
-            _filters = filters;
-        } catch (DocumentException e) {
-            throw new RuntimeException("Error parsing program configuraiton", e);
-        }
-    }
-
-    /**
-     * Returns the list of program filters.
-     * 
-     * @return Filter list.
-     */
-    public List<ProgramFilter> getFilters() {
-        return _filters;
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/ProgramFilter.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/ProgramFilter.java
deleted file mode 100644 (file)
index 31f5862..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright 2005 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.main;
-
-import java.util.List;
-
-import org.wamblee.conditions.Condition;
-import org.wamblee.crawler.kiss.guide.MatchVisitor;
-import org.wamblee.crawler.kiss.guide.Program;
-import org.wamblee.crawler.kiss.guide.TVGuide;
-
-/**
- * Obtains a list of interesting programs from a TV guide and decides what to do
- * with them.
- *
- * @author Erik Brakkee
- */
-public class ProgramFilter {
-
-    private Condition<Program> _condition;
-
-    private ProgramAction _action;
-
-    /**
-     * Constructs the program filter. 
-     * @param aCondition Condition used to find interesting programs. 
-     * @param aAction Corresponding action to execute for matching programs. 
-     */
-    public ProgramFilter(Condition<Program> aCondition, ProgramAction aAction) {
-        _condition = aCondition;
-        _action = aAction;
-    }
-
-    /**
-     * Gets the action. 
-     * @return Action. 
-     */
-    public ProgramAction getAction() {
-        return _action;
-    }
-
-    /**
-     * Applies the filter to a TV guide. 
-     * @param aGuide TV guide. 
-     * @return List of matching programs. 
-     */
-    public List<Program> apply(TVGuide aGuide) {
-        MatchVisitor matcher = new MatchVisitor(_condition);
-        aGuide.accept(matcher);
-        return matcher.getMatches();
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/RecordProgramAction.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/RecordProgramAction.java
deleted file mode 100644 (file)
index d4a4189..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Copyright 2005 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.main;
-
-import org.wamblee.crawler.kiss.guide.Program;
-
-/**
- * Represents an action to record a program.
- *
- * @author Erik Brakkee
- */
-public class RecordProgramAction implements ProgramAction {
-
-    private int _priority;
-
-    /**
-     * Constructs the action.
-     * @param aPriority Priority of the recording action. Higher values have higher
-     *   priority.
-     */
-    public RecordProgramAction(int aPriority) {
-        _priority = aPriority;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.kiss.ProgramAction#execute(org.wamblee.crawler.kiss.Program,
-     *      org.wamblee.crawler.kiss.Report)
-     */
-    public void execute(Program aProgram, ProgramActionExecutor aReport) {
-        aReport.recordProgram(_priority, aProgram);
-    }
-
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/Report.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/Report.java
deleted file mode 100644 (file)
index 78c532b..0000000
+++ /dev/null
@@ -1,189 +0,0 @@
-/*
- * 
- * Copyright 2005 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.main;
-
-import java.util.ArrayList;
-import java.util.EnumMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.TreeMap;
-import java.util.TreeSet;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.dom4j.DocumentFactory;
-import org.dom4j.Element;
-import org.wamblee.crawler.kiss.guide.Program;
-import org.wamblee.crawler.kiss.guide.Program.RecordingResult;
-
-/**
- * Represents a report on the actions of the crawler.
- *
- * @author Erik Brakkee
- */
-public class Report {
-
-    private static final Log LOG = LogFactory
-            .getLog(Report.class);
-
-    /**
-     * A map of category name to a set of program. Useful for displaying the
-     * output of possibly interesting programs on a per category basis.
-     */
-    private Map<String, Set<Program>> _interestingShows;
-
-    /**
-     * Map or recording result to a set of programs.
-     */
-    private EnumMap<RecordingResult, Set<Program>> _recordings;
-
-    /**
-     * Messages generated while doing all the work.
-     */
-    private List<String> _messages;
-
-    /**
-     * Constructs the report.
-     * 
-     */
-    public Report() {
-        _interestingShows = new TreeMap<String, Set<Program>>();
-        _recordings = new EnumMap<RecordingResult, Set<Program>>(
-                RecordingResult.class);
-        for (RecordingResult result : RecordingResult.values()) {
-            _recordings.put(result, new TreeSet<Program>(
-                    new Program.TimeComparator()));
-        }
-        _messages = new ArrayList<String>();
-    }
-
-    /**
-     * Adds a message.
-     * 
-     * @param aMessage
-     *            Message to add.
-     */
-    public void addMessage(String aMessage) {
-        _messages.add(aMessage);
-    }
-    
-    /**
-     * Adds a message.
-     * 
-     * @param aMessage
-     *            Message to add.
-     * @param aException Exception that caused the problem.
-     */
-    public void addMessage(String aMessage, Exception aException) {
-        String msg = aMessage; 
-        for (Throwable e = aException; e != null; e = e.getCause()) {
-            msg += ": " + e.getMessage(); 
-        }
-        addMessage(msg);
-    }
-
-    /**
-     * Called to indicate that a program is interesting. 
-     * 
-     * @param aCategory
-     *            Category of the program.
-     * @param aProgram
-     *            Program.
-     */
-    public void interestingProgram(String aCategory, Program aProgram) {
-        LOG.info("category = '" + aCategory + "', program: " + aProgram);
-        Set<Program> programs = _interestingShows.get(aCategory);
-        if (programs == null) {
-            programs = new TreeSet<Program>(new Program.TimeComparator());
-            _interestingShows.put(aCategory, programs);
-        }
-        programs.add(aProgram);
-    }
-    
-    /**
-     * Called to specify the result of recording a program. 
-     * @param aResult Result. 
-     * @param aProgram Program. 
-     */
-    public void setRecordingResult(RecordingResult aResult, Program aProgram) { 
-        _recordings.get(aResult).add(aProgram);   
-    }
-
-  
-    /**
-     * Get report as XML.
-     * 
-     * @return XML report
-     */
-    public Element asXml() {
-        DocumentFactory factory = DocumentFactory.getInstance();
-        Element report = factory.createElement("report");
-
-        if (_messages.size() > 0) {
-            Element messages = report.addElement("messages");
-            for (String message : _messages) {
-                messages.addElement("message").setText(message);
-            }
-        }
-
-        Set<Program> reportedPrograms = new HashSet<Program>();
-
-        for (RecordingResult result : RecordingResult.values()) {
-            if (_recordings.get(result).size() > 0) {
-                Element recordingResult = report.addElement("recorded")
-                        .addAttribute("result", result.toString());
-
-                for (Program program : _recordings.get(result)) {
-                    recordingResult.add(program.asXml());
-                    reportedPrograms.add(program);
-                }
-            }
-        }
-
-        if (_interestingShows.size() > 0) {
-            Element interesting = report.addElement("interesting");
-            for (String category : _interestingShows.keySet()) {
-                Element categoryElem = interesting;
-                if (category.length() > 0) {
-                    categoryElem = interesting.addElement("category");
-                    categoryElem.addAttribute("name", category);
-                }
-                for (Program program : _interestingShows.get(category)) {
-                    if (!reportedPrograms.contains(program)) {
-                        categoryElem.add(program.asXml());
-                    } else {
-                        LOG.info("Category '" + category + "', program "
-                                + program + " already reported");
-                    }
-                }
-                if (categoryElem.elements().size() == 0) {
-                    // Remove empty category element.
-                    LOG
-                            .info("Removing element for category '" + category
-                                    + "'");
-                    interesting.remove(categoryElem);
-                }
-            }
-
-        }
-
-        return report;
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/StandaloneCrawlerBeanFactory.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/StandaloneCrawlerBeanFactory.java
deleted file mode 100644 (file)
index cb0e848..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * 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.main;
-
-import org.wamblee.general.spring.SpringBeanFactory;
-
-/**
- * Bean factory used for the standalone crawler application. 
- *
- * @author Erik Brakkee
- */
-public class StandaloneCrawlerBeanFactory extends SpringBeanFactory {
-    
-    private static final String LOCATOR = "crawler-standalone.xml";
-    private static final String FACTORY_NAME = "crawlerStandalone";
-
-    /**
-     * Constructs the factory.
-     *
-     */
-    public StandaloneCrawlerBeanFactory() { 
-        super(LOCATOR, FACTORY_NAME);
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/SystemProperties.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/SystemProperties.java
deleted file mode 100644 (file)
index 8d41260..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright 2005 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.main;
-
-/**
- * Access to system properties for the crawler.
- *
- * @author Erik Brakkee
- */
-public final class SystemProperties {
-
-    private static final String DEBUG_PROPERTY = "kiss.debug";
-
-    private static final String NO_PROGRAM_DETAILS = "kiss.nodetails";
-
-    private static final String DISABLE_RECORD = "kiss.norecord";
-
-    /**
-     * Disabled constructor.
-     * 
-     */
-    private SystemProperties() {
-        // Empty.
-    }
-
-    /**
-     * Determines if the system is run in debug mode. When in debug mode, less
-     * extensive crawling is done.
-     * 
-     * @return True iff we are running in debug mode.
-     */
-    public static boolean isDebugMode() {
-        return System.getProperties().getProperty(DEBUG_PROPERTY) != null;
-    }
-
-    /**
-     * Determines if no program details are required.
-     * 
-     * @return True iff no program details are required.
-     */
-    public static boolean isNoProgramDetailsRequired() {
-        return System.getProperties().getProperty(NO_PROGRAM_DETAILS) != null;
-    }
-
-    /**
-     * Determines if recording is disabled.
-     * 
-     * @return True iff no recording should be done.
-     */
-    public static boolean isRecordDisabled() {
-        return System.getProperties().getProperty(DISABLE_RECORD) != null;
-    }
-
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/package.html b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/main/package.html
deleted file mode 100644 (file)
index 79b98c3..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-    wamblee.org
-</head>
-<body bgcolor="white">
-
-This package contains the crawling logic of the KiSS EPG site as well 
-as the configuration classes. 
-
-<!-- Put @see and @since tags down here. -->
-
-@since -
-
-</body>
-</html>
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/MailNotifier.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/MailNotifier.java
deleted file mode 100644 (file)
index 3f1a93b..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
- * 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;
-
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.Date;
-
-import javax.mail.internet.AddressException;
-import javax.mail.internet.InternetAddress;
-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.XslTransformer;
-
-/**
- * A notifier that uses SMTP to notify users by mail.
- * 
- *
- * @author Erik Brakkee
- */
-public class MailNotifier implements Notifier {
-
-    private String _from;
-
-    private String _to;
-
-    private String _subject;
-
-    private String _htmlXslt;
-
-    private String _textXslt;
-
-    private MailServer _server;
-    
-    private XslTransformer _transformer;
-
-    /**
-     * 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 aTransformer Transformer to use. 
-     */
-    public MailNotifier(String aFrom, String aTo, String aSubject,
-            String aHtmlXslt, String aTextXslt, MailServer aServer, XslTransformer aTransformer) {
-        _from = aFrom;
-        _to = aTo;
-        _subject = aSubject;
-        _htmlXslt = aHtmlXslt;
-        _textXslt = aTextXslt;
-        _server = aServer;
-        _transformer = aTransformer;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.crawler.kiss.Notifier#send(org.dom4j.Element)
-     */
-    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.setSentDate(new Date());
-            mail.setSubject(_subject);
-
-            String htmlText = transformReport(aReport, _htmlXslt);
-            String plainText = transformReport(aReport, _textXslt);
-
-            mail.setHtmlMsg(htmlText);
-            mail.setTextMsg(plainText);
-
-            _server.send(mail);
-        } catch (EmailException e) {
-            throw new NotificationException(e.getMessage(), e);
-        } catch (TransformerException e) {
-            throw new NotificationException(e.getMessage(), e);
-        } catch (IOException e) {
-            throw new NotificationException(e.getMessage(), 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.
-     */
-    private String transformReport(Element aReport, String aXslt)
-            throws IOException, TransformerException {
-        String reportXmlText = aReport.asXML();
-        return _transformer.textTransform(reportXmlText.getBytes(), _transformer.resolve(aXslt));
-    }
-    
-    /* (non-Javadoc)
-     * @see org.wamblee.crawler.kiss.notification.Notifier#asHtml(org.dom4j.Element)
-     */
-    public String asHtml(Element aReport) throws IOException, TransformerException {
-        return transformReport(aReport, _htmlXslt);
-    }
-    
-    /* (non-Javadoc)
-     * @see org.wamblee.crawler.kiss.notification.Notifier#asText(org.dom4j.Element)
-     */
-    public String asText(Element aReport) throws IOException, TransformerException {
-        return transformReport(aReport, _textXslt);
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/MailServer.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/MailServer.java
deleted file mode 100644 (file)
index 5029252..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * 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;
-
-import java.util.Properties;
-
-import javax.mail.Session;
-
-import org.apache.commons.mail.Email;
-import org.apache.commons.mail.EmailException;
-
-/**
- * Mail server.
- *
- * @author Erik Brakkee
- */
-public class MailServer {
-
-    private String _host;
-
-    private int _port;
-
-    private String _username;
-
-    private String _password;
-
-    /**
-     * Constructs the mail server.
-     * 
-     * @param aHost
-     *            Host name of the SMTP server.
-     * @param aPort
-     *            Port name of the SMTP server.
-     * @param aUsername
-     *            Username to use for authentication or null if no
-     *            authentication is required.
-     * @param aPassword
-     *            Password to use for authentication or null if no authenticatio
-     *            is required.
-     */
-    public MailServer(String aHost, int aPort, String aUsername,
-            String aPassword) {
-        _host = aHost;
-        _port = aPort;
-        _username = aUsername;
-        _password = aPassword;
-    }
-
-    /**
-     * Sends an e-mail.
-     * 
-     * @param aMail
-     *            Mail to send.
-     * @throws EmailException
-     *             In case of problems sending the mail.
-     */
-    public void send(Email aMail) throws EmailException {
-        Properties props = new Properties();
-        props.put("mail.transport.protocol", "smtp");
-        props.put("mail.smtp.host", _host);
-        props.put("mail.smtp.port", "" + _port);
-
-        Session mailSession = Session.getInstance(props,
-                new UsernamePasswordAuthenticator(_username, _password));
-        aMail.setMailSession(mailSession);
-        aMail.send();
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/NotificationException.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/NotificationException.java
deleted file mode 100644 (file)
index 51f1791..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * 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;
-
-/**
- * Notification exception thrown in case of problems sending a notification to a
- * user.
- * 
- *
- * @author Erik Brakkee
- */
-public class NotificationException extends Exception {
-
-    /**
-     * Constructs the notification.
-     * 
-     * @param aMsg
-     *            Message.
-     */
-    public NotificationException(String aMsg) {
-        super(aMsg);
-    }
-
-    /**
-     * Constructs the notification.
-     * 
-     * @param aMsg
-     *            Message.
-     * @param aCause
-     *            Cause.
-     */
-    public NotificationException(String aMsg, Throwable aCause) {
-        super(aMsg, aCause);
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/Notifier.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/Notifier.java
deleted file mode 100644 (file)
index fcdc14a..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * 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;
-
-import java.io.IOException;
-
-import javax.xml.transform.TransformerException;
-
-import org.dom4j.Element;
-
-/**
- * Object used to send notifications about the actions of the crawler.
- * 
- *
- * @author Erik Brakkee
- */
-public interface Notifier {
-
-    /**
-     * Sends a notification.
-     * 
-     * @param aReport
-     *            Report to send.
-     */
-    void send(Element aReport) throws NotificationException;
-    
-    /**
-     * Converts the report to html.
-     * @param aReport Report to convert.
-     * @return
-     */
-    String asHtml(Element aReport) throws IOException, TransformerException;
-    
-    /**
-     * Converts the report to text.
-     * @param aReport Report to convert.
-     * @return
-     */
-    String asText(Element aReport) throws IOException, TransformerException;
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/UsernamePasswordAuthenticator.java b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/UsernamePasswordAuthenticator.java
deleted file mode 100644 (file)
index 58fd5b3..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * 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;
-
-import javax.mail.Authenticator;
-import javax.mail.PasswordAuthentication;
-
-/**
- * Authenticator to supply username and password to the mail server (if needed).
- * 
- *
- * @author Erik Brakkee
- */
-public class UsernamePasswordAuthenticator extends Authenticator {
-
-    private String _username;
-
-    private String _password;
-
-    /**
-     * Constructs the authenticator.
-     * 
-     * @param aUsername
-     *            User name.
-     * @param aPassword
-     *            Password.
-     */
-    public UsernamePasswordAuthenticator(String aUsername, String aPassword) {
-        _username = aUsername;
-        _password = aPassword;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see javax.mail.Authenticator#getPasswordAuthentication()
-     */
-    @Override
-    protected PasswordAuthentication getPasswordAuthentication() {
-        if (_username == null) {
-            return null;
-        }
-        return new PasswordAuthentication(_username, _password);
-    }
-}
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/package.html b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/notification/package.html
deleted file mode 100644 (file)
index e685c6a..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-    wamblee.org
-</head>
-<body bgcolor="white">
-
-Contains the classes for notifying users of the results of crawling. 
-
-<!-- Put @see and @since tags down here. -->
-
-@since -
-
-</body>
-</html>
diff --git a/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/package.html b/crawler/kiss/src/main/java/org/wamblee/crawler/kiss/package.html
deleted file mode 100644 (file)
index 91bbeab..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-    wamblee.org
-</head>
-<body bgcolor="white">
-
-This package provides a crawler for the KiSS electronic program guide.
-It provides automatic recording of programs that satisfy criteria specified
-by the user.
-
-The following packages are defined: 
-<ul>
-  <li> {@link org.wamblee.crawler.kiss.main}: Contains the crawling functionality and 
-  configuration classes.  
-  </li>
-  <li> {@link org.wamblee.crawler.kiss.guide}: Contains the TV guide object model and the
-      classes for searching relevant programs in the guide. 
-  </li>
-  <li> {@link org.wamblee.crawler.kiss.notification}: Contains the classes for 
-     notification. 
-  </li>
-</ul>
-
-<!-- Put @see and @since tags down here. -->
-
-@since -
-
-</body>
-</html>
diff --git a/crawler/kiss/src/main/resources/channel-overview.xsl b/crawler/kiss/src/main/resources/channel-overview.xsl
deleted file mode 100644 (file)
index 59c807b..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-  xmlns:xhtml="http://www.w3.org/1999/xhtml"
-  version="1.0">
-  
-  <xsl:output method="xml"/>
-  <xsl:strip-space elements="xhtml:a"/>
-  
-  <xsl:include href="utilities.xsl"/>
-  
-  <!-- =====================================================
-    Copying template.
-    ===================================================== -->
-  <xsl:template match="@*|node()" mode="copy">
-    <xsl:copy>
-      <xsl:apply-templates select="@*|node()" mode="copy"/>
-    </xsl:copy>
-  </xsl:template>
-  
-  <xsl:template match="/">
-    <xsl:element name="channel-overview">
-      <xsl:apply-templates select="//xhtml:a"/>
-    </xsl:element>
-  </xsl:template>
-  
-  <xsl:template match="xhtml:a">
-     <xsl:variable name="type">
-       <xsl:choose>
-         <xsl:when test="contains(text(), 'Right now')">
-           <xsl:text>right-now</xsl:text>
-         </xsl:when>
-         <xsl:when test="contains(text(), 'Evening')">
-           <xsl:text>evening</xsl:text>
-         </xsl:when>
-         <xsl:when test="contains(text(), 'Afternoon')">
-           <xsl:text>afternoon</xsl:text>
-         </xsl:when>
-         <xsl:when test="contains(text(), 'Noon')">
-           <xsl:text>noon</xsl:text>
-         </xsl:when>
-         <xsl:when test="contains(text(), 'Morning')">
-           <xsl:text>morning</xsl:text>
-         </xsl:when>
-         <xsl:when test="contains(text(), 'Tomorrow')">
-           <xsl:text>tomorrow</xsl:text>
-         </xsl:when>
-         <xsl:otherwise>
-           <xsl:call-template name="string-replace">
-             <xsl:with-param name="src" select="text()"/>
-             <xsl:with-param name="from" select="$newline"/>
-             <xsl:with-param name="to" select="''"/>
-           </xsl:call-template>
-         </xsl:otherwise>
-       </xsl:choose>
-       
-     </xsl:variable>
-     <xsl:element name="action">
-       <xsl:attribute name="name">
-           <xsl:value-of select="$type"/>  
-       </xsl:attribute>
-       <xsl:attribute name="type">
-         <xsl:value-of select="$type"/>
-       </xsl:attribute>
-       <xsl:attribute name="reference">
-         <xsl:value-of select="@href"/>
-       </xsl:attribute>
-       <xsl:text>
-         
-       </xsl:text>
-     </xsl:element>
-  </xsl:template>
-  
-  
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/channel-right-now-graphic.xsl b/crawler/kiss/src/main/resources/channel-right-now-graphic.xsl
deleted file mode 100644 (file)
index 6b5070c..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-  xmlns:xhtml="http://www.w3.org/1999/xhtml" version="1.0">
-
-  <xsl:output method="xml"/>
-  <xsl:strip-space elements="xhtml:a"/>
-
-  <xsl:include href="utilities.xsl"/>
-
-  <!-- =====================================================
-    Copying template.
-    ===================================================== -->
-  <xsl:template match="@*|node()" mode="copy">
-    <xsl:copy>
-      <xsl:apply-templates select="@*|node()" mode="copy"/>
-    </xsl:copy>
-  </xsl:template>
-
-  <xsl:template match="/">
-    <xsl:element name="channel-right-now">
-      <xsl:apply-templates
-        select="//xhtml:table[3]//xhtml:tr[xhtml:td[not(contains(@class, 'listCell'))]]"/>
-    </xsl:element>
-  </xsl:template>
-
-  <xsl:template match="xhtml:tr">
-    <xsl:element name="action">
-      <xsl:attribute name="name">
-        <xsl:call-template name="string-replace">
-          <xsl:with-param name="src" select="xhtml:td[3]//xhtml:a"/>
-          <xsl:with-param name="from" select="$newline"/>
-          <xsl:with-param name="to" select="''"/>
-        </xsl:call-template>
-      </xsl:attribute>
-      <xsl:attribute name="type">
-        <xsl:text>program-info</xsl:text>
-      </xsl:attribute>
-      <xsl:attribute name="reference">
-        <xsl:value-of select="xhtml:td[3]//xhtml:a/@href"/>
-      </xsl:attribute>
-      <xsl:element name="time">
-        <xsl:call-template name="string-replace">
-          <xsl:with-param name="src" select="xhtml:td[1]"/>
-          <xsl:with-param name="from" select="$newline"/>
-          <xsl:with-param name="to" select="''"/>
-        </xsl:call-template>
-      </xsl:element>
-      <xsl:apply-templates select=".//xhtml:script"/>
-    </xsl:element>
-    <xsl:text>
-      
-    </xsl:text>
-  </xsl:template>
-
-  <xsl:template match="xhtml:script">
-    <xsl:variable name="script">
-      <xsl:value-of select="."/>
-    </xsl:variable>
-    <xsl:variable name="description">
-      <xsl:value-of
-        select="substring-before(substring-after($script, '&lt;br&gt;'), '&quot;]')"/>
-    </xsl:variable>
-    <description>
-      <xsl:value-of select="$description"/>
-    </description>
-
-  </xsl:template>
-
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/channel-right-now-mobile.xsl b/crawler/kiss/src/main/resources/channel-right-now-mobile.xsl
deleted file mode 100644 (file)
index ea5ba68..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-  xmlns:xhtml="http://www.w3.org/1999/xhtml"
-  version="1.0">
-  
-  <xsl:output method="xml"/>
-  <xsl:strip-space elements="xhtml:a"/>
-  
-  <xsl:include href="utilities.xsl"/>
-  
-  <!-- =====================================================
-    Copying template.
-    ===================================================== -->
-  <xsl:template match="@*|node()" mode="copy">
-    <xsl:copy>
-      <xsl:apply-templates select="@*|node()" mode="copy"/>
-    </xsl:copy>
-  </xsl:template>
-  
-  <xsl:template match="/">
-    <xsl:element name="channel-right-now">
-      <xsl:apply-templates select="//xhtml:tr[xhtml:td[not(contains(@class, 'listCell'))]]"/>
-    </xsl:element>
-  </xsl:template>
-  
-  <xsl:template match="xhtml:tr">
-     <xsl:element name="action">
-       <xsl:attribute name="name">
-         <xsl:call-template name="string-replace">
-           <xsl:with-param name="src" select="xhtml:td[2]//xhtml:a"/>
-           <xsl:with-param name="from" select="$newline"/>
-           <xsl:with-param name="to" select="''"/>
-         </xsl:call-template>
-       </xsl:attribute>
-       <xsl:attribute name="type">
-         <xsl:text>program-info</xsl:text>
-       </xsl:attribute>
-       <xsl:attribute name="reference">
-         <xsl:value-of select="xhtml:td[2]//xhtml:a/@href"/>
-       </xsl:attribute>
-       <xsl:element name="time">
-         <xsl:call-template name="string-replace">
-           <xsl:with-param name="src" select="xhtml:td[1]"/>
-           <xsl:with-param name="from" select="$newline"/>
-           <xsl:with-param name="to" select="''"/>
-         </xsl:call-template>
-       </xsl:element>
-     </xsl:element>
-    <xsl:text>
-      
-    </xsl:text>
-  </xsl:template>
-  
-  
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/channel-right-now-output.xml b/crawler/kiss/src/main/resources/channel-right-now-output.xml
deleted file mode 100644 (file)
index 6597e6a..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><channel-right-now><action name="&gt;&gt;" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvlist.php?reload=1&amp;channel=6&amp;tz=1&amp;progid=0&amp;page=0&amp;day=1&amp;back=$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>  </time></action>
-      
-    <action name="Wintertijd" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772362161&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
- 23:55 - 00:40 - </time></action>
-      
-    <action name="Nacht-tv: Netwerk herhalingen" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772362162&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-00:50 - 06:15 - </time></action>
-      
-    <action name="Nederland in beweging" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395832&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-06:45 - 06:59 - </time></action>
-      
-    <action name="Goedemorgen Nederland" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395833&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-06:59 - 09:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395834&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
- 07:00 - 07:10 - </time></action>
-      
-    <action name="Goedemorgen Nederland" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395835&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-07:10 - 07:30 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395836&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-07:30 - 07:40 - </time></action>
-      
-    <action name="Goedemorgen Nederland" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395837&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-07:40 - 08:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395838&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-08:00 - 08:10 - </time></action>
-      
-    <action name="Goedemorgen Nederland" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395839&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-08:10 - 08:30 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395840&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
- 08:30 - 08:40 - </time></action>
-      
-    <action name="Goedemorgen Nederland" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395841&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-08:40 - 09:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395842&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-09:00 - 09:10 - </time></action>
-      
-    <action name="Nederland in beweging" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395843&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-09:10 - 09:30 - </time></action>
-      
-    <action name="That's the question" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395844&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-09:30 - 09:55 - </time></action>
-      
-    <action name="Schoondochter gezocht" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395845&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-09:55 - 10:50 - </time></action>
-      
-    <action name="Blauw bloed" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395846&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
- 10:50 - 11:15 - </time></action>
-      
-    <action name="Appeltje voor de dorst" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395847&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>
-11:15 - 12:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395848&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>12:00 - 12:10 - </time></action>
-      
-    <action name="Man bijt hond" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395849&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>12:10 - 12:35 - </time></action>
-      
-    <action name="Voor alle fans: Drukwerk" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395850&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>12:35 - 12:57 - </time></action>
-      
-    <action name="Trekking Lingo" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395851&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>12:57 - 13:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395852&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>13:00 - 13:10 - </time></action>
-      
-    <action name="NOS-Sportjournaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395853&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>13:10 - 13:20 - </time></action>
-      
-    <action name="Buitenhof" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395854&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>13:20 - 14:15 - </time></action>
-      
-    <action name="Hoge bomen in de misdaad" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395855&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>14:15 - 14:55 - </time></action>
-      
-    <action name="AVRO Dierenpark" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395856&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>14:55 - 15:20 - </time></action>
-      
-    <action name="Kruispunt" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395857&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>15:20 - 16:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395858&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>16:00 - 16:05 - </time></action>
-      
-    <action name="Helden van nu: Vrijwilligers in de gezondheidszorg" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395859&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>16:05 - 16:30 - </time></action>
-      
-    <action name="Leven met verlies" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395860&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>16:30 - 17:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395861&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>17:00 - 17:10 - </time></action>
-      
-    <action name="Schepper &amp; co" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395862&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>17:10 - 17:35 - </time></action>
-      
-    <action name="MAX &amp; Catherine" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395863&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>17:35 - 18:30 - </time></action>
-      
-    <action name="That's the question" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395864&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>18:30 - 18:55 - </time></action>
-      
-    <action name="Man bijt hond" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395865&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>18:55 - 19:25 - </time></action>
-      
-    <action name="Ingang Oost" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395866&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>19:25 - 20:00 - </time></action>
-      
-    <action name="NOS-Journaal" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395867&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>20:00 - 20:30 - </time></action>
-      
-    <action name="Netwerk" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395868&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>20:30 - 21:05 - </time></action>
-      
-    <action name="Memories" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395869&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>21:05 - 22:05 - </time></action>
-      
-    <action name="Keyzer &amp; De Boer Advocaten" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395870&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>22:05 - 22:55 - </time></action>
-      
-    <action name="NCRV Dokument: Een familie van vaders" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395871&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>22:55 - 23:50 - </time></action>
-      
-    <action name="Blauw bloed" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395872&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>23:50 - 00:20 - </time></action>
-      
-    <action name="Man bijt hond" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395873&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>00:20 - 00:50 - </time></action>
-      
-    <action name="Nacht-tv: Netwerk herhaling" type="program-info" reference="http://epg.kml.kiss-technology.com/tvhtml/tvinfo.php?id=1772395874&amp;back=$tvhtml$tvlist.php(channel)6~day)0~page)0~tz)1~progid)0~sel)0~back)$tvhtml$tvstation.php(mode)3~station)6~tz)1~sel)0~back)$tvhtml$tv.php(mode)3~page)0~station)0~tz)1~sel)0~back)$tvhtml$tvstart.php(tz)1"><time>00:50 - 06:45 - </time></action>
-      
-    
-BackHomeLogout</channel-right-now>
diff --git a/crawler/kiss/src/main/resources/channel-right-now.xsl b/crawler/kiss/src/main/resources/channel-right-now.xsl
deleted file mode 100644 (file)
index 5885f71..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-  xmlns:xhtml="http://www.w3.org/1999/xhtml"
-  version="1.0">
-  
-  <xsl:output method="xml"/>
-  <xsl:strip-space elements="xhtml:a"/>
-  
-  <xsl:include href="utilities.xsl"/>
-  
-  <!-- =====================================================
-    Copying template.
-    ===================================================== -->
-  <xsl:template match="@*|node()" mode="copy">
-    <xsl:copy>
-      <xsl:apply-templates select="@*|node()" mode="copy"/>
-    </xsl:copy>
-  </xsl:template>
-  
-  <xsl:template match="/">
-    <xsl:element name="channel-right-now">
-      <xsl:apply-templates select="//xhtml:a"/>
-    </xsl:element>
-  </xsl:template>
-  
-  <xsl:template match="xhtml:a[ count(following::xhtml:a) >= 3]">
-     <xsl:element name="action">
-       <xsl:attribute name="name">
-         <xsl:call-template name="string-replace">
-           <xsl:with-param name="src" select="text()"/>
-           <xsl:with-param name="from" select="$newline"/>
-           <xsl:with-param name="to" select="''"/>
-         </xsl:call-template>
-       </xsl:attribute>
-       <xsl:attribute name="type">
-         <xsl:text>program-info</xsl:text>
-       </xsl:attribute>
-       <xsl:attribute name="reference">
-         <xsl:value-of select="@href"/>
-       </xsl:attribute>
-       <xsl:element name="time">
-         <xsl:value-of select="preceding-sibling::text()[1]"/>
-       </xsl:element>
-     </xsl:element>
-    <xsl:text>
-      
-    </xsl:text>
-  </xsl:template>
-  
-  
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/channels-favorites-graphic.xsl b/crawler/kiss/src/main/resources/channels-favorites-graphic.xsl
deleted file mode 100644 (file)
index 7586502..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-  xmlns:xhtml="http://www.w3.org/1999/xhtml"
-  version="1.0">
-  
-  <xsl:output method="xml"/>
-  <xsl:strip-space elements="xhtml:a"/>
-  
-  <xsl:include href="utilities.xsl"/>
-  
-  <!-- =====================================================
-    Copying template.
-    ===================================================== -->
-  <xsl:template match="@*|node()" mode="copy">
-    <xsl:copy>
-      <xsl:apply-templates select="@*|node()" mode="copy"/>
-    </xsl:copy>
-  </xsl:template>
-  
-  <xsl:template match="/">
-    <xsl:element name="favorite-channels">
-      <xsl:apply-templates select="//xhtml:td[contains(@class, 'listCell') and position() = 2]"/>
-    </xsl:element>
-  </xsl:template>
-  
-  <xsl:template match="xhtml:td">
-    <action name="{.//xhtml:b}" type="channel-overview" 
-        reference="{xhtml:a/@href}"/>
-  </xsl:template>
-  
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/channels-favorites.xsl b/crawler/kiss/src/main/resources/channels-favorites.xsl
deleted file mode 100644 (file)
index ec9b1d6..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-  xmlns:xhtml="http://www.w3.org/1999/xhtml"
-  version="1.0">
-  
-  <xsl:output method="xml"/>
-  <xsl:strip-space elements="xhtml:a"/>
-  
-  <xsl:include href="utilities.xsl"/>
-  
-  <!-- =====================================================
-    Copying template.
-    ===================================================== -->
-  <xsl:template match="@*|node()" mode="copy">
-    <xsl:copy>
-      <xsl:apply-templates select="@*|node()" mode="copy"/>
-    </xsl:copy>
-  </xsl:template>
-  
-  <xsl:template match="/">
-    <xsl:element name="favorite-channels">
-      <xsl:apply-templates select="//xhtml:a"/>
-    </xsl:element>
-  </xsl:template>
-  
-  <xsl:template match="xhtml:a[not(contains(@href, 'reload')) and text() != 'Back' and text() != 'Home' and text() != 'Logout' ]">
-     <xsl:element name="action">
-       <xsl:attribute name="name">
-         <xsl:call-template name="string-replace">
-           <xsl:with-param name="src" select="text()"/>
-           <xsl:with-param name="from" select="$newline"/>
-           <xsl:with-param name="to" select="''"/>
-         </xsl:call-template>
-       </xsl:attribute>
-       <xsl:attribute name="reference">
-         <xsl:value-of select="@href"/>
-       </xsl:attribute>
-       <xsl:attribute name="type"><xsl:text>channel-overview</xsl:text></xsl:attribute>
-     </xsl:element>
-  </xsl:template>
-  
-  
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/crawler-standalone.xml b/crawler/kiss/src/main/resources/crawler-standalone.xml
deleted file mode 100644 (file)
index 860240b..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
- <beans> 
-     
-     <bean id="crawlerStandalone"
-         class="org.springframework.context.support.ClassPathXmlApplicationContext">
-         <constructor-arg>
-             <list>
-                <value>org.wamblee.crawler.properties.xml</value>        
-                <value>org.wamblee.crawler.notification.xml</value>
-             </list>
-         </constructor-arg>
-     </bean>
-     
- </beans>
\ No newline at end of file
diff --git a/crawler/kiss/src/main/resources/identity.xsl b/crawler/kiss/src/main/resources/identity.xsl
deleted file mode 100644 (file)
index 822e8e8..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
-  <!-- =====================================================
-    By default, simply copy everything 
-    ===================================================== -->
-  <xsl:template match="@*|node()">
-    <xsl:copy>
-      <xsl:apply-templates select="@*|node()"/>
-    </xsl:copy>
-  </xsl:template>
-  
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/login-graphic.xsl b/crawler/kiss/src/main/resources/login-graphic.xsl
deleted file mode 100644 (file)
index 692d196..0000000
+++ /dev/null
@@ -1,128 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"\r
-    xmlns:xhtml="http://www.w3.org/1999/xhtml"\r
-    version="1.0">\r
-    \r
-    <xsl:output method="xml"/>\r
-    <xsl:strip-space elements="*"/>\r
-    \r
-    <!-- =====================================================\r
-        Copying template.\r
-        ===================================================== -->\r
-    <xsl:template match="@*|node()" mode="copy">\r
-        <xsl:copy>\r
-            <xsl:apply-templates select="@*|node()" mode="copy"/>\r
-        </xsl:copy>\r
-    </xsl:template>\r
-    \r
-    <xsl:template match="/">\r
-        <xsl:element name="login">\r
-            <xsl:apply-templates select="//xhtml:table[@class = 'tvstart']"/>\r
-        </xsl:element>\r
-    </xsl:template>\r
-    \r
-    <xsl:template match="xhtml:table">\r
-        <action type="channels-whats-on-now"  name="channels-whats-on-now" reference="{xhtml:tr[3]/xhtml:td[1]//@href}"/>\r
-      \r
-        <action type="channels-whats-on"  name="channels-whats-on" reference="{xhtml:tr[5]/xhtml:td[1]//@href}"/>\r
-      \r
-        <action type="channels-favorites"  name="channels-favorites" reference="{xhtml:tr[7]/xhtml:td[1]//@href}"/>\r
-        \r
-        <action type="shows-whats-on"  name="shows-whats-on" reference="{xhtml:tr[3]/xhtml:td[3]//@href}"/>\r
-        \r
-        <action type="shows-search"  name="shows-search" reference="{xhtml:tr[5]/xhtml:td[3]//@href}"/>\r
-        \r
-        <action type="shows-favorites"  name="shows-favorites" reference="{xhtml:tr[7]/xhtml:td[3]//@href}"/>\r
-        \r
-        <action type="shows-add-favorite"  name="shows-add-favorite" reference="{xhtml:tr[9]/xhtml:td[3]//@href}"/>\r
-        \r
-        <action type="movies-whats-on"  name="movies-whats-on" reference="{xhtml:tr[3]/xhtml:td[5]//@href}"/>\r
-        \r
-        <action type="sports-whats-on"  name="sports-whats-on"  reference="{xhtml:tr[9]/xhtml:td[5]//@href}"/>\r
-      \r
-       \r
-    </xsl:template>\r
-    \r
-    <xsl:template match="xhtml:a">\r
-        <xsl:variable name="type">\r
-            <xsl:choose>\r
-                <!-- Everything in the Favorite Channels section --> \r
-                <xsl:when test="preceding::node()[contains(text(), 'Favorite') and \r
-                    contains(text(),\r
-                    'Channels')]\r
-                    and following::node()[contains(text(), 'Favorite') and\r
-                    contains(text(), 'Shows')]">\r
-                    <favorite-channels>\r
-                    <xsl:choose>\r
-                        <xsl:when test="contains(text(), \r
-                            's on now?')">\r
-                            <xsl:text>channels-whats-on-now</xsl:text>\r
-                        </xsl:when>\r
-                        <xsl:when test="contains(text(), 's on?')">\r
-                            <xsl:text>channels-whats-on</xsl:text>        \r
-                        </xsl:when>\r
-                        <xsl:when test="contains(text(), 'Favorites')">\r
-                            <xsl:text>channels-favorites</xsl:text>          \r
-                        </xsl:when>\r
-                    </xsl:choose>\r
-                        </favorite-channels>\r
-                </xsl:when>\r
-                \r
-                <!-- Everything in the Favorite Shows section --> \r
-                <xsl:when test="preceding::node()[contains(text(), 'Favorite') and \r
-                    contains(text(),\r
-                    'Shows')]\r
-                    and following::node()[contains(text(), 'Movies')]">\r
-                    <xsl:choose>\r
-                        <xsl:when test="contains(text(), 's on?')">\r
-                            <xsl:text>shows-whats-on</xsl:text>\r
-                        </xsl:when>\r
-                        <xsl:when test="contains(text(), 'Search a show')">\r
-                            <xsl:text>shows-search</xsl:text>\r
-                        </xsl:when>\r
-                        <xsl:when test="contains(text(), 'Favorites')">\r
-                            <xsl:text>shows-favorites</xsl:text>\r
-                        </xsl:when>\r
-                        <xsl:when test="contains(text(), 'Add a favorite')">\r
-                            <xsl:text>shows-add-favorite</xsl:text>\r
-                        </xsl:when>    \r
-                    </xsl:choose>               \r
-                </xsl:when>\r
-                \r
-                <!-- The Movies section -->\r
-                <xsl:when test="preceding::node()[contains(text(), 'Movies')]\r
-                    and following::node()[contains(text(), 'Sports')] \r
-                    and contains(text(), 's on?')">\r
-                    <xsl:text>movies-whats-on</xsl:text>    \r
-                </xsl:when>\r
-                \r
-                <!-- Everything in the sports section --> \r
-                \r
-                <xsl:when test="preceding::node()[contains(text(), 'Sports')] \r
-                    and contains(text(), 's on?')">\r
-                    <xsl:text>sports-whats-on</xsl:text>    \r
-                </xsl:when>\r
-                \r
-                <xsl:when test="contains(text(), 'Logout')">\r
-                    <xsl:text>logout</xsl:text>\r
-                </xsl:when>\r
-                <xsl:when test="contains(text(), 'Manual')">\r
-                    <xsl:text>manual-recording</xsl:text>\r
-                </xsl:when>\r
-                <xsl:when test="contains(text(), 'View')">\r
-                    <xsl:text>view-recordings</xsl:text>\r
-                </xsl:when>\r
-                <xsl:otherwise>\r
-                    <xsl:text>unknown</xsl:text>\r
-                    <xsl:value-of select="text()"/>\r
-                </xsl:otherwise>\r
-            </xsl:choose>\r
-        </xsl:variable>\r
-        <xsl:element name="action">\r
-            <xsl:attribute name="name"><xsl:value-of select="$type"/></xsl:attribute>\r
-            <xsl:attribute name="type"><xsl:value-of select="$type"/></xsl:attribute>\r
-            <xsl:attribute name="reference"><xsl:value-of select="@href"/></xsl:attribute>\r
-        </xsl:element>\r
-    </xsl:template>\r
-    \r
-</xsl:stylesheet>\r
diff --git a/crawler/kiss/src/main/resources/login-mobile.xsl b/crawler/kiss/src/main/resources/login-mobile.xsl
deleted file mode 100644 (file)
index 70f4a5b..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-    xmlns:xhtml="http://www.w3.org/1999/xhtml"
-    version="1.0">
-    
-    <xsl:output method="xml"/>
-    <xsl:strip-space elements="*"/>
-    
-    <!-- =====================================================
-        Copying template.
-        ===================================================== -->
-    <xsl:template match="@*|node()" mode="copy">
-        <xsl:copy>
-            <xsl:apply-templates select="@*|node()" mode="copy"/>
-        </xsl:copy>
-    </xsl:template>
-    
-    <xsl:template match="/">
-        <xsl:element name="login">
-            <xsl:apply-templates select="//xhtml:a"/>
-        </xsl:element>
-    </xsl:template>
-    
-    <xsl:template match="xhtml:a">
-        <xsl:variable name="type">
-            <xsl:choose>
-                <!-- Everything in the Favorite Channels section --> 
-                <xsl:when test="preceding::node()[contains(text(), 'Favorite') and 
-                    contains(text(),
-                    'Channels')]
-                    and following::node()[contains(text(), 'Favorite') and
-                    contains(text(), 'Shows')]">
-                    
-                    <xsl:choose>
-                        <xsl:when test="contains(text(), 
-                            's on now?')">
-                            <xsl:text>channels-whats-on-now</xsl:text>
-                        </xsl:when>
-                        <xsl:when test="contains(text(), 's on?')">
-                            <xsl:text>channels-whats-on</xsl:text>        
-                        </xsl:when>
-                        <xsl:when test="contains(text(), 'Favorites')">
-                            <xsl:text>channels-favorites</xsl:text>          
-                        </xsl:when>
-                    </xsl:choose>
-                </xsl:when>
-          
-                <!-- Everything in the Favorite Shows section --> 
-                <xsl:when test="preceding::node()[contains(text(), 'Favorite') and 
-                    contains(text(),
-                    'Shows')]
-                    and following::node()[contains(text(), 'Movies')]">
-                    <xsl:choose>
-                        <xsl:when test="contains(text(), 's on?')">
-                            <xsl:text>shows-whats-on</xsl:text>
-                        </xsl:when>
-                        <xsl:when test="contains(text(), 'Search a show')">
-                            <xsl:text>shows-search</xsl:text>
-                        </xsl:when>
-                        <xsl:when test="contains(text(), 'Favorites')">
-                            <xsl:text>shows-favorites</xsl:text>
-                        </xsl:when>
-                        <xsl:when test="contains(text(), 'Add a favorite')">
-                            <xsl:text>shows-add-favorite</xsl:text>
-                        </xsl:when>    
-                    </xsl:choose>               
-                </xsl:when>
-                <!-- The Movies section -->
-                <xsl:when test="preceding::node()[contains(text(), 'Movies')]
-                    and following::node()[contains(text(), 'Sports')] 
-                    and contains(text(), 's on?')">
-                    <xsl:text>movies-whats-on</xsl:text>    
-                </xsl:when>
-                
-                <!-- Everything in the sports section --> 
-                
-                <xsl:when test="preceding::node()[contains(text(), 'Sports')] 
-                    and contains(text(), 's on?')">
-                    <xsl:text>sports-whats-on</xsl:text>    
-                </xsl:when>
-                
-                <xsl:when test="contains(text(), 'Logout')">
-                    <xsl:text>logout</xsl:text>
-                </xsl:when>
-                <xsl:when test="contains(text(), 'Manual')">
-                    <xsl:text>manual-recording</xsl:text>
-                </xsl:when>
-                <xsl:when test="contains(text(), 'View')">
-                    <xsl:text>view-recordings</xsl:text>
-                </xsl:when>
-                <xsl:otherwise>
-                    <xsl:text>unknown</xsl:text>
-                    <xsl:value-of select="text()"/>
-                </xsl:otherwise>
-            </xsl:choose>
-        </xsl:variable>
-        <xsl:element name="action">
-            <xsl:attribute name="name"><xsl:value-of select="$type"/></xsl:attribute>
-            <xsl:attribute name="type"><xsl:value-of select="$type"/></xsl:attribute>
-            <xsl:attribute name="reference"><xsl:value-of select="@href"/></xsl:attribute>
-        </xsl:element>
-    </xsl:template>
-    
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/login.xsl b/crawler/kiss/src/main/resources/login.xsl
deleted file mode 100644 (file)
index 069cb93..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-    xmlns:xhtml="http://www.w3.org/1999/xhtml"
-    version="1.0">
-    
-    <xsl:output method="xml"/>
-    <xsl:strip-space elements="*"/>
-    
-    <!-- =====================================================
-        Copying template.
-        ===================================================== -->
-    <xsl:template match="@*|node()" mode="copy">
-        <xsl:copy>
-            <xsl:apply-templates select="@*|node()" mode="copy"/>
-        </xsl:copy>
-    </xsl:template>
-    
-    <xsl:template match="/">
-        <xsl:element name="login">
-            <xsl:apply-templates select="//xhtml:a"/>
-        </xsl:element>
-    </xsl:template>
-    
-    <xsl:template match="xhtml:a">
-        <xsl:variable name="type">
-            <xsl:choose>
-                <xsl:when test="preceding::xhtml:h2[position() = 1 and text() = 'Favorite Channels'] and contains(text(), 's on now?')">
-                    <xsl:text>channels-whats-on-now</xsl:text>
-                </xsl:when>
-                <xsl:when test="preceding::xhtml:h2[position() = 1 and text() = 'Favorite Channels'] and contains(text(), 's on?')">
-                    <xsl:text>channels-whats-on</xsl:text>
-                </xsl:when>
-                <xsl:when test="preceding::xhtml:h2[position() = 1 and text() = 'Favorite Channels'] and contains(text(), 'Favorites')">
-                    <xsl:text>channels-favorites</xsl:text>
-                </xsl:when>
-                
-                <xsl:when test="preceding::xhtml:h2[position() = 1 and text() = 'Favorite Shows'] and contains(text(), 's on?')">
-                    <xsl:text>shows-whats-on</xsl:text>
-                </xsl:when>
-                <xsl:when test="preceding::xhtml:h2[position() = 1 and text() = 'Favorite Shows'] and contains(text(), 'Search a show')">
-                    <xsl:text>shows-search</xsl:text>
-                </xsl:when>
-                <xsl:when test="preceding::xhtml:h2[position() = 1 and text() = 'Favorite Shows'] and contains(text(), 'Favorites')">
-                    <xsl:text>shows-favorites</xsl:text>
-                </xsl:when>
-                <xsl:when test="preceding::xhtml:h2[position() = 1 and text() = 'Favorite Shows'] and contains(text(), 'Add a favorite')">
-                    <xsl:text>shows-add-favorite</xsl:text>
-                </xsl:when>
-                
-                <xsl:when test="preceding::xhtml:h2[position() = 1 and text() = 'Movies'] and contains(text(), 's on?')">
-                    <xsl:text>movies-whats-on</xsl:text>
-                </xsl:when>
-                
-                
-                <xsl:when test="preceding::xhtml:h2[position() = 1 and text() = 'Sports'] and contains(text(), 's on?')">
-                    <xsl:text>sports-whats-on</xsl:text>
-                </xsl:when>
-                
-                <xsl:when test="contains(text(), 'Logout')">
-                    <xsl:text>logout</xsl:text>
-                </xsl:when>
-                <xsl:when test="contains(text(), 'Manual')">
-                    <xsl:text>manual-recording</xsl:text>
-                </xsl:when>
-                <xsl:when test="contains(text(), 'View')">
-                    <xsl:text>view-recordings</xsl:text>
-                </xsl:when>
-                <xsl:otherwise>
-                    unknown
-                    <xsl:value-of select="text()"/>
-                </xsl:otherwise>
-            </xsl:choose>
-        </xsl:variable>
-        <xsl:element name="action">
-            <xsl:attribute name="name"><xsl:value-of select="$type"/></xsl:attribute>
-            <xsl:attribute name="type"><xsl:value-of select="$type"/></xsl:attribute>
-            <xsl:attribute name="reference"><xsl:value-of select="@href"/></xsl:attribute>
-        </xsl:element>
-    </xsl:template>
-    
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/mainpage.xsl b/crawler/kiss/src/main/resources/mainpage.xsl
deleted file mode 100644 (file)
index 11c81fc..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-    xmlns:xhtml="http://www.w3.org/1999/xhtml"
-    version="1.0">
-    
-    <xsl:output method="xml"/>
-    <xsl:strip-space elements="*"/>
-    
-    <!-- =====================================================
-        Copying template.
-        ===================================================== -->
-    <xsl:template match="@*|node()" mode="copy">
-        <xsl:copy>
-            <xsl:apply-templates select="@*|node()" mode="copy"/>
-        </xsl:copy>
-    </xsl:template>
-    
-    <xsl:template match="/">
-        <xsl:element name="loginform">
-            <xsl:apply-templates select="//xhtml:form"/>     
-        </xsl:element>
-    </xsl:template>
-    
-    <xsl:template match="//xhtml:form">
-        <xsl:element name="action">
-            <xsl:attribute name="name">login</xsl:attribute>
-            <xsl:attribute name="reference"><xsl:value-of select="@action"/></xsl:attribute>
-            <xsl:attribute name="type">login</xsl:attribute>
-            <xsl:apply-templates select="//xhtml:input[@type='hidden']"/>     
-        </xsl:element>
-       
-    </xsl:template>
-    
-    <xsl:template match="xhtml:input">
-        <xsl:element name="param">
-            <xsl:attribute name="name">
-                <xsl:value-of select="@name"/>
-            </xsl:attribute>
-            <xsl:attribute name="value">
-                <xsl:value-of select="@value"/>
-            </xsl:attribute>
-        </xsl:element>
-    </xsl:template>
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/org.wamblee.crawler.notification.xml b/crawler/kiss/src/main/resources/org.wamblee.crawler.notification.xml
deleted file mode 100644 (file)
index 3b8d58a..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
-
-<beans>
-    
-  <!-- Mail server configuration --> 
-  <bean id="org.wamblee.crawler.kiss.notification.MailServer"
-      class="org.wamblee.crawler.kiss.notification.MailServer">
-      <constructor-arg><value>${org.wamblee.crawler.smtp.host}</value></constructor-arg>
-      <constructor-arg><value type="int">${org.wamblee.crawler.smtp.port}</value></constructor-arg>
-      <constructor-arg><value>${org.wamblee.crawler.smtp.username}</value></constructor-arg> 
-      <constructor-arg><value>${org.wamblee.crawler.smtp.password}</value></constructor-arg>  
-  </bean>
-  
-  <bean id="org.wamblee.xml.ClasspathUriResolver"
-      class="org.wamblee.xml.ClasspathUriResolver">
-  </bean>
-  
-  <bean id="org.wamblee.xml.XslTransformer"
-      class="org.wamblee.xml.XslTransformer">
-      <constructor-arg><ref local="org.wamblee.xml.ClasspathUriResolver"/></constructor-arg>
-  </bean>
-  
-  <bean id="org.wamblee.crawler.kiss.notification.Notifier"
-      class="org.wamblee.crawler.kiss.notification.MailNotifier">
-      <constructor-arg><value>${org.wamblee.crawler.notification.from}</value></constructor-arg>
-      <constructor-arg><value>${org.wamblee.crawler.notification.to}</value></constructor-arg>
-      <constructor-arg><value>${org.wamblee.crawler.notification.subject}</value></constructor-arg>
-      <constructor-arg><value>reportToHtml.xsl</value></constructor-arg>
-      <constructor-arg><value>reportToText.xsl</value></constructor-arg>
-      <constructor-arg><ref local="org.wamblee.crawler.kiss.notification.MailServer"/></constructor-arg>
-      <constructor-arg><ref local="org.wamblee.xml.XslTransformer"/></constructor-arg>
-  </bean>
-</beans> 
\ No newline at end of file
diff --git a/crawler/kiss/src/main/resources/org.wamblee.crawler.properties.xml b/crawler/kiss/src/main/resources/org.wamblee.crawler.properties.xml
deleted file mode 100644 (file)
index e92b028..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
- <beans> 
-    
-    <bean id="propertyBean"
-        class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
-        <property name="locations">
-            <list>
-                <value>org.wamblee.crawler.properties</value>
-            </list>
-        </property>
-    </bean> 
- </beans>
\ No newline at end of file
diff --git a/crawler/kiss/src/main/resources/program-info-mobile.xsl b/crawler/kiss/src/main/resources/program-info-mobile.xsl
deleted file mode 100644 (file)
index d92391f..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-  xmlns:xhtml="http://www.w3.org/1999/xhtml"
-  version="1.0">
-  
-  <xsl:output method="xml"/>
-  <xsl:strip-space elements="xhtml:a"/>
-  
-  <xsl:include href="utilities.xsl"/>
-  
-  <!-- =====================================================
-    Copying template.
-    ===================================================== -->
-  <xsl:template match="@*|node()" mode="copy">
-    <xsl:copy>
-      <xsl:apply-templates select="@*|node()" mode="copy"/>
-    </xsl:copy>
-  </xsl:template>
-  
-  <xsl:template match="/">
-    <xsl:element name="program-info">
-      <xsl:apply-templates select="//xhtml:a"/>
-      <xsl:element name="title">
-        <xsl:call-template name="string-replace">
-          <xsl:with-param name="src" select="//xhtml:tr[1]/xhtml:td[1]"/>
-          <xsl:with-param name="from" select="$newline"/>
-          <xsl:with-param name="to" select="''"/>
-        </xsl:call-template>
-      </xsl:element>
-      <xsl:element name="keywords">
-        <xsl:call-template name="string-replace">
-          <xsl:with-param name="src" select="//xhtml:tr[3]/xhtml:td[3]"/>
-          <xsl:with-param name="from" select="$newline"/>
-          <xsl:with-param name="to" select="''"/>
-        </xsl:call-template>
-      </xsl:element>
-      <xsl:element name="description">
-        <xsl:apply-templates select="//xhtml:tr[7]/xhtml:td[1]"/>
-      </xsl:element>
-    </xsl:element>
-  </xsl:template>
-  
-  
-  
-  <xsl:template match="xhtml:a[ text() = 'Record' ]">
-     <xsl:element name="action">
-       <xsl:attribute name="name">
-         <xsl:text>record</xsl:text>
-       </xsl:attribute>
-       <xsl:attribute name="reference">
-         <xsl:value-of select="@href"/>
-       </xsl:attribute>
-       <xsl:attribute name="type">
-         <xsl:text>recorded</xsl:text>
-       </xsl:attribute>
-       <xsl:text>
-         
-       </xsl:text>
-     </xsl:element>
-  </xsl:template>
-  
-  
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/program-info.xsl b/crawler/kiss/src/main/resources/program-info.xsl
deleted file mode 100644 (file)
index ec0f979..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-  xmlns:xhtml="http://www.w3.org/1999/xhtml"
-  version="1.0">
-  
-  <xsl:output method="xml"/>
-  <xsl:strip-space elements="xhtml:a"/>
-  
-  <xsl:include href="utilities.xsl"/>
-  
-  <!-- =====================================================
-    Copying template.
-    ===================================================== -->
-  <xsl:template match="@*|node()" mode="copy">
-    <xsl:copy>
-      <xsl:apply-templates select="@*|node()" mode="copy"/>
-    </xsl:copy>
-  </xsl:template>
-  
-  <xsl:template match="/">
-    <xsl:element name="program-info">
-      <xsl:apply-templates select="//xhtml:a"/>
-      <xsl:element name="title">
-        <xsl:value-of select="//xhtml:h2[1]"/>
-      </xsl:element>
-      <xsl:element name="keywords">
-        <xsl:apply-templates select="//text()[count(preceding::xhtml:br)= 1]"/>
-      </xsl:element>
-      <xsl:element name="description">
-        <xsl:apply-templates select="//text()[count(preceding::xhtml:h2) = 2 and
-          count(following::xhtml:br) >= 4 and count(preceding::xhtml:br) >= 3]"/>
-      </xsl:element>
-    </xsl:element>
-  </xsl:template>
-  
-  
-  
-  <xsl:template match="xhtml:a[ text() = 'Record' ]">
-     <xsl:element name="action">
-       <xsl:attribute name="name">
-         <xsl:text>record</xsl:text>
-       </xsl:attribute>
-       <xsl:attribute name="reference">
-         <xsl:value-of select="@href"/>
-       </xsl:attribute>
-       <xsl:attribute name="type">
-         <xsl:text>recorded</xsl:text>
-       </xsl:attribute>
-       <xsl:text>
-         
-       </xsl:text>
-     </xsl:element>
-  </xsl:template>
-  
-  
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/recorded.xsl b/crawler/kiss/src/main/resources/recorded.xsl
deleted file mode 100644 (file)
index 866c51b..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
-    xmlns:xhtml="http://www.w3.org/1999/xhtml"
-    version="1.0">
-    
-    <xsl:template match="/">
-        <xsl:element name="result">
-            <xsl:choose>
-                <xsl:when test="count(//xhtml:h1[contains(text(), 'Error')]) = 1">
-                    <xsl:choose>
-                        <xsl:when test="count(//xhtml:body/text()[contains(., 'already in the')]) =
-                            1">
-                            <xsl:text>DUPLICATE</xsl:text>
-                        </xsl:when>
-                        <xsl:when test="count(//xhtml:body/text()[contains(., 'conflicts with a
-                            recording')]) =
-                            1">
-                            <xsl:text>CONFLICT</xsl:text>
-                        </xsl:when>
-                        <xsl:otherwise>
-                            <xsl:text>ERROR</xsl:text>
-                        </xsl:otherwise>
-                    </xsl:choose>
-                </xsl:when>
-                <xsl:otherwise>
-                    <xsl:text>OK</xsl:text>
-                </xsl:otherwise>
-            </xsl:choose>
-            
-        </xsl:element>
-    </xsl:template>
-    
-    <xsl:template match="xhtml:body">
-        <xsl:value-of select="text()"/>
-    </xsl:template>
-    
-    <xsl:template match="text()">
-        TEXT NODE
-        <xsl:value-of select="."/>
-    </xsl:template>
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/reportToHtml.xsl b/crawler/kiss/src/main/resources/reportToHtml.xsl
deleted file mode 100644 (file)
index 23bc173..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
-
-    <xsl:template match="report">
-        <html>
-            <head>
-                <title>KiSS crawler report</title>
-            </head>
-            <body>
-                <h1>KiSS crawler report</h1>
-                <xsl:apply-templates select="recorded"/>
-                <xsl:if test="count(interesting) > 0">
-                    <h2>Possibly interesting programs</h2>
-                    <xsl:apply-templates select="interesting"/>
-                </xsl:if>
-                <xsl:if test="count(//program) = 0">
-                    <xsl:text>No suitable programs found </xsl:text>
-                </xsl:if>
-                <xsl:apply-templates select="messages"/>
-            </body>
-        </html>
-
-    </xsl:template>
-
-    <xsl:template name="programTable">
-        <p>
-        <table align="left" cellpadding="5">
-            <!-- 
-            <tr align="left">
-                <th align="left">Time</th>
-                <th align="left">Channel</th>
-                <th align="left">Program</th>
-            </tr>
-            -->
-            <xsl:apply-templates select="program"/>
-        </table>
-        <br clear="left"/>
-        </p>
-    </xsl:template>
-
-    <xsl:template match="recorded">
-        <h2>
-            <xsl:choose>
-                <xsl:when test="@result = 'OK'">
-                    <xsl:text>Successfully recorded programs </xsl:text>
-                    <xsl:call-template name="programTable"/>
-                </xsl:when>
-                <xsl:when test="@result = 'DUPLICATE'">
-                    <xsl:text>Already recorded programs</xsl:text>
-                    <xsl:call-template name="programTable"/>
-                </xsl:when>
-                <xsl:when test="@result = 'CONFLICT'">
-                    <xsl:text>Conflicts with other recorded programs</xsl:text>
-                    <xsl:call-template name="programTable"/>
-                </xsl:when>
-                <xsl:when test="@result='ERROR'">
-                    <xsl:text>Programs that could not be recorded for
-                    technical reasons.</xsl:text>
-                    <xsl:call-template name="programTable"/>
-                </xsl:when>
-            </xsl:choose>
-        </h2>
-    </xsl:template>
-
-    <xsl:template name="addProgramInfo">
-        <tr align="left">
-            <td><xsl:value-of select="interval/begin"/> - <xsl:value-of select="interval/end"/>: <strong>
-                    <xsl:value-of select="name"/>
-                </strong> (<xsl:value-of select="channel"/>/<xsl:value-of select="keywords"/>)</td>
-
-        </tr>
-        <tr>
-            <td>
-                <blockquote>
-                        <font size="-1">
-                            <xsl:value-of select="description"/>
-                        </font>
-                </blockquote>
-            </td>
-
-
-        </tr>
-    </xsl:template>
-
-    <xsl:template match="program">
-        <xsl:call-template name="addProgramInfo"/>
-    </xsl:template>
-
-    <xsl:template match="interesting">
-        <xsl:call-template name="programTable"/>
-        <xsl:apply-templates select="category"/>
-    </xsl:template>
-
-    <xsl:template match="category">
-        <h3>Category: <xsl:value-of select="@name"/></h3>
-        <xsl:call-template name="programTable"/>
-    </xsl:template>
-    
-    <xsl:template match="messages">
-        <h2>Messages</h2>
-        <ul>
-        <xsl:for-each select="message">
-            <li><font size="-1">
-              <xsl:value-of select="."/>
-                </font>
-            </li>
-        </xsl:for-each>
-        </ul>
-    </xsl:template>
-</xsl:stylesheet>
-
diff --git a/crawler/kiss/src/main/resources/reportToText.xsl b/crawler/kiss/src/main/resources/reportToText.xsl
deleted file mode 100644 (file)
index 741a678..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
-  <xsl:output method="text"/>
-  
-  <xsl:include href="utilities.xsl"/>
-  <xsl:template match="report">
-    <xsl:text>KiSS crawler report</xsl:text>
-    <xsl:value-of select="$newline"/>
-    <xsl:value-of select="$newline"/>
-    
-    <xsl:apply-templates select="recorded"/>
-    <xsl:if test="count(interesting) > 0">
-      <xsl:text>Possibly interesting programs</xsl:text>
-      <xsl:value-of select="$newline"/>
-      <xsl:value-of select="$newline"/>
-      
-      <xsl:apply-templates select="interesting"/>
-    </xsl:if>
-    
-    <xsl:apply-templates select="messages"/>
-  </xsl:template>
-  
-  <xsl:template name="programTable">
-    <xsl:apply-templates select="program"/>
-  </xsl:template>
-  <xsl:template match="recorded">
-    <xsl:choose>
-      <xsl:when test="@result = 'OK'">
-        <xsl:text>Successfully recorded programs </xsl:text>
-        <xsl:value-of select="$newline"/>
-        <xsl:value-of select="$newline"/>
-        <xsl:call-template name="programTable"/>
-      </xsl:when>
-      <xsl:when test="@result = 'DUPLICATE'">
-        <xsl:text>Already recorded programs</xsl:text>
-        <xsl:value-of select="$newline"/>
-        <xsl:value-of select="$newline"/>
-        <xsl:call-template name="programTable"/>
-      </xsl:when>
-      <xsl:when test="@result = 'CONFLICT'">
-        <xsl:text>Conflicts with other recorded programs</xsl:text>
-        <xsl:value-of select="$newline"/>
-        <xsl:value-of select="$newline"/>
-        <xsl:call-template name="programTable"/>
-      </xsl:when>
-      <xsl:when test="@result='ERROR'">
-        <xsl:text>Programs that could not be recorded for technical reasons.</xsl:text>
-        <xsl:value-of select="$newline"/>
-        <xsl:value-of select="$newline"/>
-        <xsl:call-template name="programTable"/>
-      </xsl:when>
-    </xsl:choose>
-    
-  </xsl:template>
-  
-  <xsl:template name="addProgramInfo">
-    <xsl:text>*</xsl:text>
-    <xsl:value-of select="interval/begin"/> - <xsl:value-of select="interval/end"/>
-    <xsl:text>: </xsl:text>
-    <xsl:value-of select="name"/>
-    <xsl:text>(</xsl:text>
-    <xsl:value-of select="channel"/>
-    <xsl:text>/</xsl:text><xsl:value-of select="keywords"/>
-    <xsl:text>)</xsl:text>
-    <xsl:value-of select="$newline"/> 
-    <xsl:variable name="indent">
-      <xsl:text>    </xsl:text>
-    </xsl:variable>
-    <xsl:call-template name="indent">
-      <xsl:with-param name="src">
-        <xsl:call-template name="word-wrap">
-          <xsl:with-param name="src"><xsl:value-of select="description"/></xsl:with-param>
-          <xsl:with-param name="width"><xsl:value-of select="72"/></xsl:with-param>
-        </xsl:call-template>    
-      </xsl:with-param>
-      <xsl:with-param name="indentString">
-        <xsl:text>    </xsl:text>
-      </xsl:with-param>
-      
-    </xsl:call-template>
-    
-    <!-- 
-    <xsl:value-of select="$indent"/>
-    <xsl:call-template name="string-replace">
-      <xsl:with-param name="src"><xsl:value-of select="description"/></xsl:with-param>
-      <xsl:with-param name="from"><xsl:value-of select="$newline"/></xsl:with-param>
-      <xsl:with-param name="to"><xsl:value-of select="$newline"/><xsl:value-of select="$indent"/></xsl:with-param>
-    </xsl:call-template>
-      -->
-    <xsl:value-of select="$newline"/>
-    <xsl:value-of select="$newline"/>  
-  </xsl:template>
-  
-  <xsl:template match="program">
-    <xsl:call-template name="addProgramInfo"/>
-  </xsl:template>
-  
-  <xsl:template match="interesting">
-    <xsl:call-template name="programTable"/>
-    <xsl:apply-templates select="category"/>
-  </xsl:template>
-  
-  <xsl:template match="category">
-    <xsl:text>Category: </xsl:text><xsl:value-of select="@name"/>
-    <xsl:value-of select="$newline"/>
-    <xsl:value-of select="$newline"/>
-    <xsl:call-template name="programTable"/>
-  </xsl:template>
-  
-  <xsl:template match="messages">
-    <xsl:text>Messages</xsl:text>
-    <xsl:value-of select="$newline"/>
-    <xsl:value-of select="$newline"/>
-      <xsl:for-each select="message">
-        <xsl:text>* </xsl:text>
-        <xsl:value-of select="."/>
-        <xsl:value-of select="$newline"/>
-      </xsl:for-each>
-  </xsl:template>
-  
-</xsl:stylesheet>
diff --git a/crawler/kiss/src/main/resources/utilities.xsl b/crawler/kiss/src/main/resources/utilities.xsl
deleted file mode 100644 (file)
index c98c113..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- Note the declaration of the namespace for XInclude. -->
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"
-  xmlns:xi="http://www.w3.org/2001/XInclude">
-
-
-  <xsl:variable name="newline">
-    <xsl:text>&#10;</xsl:text>
-  </xsl:variable>
-
-  <xsl:variable name="carriageReturn">
-    <xsl:text>&#13;&#10;</xsl:text>
-  </xsl:variable>
-
-  <!-- =====================================================
-    Replace one string by another
-    - src: string to do substituion in
-    - from: literal string to replace
-    - to:substitution string.
-    ======================================================-->
-  <xsl:template name="string-replace">
-    <xsl:param name="src"/>
-    <xsl:param name="from"/>
-    <xsl:param name="to"/>
-    <xsl:choose>
-      <xsl:when test="contains($src, $from)">
-        <xsl:value-of select="substring-before($src, $from)"/>
-        <xsl:value-of select="$to"/>
-        <xsl:call-template name="string-replace">
-          <xsl:with-param name="src" select="substring-after($src, $from)"/>
-          <xsl:with-param name="from" select="$from"/>
-          <xsl:with-param name="to" select="$to"/>
-        </xsl:call-template>
-      </xsl:when>
-      <xsl:otherwise>
-        <xsl:value-of select="$src"/>
-      </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
-  <xsl:template name="indent">
-    <xsl:param name="src"/>
-    <xsl:param name="indentString"/>
-    <xsl:value-of select="$indentString"/>
-    <xsl:call-template name="string-replace">
-      <xsl:with-param name="src">
-        <xsl:value-of select="$src"/>
-      </xsl:with-param>
-      <xsl:with-param name="from">
-        <xsl:value-of select="$newline"/>
-      </xsl:with-param>
-      <xsl:with-param name="to">
-        <xsl:value-of select="$newline"/>
-        <xsl:value-of select="$indentString"/>
-      </xsl:with-param>
-    </xsl:call-template>
-  </xsl:template>
-
-  <xsl:template name="word-wrap">
-    <xsl:param name="src"/>
-    <xsl:param name="width"/>
-
-    <xsl:call-template name="word-wrap-impl">
-      <xsl:with-param name="src">
-        <xsl:call-template name="string-replace">
-          <xsl:with-param name="src">
-            <xsl:value-of select="$src"/>
-            <xsl:text> </xsl:text>
-          </xsl:with-param>
-          <xsl:with-param name="from">
-            <xsl:text>  </xsl:text>
-          </xsl:with-param>
-          <xsl:with-param name="to">
-            <xsl:text> </xsl:text>
-          </xsl:with-param>
-        </xsl:call-template>
-      </xsl:with-param>
-      <xsl:with-param name="width">
-        <xsl:value-of select="$width"/>
-      </xsl:with-param>
-      <xsl:with-param name="index">
-        <xsl:value-of select="0"/>
-      </xsl:with-param>
-    </xsl:call-template>
-  </xsl:template>
-
-  <xsl:template name="word-wrap-impl">
-    <xsl:param name="src"/>
-    <xsl:param name="index"/>
-    <xsl:param name="width"/>
-
-    <xsl:variable name="word">
-      <xsl:value-of select="substring-before($src, ' ')"/>
-    </xsl:variable>
-    <xsl:variable name="wordlength">
-      <xsl:value-of select="string-length($word)"/>
-    </xsl:variable>
-    <xsl:variable name="remainder">
-      <xsl:value-of select="substring($src, $wordlength+2)"/>
-    </xsl:variable>
-
-    <xsl:choose>
-      <xsl:when test="$index + $wordlength + 1 &gt; $width">
-        <xsl:value-of select="$newline"/>
-        <xsl:value-of select="$word"/>
-        <xsl:text> </xsl:text>
-        <xsl:if test="string-length($remainder) > 0">
-          <xsl:call-template name="word-wrap-impl">
-            <xsl:with-param name="src">
-              <xsl:value-of select="$remainder"/>
-            </xsl:with-param>
-            <xsl:with-param name="index">
-              <xsl:value-of select="$wordlength + 1"/>
-            </xsl:with-param>
-            <xsl:with-param name="width">
-              <xsl:value-of select="$width"/>
-            </xsl:with-param>
-          </xsl:call-template>
-        </xsl:if>
-      </xsl:when>
-      <xsl:otherwise>
-        <xsl:value-of select="$word"/>
-        <xsl:text> </xsl:text>
-
-        <xsl:if test="string-length($remainder) > 0">
-          <xsl:call-template name="word-wrap-impl">
-            <xsl:with-param name="src">
-              <xsl:value-of select="$remainder"/>
-            </xsl:with-param>
-            <xsl:with-param name="index">
-              <xsl:value-of select="$index + $wordlength+1"/>
-            </xsl:with-param>
-            <xsl:with-param name="width">
-              <xsl:value-of select="$width"/>
-            </xsl:with-param>
-          </xsl:call-template>
-        </xsl:if>
-      </xsl:otherwise>
-    </xsl:choose>
-  </xsl:template>
-
-</xsl:stylesheet>
diff --git a/crawler/kissweb/pom.xml b/crawler/kissweb/pom.xml
deleted file mode 100644 (file)
index 5f3af10..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-  <parent>
-    <groupId>org.wamblee</groupId>
-    <artifactId>wamblee-crawler</artifactId>
-    <version>0.2-SNAPSHOT</version>
-  </parent>
-
-  <modelVersion>4.0.0</modelVersion>
-  <groupId>org.wamblee</groupId>
-  <artifactId>wamblee-crawler-kissweb</artifactId>
-  <packaging>war</packaging>
-  <name>/crawler/kissweb</name>
-  <url>http://wamblee.org</url>
-  
-  <dependencies>
-    <dependency>
-        <groupId>org.wamblee</groupId>
-        <artifactId>wamblee-crawler-kiss</artifactId>
-    </dependency>
-       <dependency>
-         <groupId>quartz</groupId>
-         <artifactId>quartz</artifactId>
-       </dependency>
-       <dependency>
-         <groupId>javax.servlet</groupId>
-         <artifactId>servlet-api</artifactId>
-       </dependency>
-        <dependency>
-          <groupId>jstl</groupId>
-          <artifactId>jstl</artifactId>
-        </dependency>
-        <dependency>
-          <groupId>taglibs</groupId>
-          <artifactId>standard</artifactId>
-        </dependency>
-
-  </dependencies>
-
-  <build>
-    <plugins>
-       <plugin>
-          <groupId>org.apache.maven.plugins</groupId>
-          <artifactId>maven-war-plugin</artifactId>
-          <configuration>
-               <webXml>${basedir}/src/webapp/WEB-INF/web.xml</webXml>
-               <warName>wamblee-crawler-kissweb</warName>
-               <warSourceDirectory>src/webapp</warSourceDirectory>
-          </configuration>
-       </plugin>
-    </plugins>
-  </build>
-
-</project>
diff --git a/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/CrawlerExecutor.java b/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/CrawlerExecutor.java
deleted file mode 100644 (file)
index c5dba6f..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * 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.scheduling;
-
-import java.util.Date;
-
-import org.wamblee.crawler.kiss.main.Report;
-
-/**
- * Encapsulates the actual execution of the crawler.
- * This interface makes it possible to test the scheduling logic
- * in isolation.
- *
- */
-public interface CrawlerExecutor { 
-    
-    /**
-     * Executes the crawler. 
-     * @param aDate Date the crawler is being triggered.
-     * @param The report from the crawler.  
-     * @throws Exception
-     */
-    void execute(Date aDate, Report aReport) throws Exception;
-}
diff --git a/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/CrawlerExecutorImpl.java b/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/CrawlerExecutorImpl.java
deleted file mode 100644 (file)
index d79e714..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * 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.scheduling;
-
-import java.util.Date;
-
-import org.wamblee.crawler.kiss.main.KissCrawler;
-import org.wamblee.crawler.kiss.main.Report;
-import org.wamblee.crawler.kiss.notification.Notifier;
-
-/**
- * Implementation which executes the KiSS crawler for retrieving web content. 
- *
- * @author Erik Brakkee
- */
-public class CrawlerExecutorImpl implements CrawlerExecutor {
-    
-    private String _crawlerConfig; 
-    private String _programConfig;
-    private Notifier _notifier; 
-   
-    /**
-     * Constructs the crawler executor. 
-     * @param aCrawlerConfig Crawler configuration file. 
-     * @param aProgramConfig Program configuration file.
-     * @param aNotifier Object used to send notifications.  
-     */
-    public CrawlerExecutorImpl(String aCrawlerConfig, String aProgramConfig, Notifier aNotifier) { 
-        _crawlerConfig = aCrawlerConfig; 
-        _programConfig = aProgramConfig;
-        _notifier = aNotifier;
-    }
-
-    /* (non-Javadoc)
-     * @see org.wamblee.crawler.kiss.scheduling.CrawlerScheduler.CrawlerExecutor#execute(java.util.Date)
-     */
-    public void execute(Date aDate, Report aReport) throws Exception {
-        new KissCrawler(_crawlerConfig, _programConfig, _notifier, aReport);
-    }
-}
diff --git a/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/CrawlerScheduler.java b/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/CrawlerScheduler.java
deleted file mode 100644 (file)
index 8774dcd..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * 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.scheduling;
-
-/**
- * Interface to the scheduler specific for working with the crawler. 
- *
- * @author Erik Brakkee
- */
-public interface CrawlerScheduler {
-    
-    /**
-     * Initializes the scheduler. 
-     * @throws Exception In case of problems.
-     */
-    void initialize() throws Exception;
-    
-    /**
-     * Checks if the crawler is running. 
-     * @return True iff the crawler is running. 
-     * @throws Exception In case of problems. 
-     */
-    boolean isCrawlerRunning() throws Exception; 
-    /**
-     * Schedules the crawler for immediate execution. 
-     * @throws Exception In case of problems. 
-     */
-    void scheduleNow() throws Exception; 
-    
-    /**
-     * Shuts down the scheduler. 
-     * @throws Exception In case of problems. 
-     */
-    void shutdown() throws Exception; 
-}
diff --git a/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/CrawlerStatus.java b/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/CrawlerStatus.java
deleted file mode 100644 (file)
index 065a229..0000000
+++ /dev/null
@@ -1,193 +0,0 @@
-/*
- * 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.scheduling;
-
-import java.io.Serializable;
-import java.util.Calendar;
-import java.util.Date;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.wamblee.crawler.kiss.main.Report;
-
-/**
- * This class encapsulates the logic for deciding whether to
- * run the crawler. This provides the mechanism to keep the 
- * scheduler simple (e.g. scheduling every hour) and providing
- * more complex logic for determining whether to run the 
- * crawler. 
- */
-public class CrawlerStatus implements Serializable {
-    
-    private static final Log LOG = LogFactory.getLog(CrawlerStatus.class);
-    
-    private CrawlerExecutor _crawler; 
-    private Date _lastExecuted;
-    private boolean _lastResult;
-    private Exception _lastException;
-    private Report _lastReport; 
-    private int _hourMin; 
-    private int _hourMax;
-    private boolean _mustExecute; 
-    
-    /**
-     * Constructs the scheduler.
-     * The crawler will run if it is triggered in the range between the minimum (included)
-     * and maximum (included) hour of the day if either
-     * <ul>
-     *   <li>it is triggered for the first time on the current day.</li>
-     *   <li>an earlier crawling attempt on the same day failed. </li>
-     * </ul>
-     * @param aCrawler The interface through which the crawler is executed.
-     * @param aHourMin The crawler may only run if hour &gt;= <code>aHourMin</code>
-     * @param aHourMax The crawler may only run if hour &lt;= <code>aHourMax</code>
-     */
-    public CrawlerStatus(CrawlerExecutor aCrawler, int aHourMin, int aHourMax) { 
-        _crawler = aCrawler; 
-        _lastExecuted = new Date(); 
-        _lastResult = true; // the crawler will automatically run the next day. 
-        _lastException = null;
-        _lastReport = null; 
-        _hourMin = aHourMin;
-        _hourMax = aHourMax;
-        _mustExecute = false; 
-    }
-    
-    /**
-     * Determines whether or not the crawler must be run the next time it is triggered.
-     * @param aMustExecute If true then the crawler will run the next time it is triggered
-     *   by the scheduler. 
-     */
-    public void setMustExecute(boolean aMustExecute) { 
-        _mustExecute = aMustExecute; 
-    }
-    
-    /**
-     * Called by a scheduled job. This determines whether the crawler must be run or 
-     * not. This encapsulates the rukes for retrying and scheduling the crawler. 
-     * @param aDate Time at which we are executing now. 
-     */
-    public void execute(Date aDate) { 
-        
-        if (mustExecute(aDate)) { 
-            LOG.info("Executing crawler at " + aDate);
-            Report report = new Report();
-            try {
-                _crawler.execute(aDate, report);
-                _lastResult = true; 
-                _lastException = null; 
-            } catch (Exception e) {
-                _lastResult = false; 
-                _lastException = e; 
-            } finally { 
-                _lastExecuted = aDate;
-                _lastReport = report;
-            }
-        } 
-    }
-    
-    /**
-     * Gets the time the crawler was last executed.
-     * @return Time of last execution. 
-     */
-    public Date getLastExecuted() { 
-        return _lastExecuted; 
-    }
-    
-    /**
-     * Gets the result of the last execution. 
-     * @return True iff last execution was a success. 
-     */
-    public boolean getLastResult() { 
-        return _lastResult; 
-    }
-    
-    /**
-     * Gets the exception thrown by the last execution. 
-     * @return null if the last execution was successful or an exception 
-     *   otherwise.
-     */
-    public Exception getLastException() { 
-        return _lastException; 
-    }
-    
-    /**
-     * Gets the last report from the scheduler. 
-     * @return Report. 
-     */
-    public Report getLastReport() { 
-        return _lastReport; 
-    }
-    
-    /**
-     * Determines whether or not the crawler must be run. 
-     * @param aDate Current time. 
-     * @return True iff the crawler must be run. 
-     */
-    private boolean mustExecute(Date aDate) {
-        if (_mustExecute) { 
-            _mustExecute = false;
-            return true; 
-        }
-        if ( _lastExecuted == null ) {
-            return false; // crawler must be started manually at least once after deployment.
-        }
-        Calendar calendar = Calendar.getInstance();
-        calendar.setTime(aDate);
-        int hour = calendar.get(Calendar.HOUR_OF_DAY);
-        if ( hour < _hourMin ) {
-            return false; 
-        }
-        if (hour > _hourMax ) { 
-            return false; 
-        }
-     
-        if ( !lastExecutionWasOnSameDay(aDate)) { 
-            return true; // First execution of today. 
-        } 
-        // last execution was on the same day.
-        if ( !_lastResult ) { 
-            return true; // last execution of today was unsuccessful, retry. 
-        }
-        return false; // already run successfully today.
-    }
-    
-    /**
-     * Determines if the last execution was on the same day. 
-     * @param aDate Current time. 
-     * @return True iff last execution was on the same day. 
-     */
-    private boolean lastExecutionWasOnSameDay(Date aDate) {
-        if ( _lastExecuted == null ) { 
-            return false;
-        }
-        int curDay = getDayOfYear(aDate);
-        int lastDay = getDayOfYear(_lastExecuted);
-        return curDay == lastDay; // check can be invalid only if scheduling interval is one year,
-                                  // which is ridiculous.
-    }
-
-    /**
-     * Gets the day of the year
-     * @param aDate Date to compute day for. 
-     */
-    private int getDayOfYear(Date aDate) {
-        Calendar calendar = Calendar.getInstance();
-        calendar.setTime(aDate);
-        return calendar.get(Calendar.DAY_OF_YEAR);
-    }
-}
diff --git a/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/quartz/CrawlerJob.java b/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/quartz/CrawlerJob.java
deleted file mode 100644 (file)
index 27c005a..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * 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.scheduling.quartz;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.quartz.JobExecutionContext;
-import org.quartz.JobExecutionException;
-import org.quartz.StatefulJob;
-import org.wamblee.crawler.kiss.scheduling.CrawlerStatus;
-import org.wamblee.general.BeanKernel;
-
-/**
- * Quartz job to execute the crawler.  
- *
- * @author Erik Brakkee
- */
-public class CrawlerJob implements StatefulJob {
-
-    private static final Log LOG = LogFactory.getLog(CrawlerJob.class);
-
-    /**
-     * Constructs the job.
-     *
-     */
-    public CrawlerJob() {
-        // Empty.
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.quartz.Job#execute(org.quartz.JobExecutionContext)
-     */
-    public void execute(JobExecutionContext aContext)
-            throws JobExecutionException {
-        LOG.info("Job triggered");
-        try {
-            CrawlerStatus schedule = BeanKernel.getBeanFactory().find(
-                    CrawlerStatus.class);
-            schedule.execute(aContext.getFireTime());
-        } catch (Exception e) {
-            throw new JobExecutionException("Error executing crawler", e, false);
-        }
-    }
-}
diff --git a/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/quartz/QuartzCrawlerScheduler.java b/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/scheduling/quartz/QuartzCrawlerScheduler.java
deleted file mode 100644 (file)
index 45c2971..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * 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.scheduling.quartz;
-
-import java.util.Date;
-import java.util.List;
-
-import org.quartz.JobDetail;
-import org.quartz.Scheduler;
-import org.quartz.SchedulerException;
-import org.quartz.SchedulerFactory;
-import org.quartz.SimpleTrigger;
-import org.quartz.Trigger;
-import org.quartz.TriggerUtils;
-import org.quartz.impl.StdSchedulerFactory;
-import org.wamblee.crawler.kiss.scheduling.CrawlerScheduler;
-
-/**
- * Interface to the Quartz scheduler.
- *
- * @author Erik Brakkee
- */
-public class QuartzCrawlerScheduler implements CrawlerScheduler {
-    
-    /**
-     * 
-     */
-    private static final String TRIGGER_NAME = "interval";
-
-    /**
-     * 
-     */
-    private static final String JOB_NAME = "kisscrawler";
-
-    private Scheduler _scheduler; 
-    
-    private int _intervalInSeconds;
-
-    /**
-     * Constructs the quartz interface. 
-     * @param aIntervalInSeconds Scheduling interval in seconds. 
-     * @throws SchedulerException
-     */
-    public QuartzCrawlerScheduler(int aIntervalInSeconds) throws SchedulerException { 
-        SchedulerFactory schedulerFactory = new StdSchedulerFactory();
-        _scheduler = schedulerFactory.getScheduler();
-        _intervalInSeconds = aIntervalInSeconds; 
-    }
-    
-    /**
-     * Initializes the scheduler.
-     * @throws SchedulerException
-     */
-    public void initialize() throws SchedulerException { 
-        _scheduler.start();
-
-        JobDetail jobDetail = new JobDetail(JOB_NAME, null, CrawlerJob.class);
-        Trigger trigger = TriggerUtils.makeSecondlyTrigger(_intervalInSeconds);
-        //trigger.setStartTime(TriggerUtils.getEvenHourDate(new Date()));
-        trigger.setStartTime(new Date());
-        trigger.setName(TRIGGER_NAME);
-
-        _scheduler.scheduleJob(jobDetail, trigger);
-    }
-    
-    /* (non-Javadoc)
-     * @see org.wamblee.crawler.kiss.scheduling.CrawlerScheduler#isCrawlerRunning()
-     */
-    public boolean isCrawlerRunning() throws Exception {
-        List jobs = _scheduler.getCurrentlyExecutingJobs(); 
-        return jobs.size() > 0; 
-    }
-    
-    /* (non-Javadoc)
-     * @see org.wamblee.crawler.kiss.scheduling.CrawlerScheduler#scheduleNow()
-     */
-    public void scheduleNow() throws Exception {
-        Trigger trigger = new SimpleTrigger("immediate", null);
-        trigger.setJobName(JOB_NAME);
-        _scheduler.scheduleJob(trigger);
-    }
-    
-    /**
-     * Shuts down the scheduler. 
-     * @throws SchedulerException
-     */
-    public void shutdown() throws SchedulerException { 
-        _scheduler.shutdown();
-    }
-}
diff --git a/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/servlet/Application.java b/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/servlet/Application.java
deleted file mode 100644 (file)
index 8500409..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * 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.servlet;
-
-import javax.servlet.ServletContextEvent;
-import javax.servlet.ServletContextListener;
-
-import org.wamblee.crawler.kiss.scheduling.CrawlerScheduler;
-import org.wamblee.general.BeanKernel;
-
-/**
- * The mechanism for kick starting the scheduling of the KiSS crawler. 
- *
- * @author Erik Brakkee
- */
-public class Application implements ServletContextListener {
-
-    /**
-     * Constructs the listener.
-     *
-     */
-    public Application() { 
-        // Empty. 
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see javax.servlet.ServletContextListener#contextInitialized(javax.servlet.ServletContextEvent)
-     */
-    public void contextInitialized(ServletContextEvent aEvent) {
-        aEvent.getServletContext().log("KiSS Crawler initializing");
-        try {
-            getScheduler().initialize();
-        } catch (Exception e) {
-            aEvent.getServletContext().log("Error scheduling job", e);
-            return; 
-        }
-        aEvent.getServletContext().log("KiSS Crawler initialized");
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see javax.servlet.ServletContextListener#contextDestroyed(javax.servlet.ServletContextEvent)
-     */
-    public void contextDestroyed(ServletContextEvent aEvent) {
-        aEvent.getServletContext().log("KiSS Crawler shutting down");
-        try {
-            getScheduler().shutdown();
-        } catch (Exception e) {
-            aEvent.getServletContext().log("Error scheduling job", e);
-            return; 
-        }
-        aEvent.getServletContext().log("KiSS Crawler shut down complete");
-    }
-
-    /**
-     * Gets the scheduler from Spring. 
-     * @return Scheduler. 
-     */
-    private CrawlerScheduler getScheduler() { 
-        return BeanKernel.getBeanFactory().find(CrawlerScheduler.class);
-    }
-
-    public static void main(String[] aArgs) throws Exception {
-        Application application = new Application();
-        application.getScheduler().initialize();
-    }
-}
diff --git a/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/servlet/CrawlerServlet.java b/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/servlet/CrawlerServlet.java
deleted file mode 100644 (file)
index 7220939..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * 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.servlet;
-
-import java.io.IOException;
-import java.io.OutputStream;
-
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.wamblee.crawler.kiss.main.Report;
-import org.wamblee.crawler.kiss.notification.Notifier;
-import org.wamblee.crawler.kiss.scheduling.CrawlerScheduler;
-import org.wamblee.crawler.kiss.scheduling.CrawlerStatus;
-import org.wamblee.general.BeanKernel;
-
-/**
- * 
- *
- * @author Erik Brakkee
- */
-public class CrawlerServlet extends HttpServlet {
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see javax.servlet.http.HttpServlet#doPost(javax.servlet.http.HttpServletRequest,
-     *      javax.servlet.http.HttpServletResponse)
-     */
-    @Override
-    protected void doPost(HttpServletRequest aRequest,
-            HttpServletResponse aResponse) throws ServletException, IOException {
-
-        CrawlerScheduler scheduler = BeanKernel.getBeanFactory().find(
-                CrawlerScheduler.class);
-        CrawlerStatus status = BeanKernel.getBeanFactory().find(
-                CrawlerStatus.class);
-
-        try {
-            if (aRequest.getParameter("details") != null) {
-                Report report = status.getLastReport();
-                if (report != null) {
-                    Notifier notifier = BeanKernel.getBeanFactory().find(Notifier.class);
-                    aResponse.setContentType("text/html");
-                    OutputStream os = aResponse.getOutputStream();
-                    os.write(notifier.asHtml(report.asXml()).getBytes());
-                    return;
-                }
-            }
-            if (aRequest.getParameter("runnow") != null) {
-                status.setMustExecute(true);
-                scheduler.scheduleNow();
-                aResponse.sendRedirect("");
-                return;
-            }
-            aRequest.setAttribute("running", scheduler.isCrawlerRunning());
-            aRequest.setAttribute("lastExecuted", status.getLastExecuted());
-            aRequest.setAttribute("lastResult", status.getLastResult());
-            aRequest.setAttribute("lastException", status.getLastException());
-            aRequest.setAttribute("lastReport", status.getLastReport());
-            String msg = "";
-            Throwable e = status.getLastException();
-            while (e != null) {
-                msg = msg + e.getClass().getName() + ": " + e.getMessage()
-                        + "<br/>";
-                e = e.getCause();
-            }
-            aRequest.setAttribute("lastMessage", msg);
-        } catch (Exception e) {
-            throw new ServletException("Error getting status", e);
-        }
-        aRequest.getRequestDispatcher("WEB-INF/overview.jsp").forward(aRequest,
-                aResponse);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see javax.servlet.http.HttpServlet#doGet(javax.servlet.http.HttpServletRequest,
-     *      javax.servlet.http.HttpServletResponse)
-     */
-    @Override
-    protected void doGet(HttpServletRequest aRequest,
-            HttpServletResponse aResponse) throws ServletException, IOException {
-        doPost(aRequest, aResponse);
-    }
-}
diff --git a/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/spring/CrawlerBeanFactory.java b/crawler/kissweb/src/main/java/org/wamblee/crawler/kiss/spring/CrawlerBeanFactory.java
deleted file mode 100644 (file)
index d4e2379..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright 2005 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.spring;
-import org.wamblee.general.spring.SpringBeanFactory;
-
-
-/**
- * Bean factory for the crawler application. 
- *
- * @author Erik Brakkee
- */
-public class CrawlerBeanFactory extends SpringBeanFactory {
-    private static final String SELECTOR_NAME = "beanRefContext.xml";
-    private static final String FACTORY_NAME = "crawler";
-    
-    /**
-     * Constructs the bean factory. 
-     *
-     */
-    public CrawlerBeanFactory() {
-        super(SELECTOR_NAME, FACTORY_NAME);
-    }
-}
diff --git a/crawler/kissweb/src/main/resources/beanRefContext.xml b/crawler/kissweb/src/main/resources/beanRefContext.xml
deleted file mode 100644 (file)
index 2e139db..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
- <beans> 
-     
-     <bean id="crawler"
-         class="org.springframework.context.support.ClassPathXmlApplicationContext">
-         <constructor-arg>
-             <list>
-                 <value>org.wamblee.crawler.properties.xml</value>
-                 <value>org.wamblee.crawler.notification.xml</value>
-                 <value>org.wamblee.crawler.kiss.xml</value>
-             </list>
-         </constructor-arg>
-     </bean>
-     
- </beans>
\ No newline at end of file
diff --git a/crawler/kissweb/src/main/resources/org.wamblee.beanfactory.properties b/crawler/kissweb/src/main/resources/org.wamblee.beanfactory.properties
deleted file mode 100644 (file)
index 73239e6..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-
-##############################################################################
-# Class name of the beanfactory used by the crawler application
-##############################################################################
-
-org.wamblee.beanfactory.class=org.wamblee.crawler.kiss.spring.CrawlerBeanFactory
-
diff --git a/crawler/kissweb/src/main/resources/org.wamblee.crawler.kiss.xml b/crawler/kissweb/src/main/resources/org.wamblee.crawler.kiss.xml
deleted file mode 100644 (file)
index 022b4aa..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
-
-<beans>
-  <!-- The object that tells quartz how to schedule the crawler --> 
-  <bean id="org.wamblee.crawler.kiss.scheduling.CrawlerScheduler"
-      class="org.wamblee.crawler.kiss.scheduling.quartz.QuartzCrawlerScheduler">
-      <constructor-arg><value type="int">3600</value></constructor-arg>
-  </bean>   
-  
-  <!-- The object which executes the crawler --> 
-  <bean id="org.wamblee.crawler.kiss.scheduling.CrawlerExecutor"
-      class="org.wamblee.crawler.kiss.scheduling.CrawlerExecutorImpl">
-      <constructor-arg><value>${org.wamblee.crawler.config.epg}</value></constructor-arg>
-      <constructor-arg><value>${org.wamblee.crawler.config.programs}</value></constructor-arg>
-      <constructor-arg><ref bean="org.wamblee.crawler.kiss.notification.Notifier"/></constructor-arg>
-  </bean>
-  
-  <!-- The object that determines whether to execute the crawler when it is signalled by 
-       the scheduler. --> 
-  <bean id="org.wamblee.crawler.kiss.scheduling.CrawlerStatus"
-      class="org.wamblee.crawler.kiss.scheduling.CrawlerStatus">
-      <constructor-arg><ref local="org.wamblee.crawler.kiss.scheduling.CrawlerExecutor"/></constructor-arg>
-      <!-- The interval of the day in hours [hourmin, hourmax] over which crawling will be done and 
-           retried if necessary --> 
-      <constructor-arg><value type="int">19</value></constructor-arg>  
-      <constructor-arg><value type="int">24</value></constructor-arg>  
-  </bean>
-  
-</beans> 
diff --git a/crawler/kissweb/src/main/resources/org.wamblee.crawler.properties b/crawler/kissweb/src/main/resources/org.wamblee.crawler.properties
deleted file mode 100644 (file)
index 0b98d7c..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-############################################################################
-# Mail server configuration
-############################################################################
-org.wamblee.crawler.smtp.host=shikra
-org.wamblee.crawler.smtp.port=25
-org.wamblee.crawler.smtp.username=
-org.wamblee.crawler.smtp.password=
-
-############################################################################
-# Mail notification configuration 
-############################################################################
-org.wamblee.crawler.notification.from=kiss@wamblee.org
-org.wamblee.crawler.notification.to=erik@brakkee.org
-org.wamblee.crawler.notification.subject=Recording summary for tomorrow
-############################################################################
-# Configuration of the crawler
-############################################################################
-org.wamblee.crawler.config.epg=/home/erik/crawler/config.xml
-org.wamblee.crawler.config.programs=/home/erik/crawler/programs.xml
-    
diff --git a/crawler/kissweb/src/webapp/META-INF/MANIFEST.MF b/crawler/kissweb/src/webapp/META-INF/MANIFEST.MF
deleted file mode 100644 (file)
index 5e94951..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-Manifest-Version: 1.0\r
-Class-Path: \r
-\r
diff --git a/crawler/kissweb/src/webapp/WEB-INF/overview.jsp b/crawler/kissweb/src/webapp/WEB-INF/overview.jsp
deleted file mode 100644 (file)
index ce74949..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-
-<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
-<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
-
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-  <head>
-    <title>KiSS Crawler overview page</title>
-    
-    <meta http-equiv="pragma" content="no-cache">
-    <meta http-equiv="cache-control" content="no-cache">
-    <meta http-equiv="expires" content="0">
-    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
-    <meta http-equiv="description" content="This is my page">
-    
-    <!--
-    <link rel="stylesheet" type="text/css" href="styles.css">
-    -->
-  </head>
-  
-  <body>
-    <h1>KiSS Crawler Overview</h1>
-    
-    <TABLE border="1">
-      <tr>
-        <td>
-           Currently running:
-        </td>
-        <td>
-           <c:out value="${running}"/>
-        </td>
-      </tr>
-      <c:if test="${lastReport != null}">
-            <tr>
-        <td>
-          Last executed at:
-        </td>
-        <td>
-          <c:out value="${lastExecuted}"/>
-        </td>
-      </tr>
-      <tr>
-        <td>
-          Last result: 
-        </td>
-        <td>
-          <c:out value="${lastResult}"/>
-        </td>
-      </tr>
-        <tr>
-        <td>
-          Last message: 
-        </td>
-        <td>
-          <c:out value="${lastMessage}" escapeXml="false"/>
-        </td>
-        </tr>
-        <tr>
-        <td>
-          Last report: 
-        </td>
-        <td>
-          <a href="?details=1">details</a>
-        </td>
-        </tr>
-      </c:if>
-    </TABLE>
-    <c:if test="${!running}">
-    <FORM action="runnow">
-      <INPUT type="submit" name="runnow" value="Run Crawler as soon as possible">
-    </FORM>
-    </c:if>
-  </body>
-</html>
diff --git a/crawler/kissweb/src/webapp/WEB-INF/web.xml b/crawler/kissweb/src/webapp/WEB-INF/web.xml
deleted file mode 100644 (file)
index 2ff8779..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<web-app version="2.4" 
-       xmlns="http://java.sun.com/xml/ns/j2ee" 
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-       xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
-       http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
-
-    <listener>
-        <listener-class>org.wamblee.crawler.kiss.servlet.Application</listener-class>
-    </listener>
-    
-    <servlet>
-        <servlet-name>CrawlerServlet</servlet-name>
-        <servlet-class>org.wamblee.crawler.kiss.servlet.CrawlerServlet</servlet-class>
-    </servlet>
-    
-    <servlet-mapping>
-        <servlet-name>CrawlerServlet</servlet-name>
-        <url-pattern>/</url-pattern>
-    </servlet-mapping>
-</web-app>
diff --git a/crawler/pom.xml b/crawler/pom.xml
deleted file mode 100644 (file)
index b8bd38a..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <parent>
-    <groupId>org.wamblee</groupId>
-    <artifactId>wamblee-utils</artifactId>
-    <version>0.2-SNAPSHOT</version>
-  </parent>
-  <modelVersion>4.0.0</modelVersion>
-  <groupId>org.wamblee</groupId>
-  <artifactId>wamblee-crawler</artifactId>
-  <packaging>pom</packaging>
-  <version>0.2-SNAPSHOT</version>
-  <name>/crawler</name>
-  <url>http://wamblee.org</url>
-  <modules>
-    <module>basic</module>
-    <module>kiss</module>
-    <module>kissweb</module>
-  </modules>
-  
-  <dependencies>
-  </dependencies>
-  
-  <dependencyManagement>
-    <dependencies>
-      <dependency>
-        <groupId>org.wamblee</groupId>
-        <artifactId>wamblee-crawler-basic</artifactId>
-        <version>${project.version}</version>
-      </dependency>    
-      <dependency>
-        <groupId>org.wamblee</groupId>
-        <artifactId>wamblee-crawler-kiss</artifactId>
-        <version>${project.version}</version>
-      </dependency>
-
-    </dependencies>   
-  </dependencyManagement>
-  
-  <build>
-    <plugins>
-      <plugin>
-        <artifactId>maven-assembly-plugin</artifactId>
-        <version>2.1</version>
-        <configuration>
-                 <descriptors>
-            <descriptor>src/assembly/kiss-application.xml</descriptor>
-                 </descriptors>
-        </configuration>
-        <executions>
-          <execution>
-            <id>binpackage</id>
-            <phase>package</phase>
-            <goals>
-              <!-- goal>single</goal -->
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-     </plugins>
-  </build>
-
-</project>
diff --git a/crawler/src/assembly/kiss-application.xml b/crawler/src/assembly/kiss-application.xml
deleted file mode 100644 (file)
index 881e868..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-<assembly>
-  <id>kissbin</id>
-  <formats>
-    <format>zip</format>
-  </formats>
-  <includeBaseDirectory>false</includeBaseDirectory>
-  
-  <moduleSets>
-    <moduleSet>
-         <includes> 
-               <include>org.wamblee:wamblee-crawler-kiss</include>
-         </includes>
-         <binaries>
-           <includeDependencies>true</includeDependencies>
-               <outputDirectory>lib</outputDirectory>
-               <unpack>false</unpack>
-         </binaries>
-       </moduleSet>
-       
-  </moduleSets>
-  
-  <fileSets>
-    <fileSet>
-         <directory>kiss/conf/kiss</directory>
-        
-         <outputDirectory>conf</outputDirectory>
-         <includes>
-           <include>config.xml.example</include>
-               <include>programs.xml</include>
-               <include>org.wamblee.crawler.properties</include>
-         </includes>
-       </fileSet>
-       
-       <fileSet>
-         <directory>kiss/conf/kiss</directory>
-        
-         <outputDirectory>bin</outputDirectory>
-         <includes>
-           <include>run.*</include>
-         </includes>
-       </fileSet>
-       
-       <fileSet>
-         <directory>kiss/target</directory>
-        
-         <outputDirectory>lib</outputDirectory>
-         <includes>
-           <include>*.jar</include>
-         </includes>
-       </fileSet>
-  </fileSets>
-  
-  <dependencySets>
-    <dependencySet>
-         <scope>runtime</scope>
-       </dependencySet>
-  </dependencySets>
-  
-</assembly>
diff --git a/pom.xml b/pom.xml
index 06a6096918c6ba62c13004e0e9891a4542072867..b4270ec1e712ef780209e7805c8d6642ea2711e9 100644 (file)
--- a/pom.xml
+++ b/pom.xml
                 <configuration>
                     <instrumentation>
                         <excludes>
-                            <exclude>org/wamblee/crawler/kiss/**/*.class</exclude>
                             <exclude>org/wamblee/mythtv/**/*.class</exclude>
                         </excludes>
                     </instrumentation>
             </activation>
                        <modules>
               <module>socketproxy</module>
-              <module>crawler</module>
               <module>mythtv</module>
                    </modules>
         </profile>