cvs commit: spice/sandbox/metaclass/src/java/org/realityforge/metaclass/io MetaClassIOXml.java
Peter Donald <[email protected]>
| Newsgroups | gmane.comp.java.spice.cvs |
|---|---|
| Message-ID | <[email protected]> |
donaldp 03/10/29 02:28:02
Modified: sandbox/metaclass/src/java/org/realityforge/metaclass/io
MetaClassIOXml.java
Log:
Add deserialization of XML via new code - does not work atm
Revision Changes Path
1.6 +18 -2 spice/sandbox/metaclass/src/java/org/realityforge/metaclass/io/MetaClassIOXml.java
Index: MetaClassIOXml.java
===================================================================
RCS file: /cvsroot/spice/spice/sandbox/metaclass/src/java/org/realityforge/metaclass/io/MetaClassIOXml.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- MetaClassIOXml.java 28 Oct 2003 08:15:02 -0000 1.5
+++ MetaClassIOXml.java 29 Oct 2003 10:28:02 -0000 1.6
@@ -16,15 +16,19 @@
import javax.xml.transform.sax.SAXTransformerFactory;
import javax.xml.transform.sax.TransformerHandler;
import javax.xml.transform.stream.StreamResult;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.DocumentBuilder;
import org.realityforge.metaclass.model.ClassDescriptor;
import org.xml.sax.SAXException;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
/**
* This is a utility class that writes out the ClassDescriptor
* to a stream using the xml format outlined in documentation.
*
* @author <a href="mailto:peter at realityforge.org">Peter Donald</a>
- * @version $Revision: 1.5 $ $Date: 2003/10/28 08:15:02 $
+ * @version $Revision: 1.6 $ $Date: 2003/10/29 10:28:02 $
*/
public class MetaClassIOXml
implements MetaClassIO
@@ -40,7 +44,19 @@
public ClassDescriptor deserializeClass( final InputStream input )
throws IOException
{
- throw new IOException( "Not supported yet!" );
+ final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+ try
+ {
+ final DocumentBuilder builder = factory.newDocumentBuilder();
+ final Document document = builder.parse( input );
+ final DOMMetaClassDeserializer deserializer = new DOMMetaClassDeserializer();
+ final Element element = document.getDocumentElement();
+ return deserializer.buildClassDescriptor( element );
+ }
+ catch( final Exception e )
+ {
+ throw new IOException( e.getMessage() );
+ }
}
/**
-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive? Does it
help you create better code? SHARE THE LOVE, and help us help
YOU! Click Here: http://sourceforge.net/donate/