1 /* $Id: XMLFlattener.java 1 2010-02-24 13:03:05Z haidw $ */
2 package dol.helper.flattener;
5 import java.io.FileWriter;
7 import org.jdom.input.DOMBuilder;
8 import org.w3c.dom.Document;
13 public class XMLFlattener {
15 public static void main(String[] args) {
17 if (args.length != 2) {
18 System.out.println("Wrong number of arguments.");
19 System.out.println("Correct call:");
20 System.out.println("java XMLFlattener in.xml out.xml");
24 SaxDocumentParser sdp = new SaxDocumentParser();
25 boolean needsToBeFlattened = false;
26 needsToBeFlattened = sdp.parseDocument(args[0]);
27 if (needsToBeFlattened) {
28 // start also with DOM Parser and generate the XML-Generator
29 DomDocumentParser ddp = new DomDocumentParser();
30 Document doc = ddp.parseDocument(args[0]);
32 DOMBuilder db = new DOMBuilder();
33 org.jdom.Document document = db.build(doc);
35 String xmlns = document.getRootElement().getNamespaceURI();
37 String outString = "";
39 if (xmlns.endsWith("PROCESSNETWORK") ||
40 xmlns.endsWith("processnetwork")) {
41 PNFlattener flattener = new PNFlattener(args[1]);
42 outString = flattener.removeIterators(document);
44 else if (xmlns.endsWith("ARCHITECTURE")
45 || xmlns.endsWith("ARCHITECTURE_OLD")
46 || xmlns.endsWith("architecture")) {
47 ArchFlattener flattener = new ArchFlattener(args[1]);
48 outString = flattener.removeIterators(document);
50 else if (xmlns.endsWith("MAPPING")
51 || xmlns.endsWith("MAPPING_OLD")
52 || xmlns.endsWith("mapping")) {
53 MappingFlattener flattener = new MappingFlattener(args[1]);
54 outString = flattener.removeIterators(document);
59 FileWriter fw = new FileWriter(new File(args[1] + ".java"));
63 } catch (Exception ex) {
67 System.out.println("Nothing to be done. Terminating...");