- return _interval + " - " + _name + " (" + _channel + "/" + _keywords + ")" + "\n" +
- (INDENT + _description).replaceAll("\n", "\n" + INDENT);
+ 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 obj) {
+ if ( !(obj instanceof Program)) {
+ return false;
+ }
+ Program program = (Program)obj;
+ return getName().equals(program.getName()) &&
+ _programInfo.equals(program._programInfo);
+ }
+
+ /**
+ * Converts program information to XML.
+ * @return XML representation of program information.
+ */
+ public Element asXml() {
+ DocumentFactory factory = DocumentFactory.getInstance();
+ Element program = factory.createElement("program");
+ program.addElement("name").setText(getName());
+ program.addElement("description").setText(getDescription());
+ program.addElement("keywords").setText(getKeywords());
+ program.addElement("channel").setText(getChannel());
+ Element interval = program.addElement("interval");
+ interval.addElement("begin").setText(getInterval().getBegin().toString());
+ interval.addElement("end").setText(getInterval().getEnd().toString());
+ return program;