diff options
author | David A. Madore <david+git@madore.org> | 2010-04-12 15:30:36 +0200 |
---|---|---|
committer | David A. Madore <david+git@madore.org> | 2010-04-12 15:30:36 +0200 |
commit | 00dc8d9bbb54cf9a0cc47e6326a8444df92a14f1 (patch) | |
tree | 03b1db09439a795d2f975c9f638cdc0604bd97e2 /org/madore/damlengine/DamlEngine.java | |
parent | 7766f09c66945626ee883ad1a6710c2fe18dfef3 (diff) | |
download | damlengine-00dc8d9bbb54cf9a0cc47e6326a8444df92a14f1.tar.gz damlengine-00dc8d9bbb54cf9a0cc47e6326a8444df92a14f1.tar.bz2 damlengine-00dc8d9bbb54cf9a0cc47e6326a8444df92a14f1.zip |
Move ad hoc serializer to an "Unparser" class (ugly and unfinished).
Diffstat (limited to 'org/madore/damlengine/DamlEngine.java')
-rw-r--r-- | org/madore/damlengine/DamlEngine.java | 51 |
1 files changed, 4 insertions, 47 deletions
diff --git a/org/madore/damlengine/DamlEngine.java b/org/madore/damlengine/DamlEngine.java index ecbdefd..e5454da 100644 --- a/org/madore/damlengine/DamlEngine.java +++ b/org/madore/damlengine/DamlEngine.java @@ -1,5 +1,6 @@ package org.madore.damlengine; +import java.io.OutputStreamWriter; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.DocumentBuilder; import org.w3c.dom.*; @@ -33,53 +34,9 @@ public final class DamlEngine { for (String fname : args) { doc = db.parse(fname); processDocument(); - Node node0 = null; - Node node = doc; - while ( node != null || node0 != null ) { - if ( node != null && node.getNodeType() == Node.ELEMENT_NODE ) { - Element elt = (Element)node; - System.out.print("<"+elt.getTagName()); - if ( elt.hasAttributes() ) { - NamedNodeMap attrs = elt.getAttributes(); - Node n2; - for ( int i=0 ; (n2=attrs.item(i)) != null ; i++ ) { - Attr attr = (Attr)n2; - System.out.print(" "+attr.getName() - +"=\"(value)\""); - } - } - if ( ! elt.hasChildNodes() ) { - System.out.print(" />"); - node = node.getNextSibling(); - } else { - System.out.print(">"); - node0 = node; - node = node0.getFirstChild(); - } - } else if ( node != null && node.getNodeType() == Node.DOCUMENT_NODE ) { - node0 = node; - node = node0.getFirstChild(); - } else if ( node != null ) { - if ( node.getNodeType() == Node.TEXT_NODE ) { - System.out.print("(text)"); - } else if ( node.getNodeType() == Node.COMMENT_NODE ) { - System.out.print("<!--(comment)-->"); - } else if ( node.getNodeType() == Node.CDATA_SECTION_NODE ) { - System.out.print("<![CDATA[(cdata)]]>"); - } else { - System.out.print("<!--(some other kind of node)-->"); - } - node = node.getNextSibling(); - } else { - node = node0; - node0 = node.getParentNode(); - if ( node.getNodeType() == Node.ELEMENT_NODE ) { - Element elt = (Element)node; - System.out.print("</"+elt.getTagName()+">"); - } - node = node.getNextSibling(); - } - } + Unparser unparser + = new Unparser(doc, new OutputStreamWriter(System.out)); + unparser.unparse(); } } |