for (final Object childObj : element.elements()) { final Element child = (Element) childObj; if (removeUnnecessaryElements(child) == true) { element.remove(child);
/** * Writes all Gantt objects as tree as xml. Writes only those values which are different to the original values of the * task with the same id. * * @param obj * @param rootObject */ public void writeGanttObjects(final GanttChartDO obj, final GanttTask rootObject) { final Document document = DocumentHelper.createDocument(); final Element element = getXmlGanttObjectWriter().write(document, rootObject); // Now, remove all elements with no information from the DOM: final String xml; if (removeUnnecessaryElements(element) == true) { // Nothing to write (no further information in the GanttObject tree given). xml = ""; } else { xml = XmlHelper.toString(element); } obj.setGanttObjectsAsXml(xml); }
public String exportAsXml(final GanttChart ganttChart, final boolean prettyFormat) { final Document document = DocumentHelper.createDocument(); final XmlObjectWriter writer = getXmlGanttObjectWriter(); final XmlRegistry xmlRegistry = new XmlRegistry(); xmlRegistry.registerConverter(Date.class, new ISODateConverter()); writer.setXmlRegistry(xmlRegistry); final MyRootElement root = new MyRootElement(); root.ganttChart = ganttChart; root.setCreated().setTimeZone(ThreadLocalUserContext.getTimeZone()).setVersion("1.0"); final Element element = writer.write(document, root); // Now, remove all elements with no information from the DOM: final String xml; if (removeUnnecessaryElements(element) == true) { // Nothing to write (no further information in the GanttObject tree given). xml = ""; } else { xml = XmlHelper.toString(element, prettyFormat); } return XmlHelper.XML_HEADER + xml; }