List<Icon> icons;\r
List<String> urls;\r
protected boolean enabled = true;\r
- private String suffix = "";\r
+ int source;\r
\r
- protected Channel(String id) {\r
+ public final static int CHANNEL_SOURCE_TVGIDS=1;\r
+ public final static int CHANNEL_SOURCE_RTL=2;\r
+ \r
+ protected Channel(int source, String id) {\r
this.id = id;\r
+ this.source = source;\r
names = new ArrayList<String>();\r
icons = new ArrayList<Icon>();\r
urls = new ArrayList<String>();\r
return names.get(0);\r
}\r
\r
- static Channel getChannel(String id, String name) {\r
- Channel c = new Channel(id);\r
+ static Channel getChannel(int source, String id, String name) {\r
+ Channel c = new Channel(source, id);\r
c.names.add(name);\r
return c;\r
}\r
\r
- static Channel getChannel(String id, String name, String iconUrl) {\r
- Channel c = new Channel(id);\r
+ static Channel getChannel(int source, String id, String name, String iconUrl) {\r
+ Channel c = new Channel(source, id);\r
c.names.add(name);\r
c.icons.add(new Icon(iconUrl));\r
return c;\r
}\r
\r
public String getXmltvChannelId() {\r
- return id+suffix;\r
+ switch (source) {\r
+ case CHANNEL_SOURCE_TVGIDS:\r
+ return id+".tvgids.nl";\r
+ case CHANNEL_SOURCE_RTL:\r
+ return id;\r
+ default:\r
+ return id;\r
+ }\r
}\r
\r
public void serialize(XMLStreamWriter writer) throws XMLStreamException {\r
}\r
\r
public String toString() {\r
- return "Channel " + id + " (" + defaultName() + ")";\r
+ return "Channel " + source + "::" + id + " (" + defaultName() + ")";\r
}\r
-\r
- public void setSuffix(String suffix) {\r
- this.suffix = suffix;\r
- }\r
-\r
}
\ No newline at end of file
public static int LOG_DEFAULT = LOG_INFO;
- private final static int CURRENT_FILE_FORMAT=1;
+ private final static int CURRENT_FILE_FORMAT=2;
String project_version;
out.println("nice-time-milliseconds: " + niceMilliseconds);
for(Channel c: channels) {
// FIXME: handle multiple channels names, icons and urls
- out.print("channel: " + c.id +
+ out.print("channel: " + c.source +
+ ":" + c.id +
": " + (c.enabled?"enabled":"disabled") +
": " + escape(c.defaultName()));
if (!c.icons.isEmpty()) {
// System.out.println("Adding channel " + parts + " in file format " + fileformat);
switch(fileformat) {
case 0:
- c = Channel.getChannel(parts.get(1), parts.get(2));
+ c = Channel.getChannel(Channel.CHANNEL_SOURCE_TVGIDS, parts.get(1), parts.get(2));
if (parts.size()>3) {
c.addIcon(parts.get(3));
}
break;
case 1:
- c = Channel.getChannel(parts.get(1), parts.get(3));
+ c = Channel.getChannel(Channel.CHANNEL_SOURCE_TVGIDS, parts.get(1), parts.get(3));
if (parts.size()>4) {
c.addIcon(parts.get(4));
}
} else {
System.out.println("Error in config file, unknown channel status \"" + parts.get(2) + "\", should be enabled or disabled");
}
+ break;
+ case 2:
+ c = Channel.getChannel(Integer.parseInt(parts.get(1)), parts.get(2), parts.get(4));
+ if (parts.size()>5) {
+ c.addIcon(parts.get(5));
+ }
+ value = parts.get(3);
+ if (value.equals("enabled")) {
+ c.setEnabled(true);
+ } else if (value.equals("disabled")) {
+ c.setEnabled(false);
+ } else {
+ System.out.println("Error in config file, unknown channel status \"" + parts.get(3) + "\", should be enabled or disabled");
+ }
}
result.channels.add(c);
} else if (key.equals("category")) {
String name = (String) j.get(0);\r
String icon = icon_url+id+".gif";\r
\r
- Channel c = Channel.getChannel(id, name, icon);\r
+ Channel c = Channel.getChannel(Channel.CHANNEL_SOURCE_RTL, id, name, icon);\r
result.add(c);\r
}\r
\r
}\r
\r
private String genericChannelId(String jsonid) {\r
- return jsonid.replaceAll("^Z", "")+xmltv_channel_suffix; // remove initial Z\r
+ return jsonid.replaceAll("^Z", ""); // remove initial Z\r
}\r
\r
/*\r
int id = zender.getInt("id");
String name = org.apache.commons.lang.StringEscapeUtils.unescapeHtml(zender.getString("name"));
String icon = "http://tvgidsassets.nl/img/channels/53x27/" + id + ".png";
- Channel c = Channel.getChannel(Integer.toString(id), name, icon);
- c.setSuffix(".tvgids.nl");
+ Channel c = Channel.getChannel(Channel.CHANNEL_SOURCE_TVGIDS, Integer.toString(id), name, icon);
result.add(c);
}
The full license text can be found in the LICENSE file.
*/
-public class TvGidsChannel {
- int id;
- String name;
- String shortName;
- String iconUrl;
- boolean selected;
-
- public TvGidsChannel(int id, String name, String shortName) {
- this.id = id;
- this.name = name;
- this.shortName = shortName;
+public class TvGidsChannel extends Channel {
+
+ protected TvGidsChannel(String id) {
+ super(CHANNEL_SOURCE_TVGIDS, id);
}
- public String toString() {
- return "id: " + id + "; name: " + name + "; shortName: " + shortName;
- }
-
- public String getChannelId() {
+
+ static Channel getChannel(String id, String name) {
+ Channel c = new TvGidsChannel(id);
+ c.names.add(name);
+ return c;
+ }
+
+ static Channel getChannel(String id, String name, String iconUrl) {
+ Channel c = new TvGidsChannel(id);
+ c.names.add(name);
+ c.icons.add(new Icon(iconUrl));
+ return c;
+ }
+
+ public String getXmltvChannelId() {
return id+".tvgids.nl";
}
- public void fixup() {
- this.name = org.apache.commons.lang.StringEscapeUtils.unescapeHtml(name);
- this.shortName = org.apache.commons.lang.StringEscapeUtils.unescapeHtml(shortName);
- }
- public void setIconUrl(String url) {
- this.iconUrl = url;
- }
}
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.writeAttribute("channel", ""+p.channel.getXmltvChannelId());
writeln();
writer.writeStartElement("title");