summaryrefslogtreecommitdiffstats
path: root/org/madore/damlengine/DamlEngine.java
diff options
context:
space:
mode:
authorDavid A. Madore <david+git@madore.org>2010-04-12 15:30:36 +0200
committerDavid A. Madore <david+git@madore.org>2010-04-12 15:30:36 +0200
commit00dc8d9bbb54cf9a0cc47e6326a8444df92a14f1 (patch)
tree03b1db09439a795d2f975c9f638cdc0604bd97e2 /org/madore/damlengine/DamlEngine.java
parent7766f09c66945626ee883ad1a6710c2fe18dfef3 (diff)
downloaddamlengine-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.java51
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();
}
}