From: Jan-Pascal van Best Date: Sat, 10 Mar 2012 13:07:51 +0000 (+0100) Subject: Implement writing programs to xmltv format X-Git-Tag: 0.2~16 X-Git-Url: http://www.vanbest.org/gitweb/?a=commitdiff_plain;h=2c5ed41edb9b0aebe1fb6010181b82c30830921e;p=tv_grab_nl_java Implement writing programs to xmltv format --- diff --git a/tv_grab_nl_java/src/org/vanbest/xmltv/Main.java b/tv_grab_nl_java/src/org/vanbest/xmltv/Main.java index 105c2d3..281d8ba 100644 --- a/tv_grab_nl_java/src/org/vanbest/xmltv/Main.java +++ b/tv_grab_nl_java/src/org/vanbest/xmltv/Main.java @@ -22,6 +22,7 @@ public class Main { XmlTvWriter writer = new XmlTvWriter(System.out); writer.writeChannels(myChannels); + writer.writePrograms(programmes); System.out.flush(); } catch (Exception e) { diff --git a/tv_grab_nl_java/src/org/vanbest/xmltv/Programme.java b/tv_grab_nl_java/src/org/vanbest/xmltv/Programme.java index ea75fd1..bebc3f0 100644 --- a/tv_grab_nl_java/src/org/vanbest/xmltv/Programme.java +++ b/tv_grab_nl_java/src/org/vanbest/xmltv/Programme.java @@ -94,6 +94,7 @@ public class Programme { boolean is_hightlight; String highlight_afbeelding; ProgrammeDetails details = null; + Channel channel = null; public String toString() { StringBuffer s = new StringBuffer(); diff --git a/tv_grab_nl_java/src/org/vanbest/xmltv/TvGids.java b/tv_grab_nl_java/src/org/vanbest/xmltv/TvGids.java index 44d4921..9aca65c 100644 --- a/tv_grab_nl_java/src/org/vanbest/xmltv/TvGids.java +++ b/tv_grab_nl_java/src/org/vanbest/xmltv/TvGids.java @@ -114,6 +114,7 @@ public class TvGids { if (fetchDetails) { p.details = getDetails(p.db_id); } + p.channel = i; result.add( p ); } } diff --git a/tv_grab_nl_java/src/org/vanbest/xmltv/XmlTvWriter.java b/tv_grab_nl_java/src/org/vanbest/xmltv/XmlTvWriter.java index a22dfef..80e9f35 100644 --- a/tv_grab_nl_java/src/org/vanbest/xmltv/XmlTvWriter.java +++ b/tv_grab_nl_java/src/org/vanbest/xmltv/XmlTvWriter.java @@ -1,6 +1,9 @@ package org.vanbest.xmltv; import java.io.OutputStream; +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.util.Collection; import java.util.List; import javax.xml.stream.FactoryConfigurationError; @@ -56,6 +59,52 @@ public class XmlTvWriter { } } + /* + * + * + +Mozart - Così fan tutte + + +Opera, opgenomen in 2006 in het Amsterdamse Muziektheater als onderdeel van de +eigentijdse enscenering van de drie Da Ponte opera's met o.a. Sally Matthews en +Maite Beaumont. + + +Arts/Culture + + + + */ + + public void writePrograms(Collection programs) throws XMLStreamException { + DateFormat df = new SimpleDateFormat("yyyyMMddHHmmss Z"); + for(Programme p: programs) { + writer.writeStartElement("programme"); + writer.writeAttribute("start", df.format(p.datum_start)); + writer.writeAttribute("stop", df.format(p.datum_end)); + writer.writeAttribute("channel", ""+p.channel.id); + + writer.writeStartElement("title"); + writer.writeAttribute("lang", "nl"); + writer.writeCharacters(p.titel); + writer.writeEndElement(); + + writer.writeStartElement("desc"); + writer.writeAttribute("lang", "nl"); + writer.writeCharacters(p.details.synop); + writer.writeEndElement(); + + writer.writeStartElement("category"); + writer.writeAttribute("lang", "en"); + writer.writeCharacters(p.genre); // soort? FIXME translation to mythtv categories + writer.writeEndElement(); + + writer.writeEndElement(); + writer.writeCharacters("\n"); + } + } + public void close() throws XMLStreamException { writer.writeEndElement(); writer.writeEndDocument();