X-Git-Url: http://sraa.de/git/?a=blobdiff_plain;f=dol%2Fsrc%2Fdol%2Fhelper%2Fflattener%2FXMLFlattener.java;fp=dol%2Fsrc%2Fdol%2Fhelper%2Fflattener%2FXMLFlattener.java;h=7aade7c6f18636a69a2b399f5c8a76734c63b3fb;hb=8c411cf24ed0eb889191aaeafd8fa1e69081df42;hp=0000000000000000000000000000000000000000;hpb=dea7a4fb1ed110d3ce6e6d9255103d724bd66c0e;p=jump.git diff --git a/dol/src/dol/helper/flattener/XMLFlattener.java b/dol/src/dol/helper/flattener/XMLFlattener.java new file mode 100644 index 0000000..7aade7c --- /dev/null +++ b/dol/src/dol/helper/flattener/XMLFlattener.java @@ -0,0 +1,71 @@ +/* $Id: XMLFlattener.java 1 2010-02-24 13:03:05Z haidw $ */ +package dol.helper.flattener; + +import java.io.File; +import java.io.FileWriter; + +import org.jdom.input.DOMBuilder; +import org.w3c.dom.Document; + +/** + * + */ +public class XMLFlattener { + + public static void main(String[] args) { + + if (args.length != 2) { + System.out.println("Wrong number of arguments."); + System.out.println("Correct call:"); + System.out.println("java XMLFlattener in.xml out.xml"); + System.exit(-1); + } + else { + SaxDocumentParser sdp = new SaxDocumentParser(); + boolean needsToBeFlattened = false; + needsToBeFlattened = sdp.parseDocument(args[0]); + if (needsToBeFlattened) { + // start also with DOM Parser and generate the XML-Generator + DomDocumentParser ddp = new DomDocumentParser(); + Document doc = ddp.parseDocument(args[0]); + + DOMBuilder db = new DOMBuilder(); + org.jdom.Document document = db.build(doc); + + String xmlns = document.getRootElement().getNamespaceURI(); + + String outString = ""; + + if (xmlns.endsWith("PROCESSNETWORK") || + xmlns.endsWith("processnetwork")) { + PNFlattener flattener = new PNFlattener(args[1]); + outString = flattener.removeIterators(document); + } + else if (xmlns.endsWith("ARCHITECTURE") + || xmlns.endsWith("ARCHITECTURE_OLD") + || xmlns.endsWith("architecture")) { + ArchFlattener flattener = new ArchFlattener(args[1]); + outString = flattener.removeIterators(document); + } + else if (xmlns.endsWith("MAPPING") + || xmlns.endsWith("MAPPING_OLD") + || xmlns.endsWith("mapping")) { + MappingFlattener flattener = new MappingFlattener(args[1]); + outString = flattener.removeIterators(document); + } + + + try { + FileWriter fw = new FileWriter(new File(args[1] + ".java")); + fw.write(outString); + fw.flush(); + fw.close(); + } catch (Exception ex) { + } + } + else { + System.out.println("Nothing to be done. Terminating..."); + } + } + } +}