--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/log_formatter_rss.py Tue Feb 10 03:22:43 2009 +0200
@@ -0,0 +1,41 @@
+"""
+ Uses PyRSS2Gen to generate XML RSS documents
+"""
+
+import PyRSS2Gen as RSS2Gen
+import datetime, pytz
+
+class RSSFormatter (object) :
+ """
+ Mixin for LogFormatter that implements the basic RSS-rendering stuff on top of format_html
+ """
+
+ def format_rss (self, lines, **kwargs) :
+ """
+ Process using format_html
+ """
+
+ # build the RSS2 object and return the XML
+ return RSS2Gen.RSS2(
+ title = "IRC RSS feed",
+ link = "http://irclogs.qmsk.net/",
+ description = "A stupid RSS feed that nobody sane would ever use",
+
+ # XXX: GMT
+ lastBuildDate = datetime.datetime.utcnow(),
+
+ items = [
+ RSS2Gen.RSSItem(
+ # use the formatted HTML data as the title
+ title = html_data,
+
+ # timestamp
+ pubDate = line.timestamp.astimezone(pytz.utc),
+
+ # link
+ link = "http://xxx/",
+
+ ) for line, html_data in self.format_html(lines, **kwargs)
+ ]
+ ).to_xml('utf8')
+