From: Wolfgang M. M. <wol...@us...> - 2004-09-12 09:26:05
|
Update of /cvsroot/exist/eXist-1.0/src/org/exist/xmldb/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21081/src/org/exist/xmldb/test Modified Files: TestEXistXMLSerialize.java RemoteCollectionTest.java Log Message: * Added support for XQuery pragmas to set serialization and watchdog settings. * org.exist.storage.serializers.Serializer now passes all output to an instance of the Receiver interface instead of a SAX ContentHandler. Receiver resembles SAX, but has methods that are closer to eXist's internal storage. For example, it directly accepts a QName in startElement to avoid unnecessary string allocations. * Fixed various performance leaks in cross-document joins. Index: RemoteCollectionTest.java =================================================================== RCS file: /cvsroot/exist/eXist-1.0/src/org/exist/xmldb/test/RemoteCollectionTest.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** RemoteCollectionTest.java 3 Sep 2004 09:05:33 -0000 1.3 --- RemoteCollectionTest.java 12 Sep 2004 09:25:22 -0000 1.4 *************** *** 96,101 **** String[] actualContents = getCollection().listResources(); - System.out.println(actualContents); for (int i = 0; i < actualContents.length; i++) { xmlNames.remove(actualContents[i]); binaryNames.remove(actualContents[i]); --- 96,101 ---- String[] actualContents = getCollection().listResources(); for (int i = 0; i < actualContents.length; i++) { + System.out.println("---------------------->" + actualContents[i]); xmlNames.remove(actualContents[i]); binaryNames.remove(actualContents[i]); Index: TestEXistXMLSerialize.java =================================================================== RCS file: /cvsroot/exist/eXist-1.0/src/org/exist/xmldb/test/TestEXistXMLSerialize.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** TestEXistXMLSerialize.java 2 Feb 2004 15:30:34 -0000 1.1 --- TestEXistXMLSerialize.java 12 Sep 2004 09:25:22 -0000 1.2 *************** *** 6,23 **** package org.exist.xmldb.test; - import org.xml.sax.InputSource; - import org.xmldb.api.DatabaseManager; - import org.xmldb.api.modules.*; - import org.xmldb.api.base.*; - - import org.apache.xml.serialize.OutputFormat; - import org.apache.xml.serialize.XMLSerializer; - import org.exist.util.serializer.DOMSerializer; - import org.w3c.dom.*; - - import javax.xml.transform.*; - import javax.xml.transform.dom.DOMSource; - import javax.xml.transform.stream.StreamResult; - import java.io.ByteArrayOutputStream; import java.io.File; --- 6,9 ---- *************** *** 25,29 **** import java.util.Properties; ! import junit.framework.*; /** --- 11,32 ---- import java.util.Properties; ! import javax.xml.transform.Transformer; ! import javax.xml.transform.TransformerFactory; ! import javax.xml.transform.dom.DOMSource; ! import javax.xml.transform.stream.StreamResult; ! ! import junit.framework.TestCase; ! ! import org.apache.xml.serialize.OutputFormat; ! import org.apache.xml.serialize.XMLSerializer; ! import org.exist.util.serializer.DOMSerializer; ! import org.exist.util.serializer.SAXSerializer; ! import org.w3c.dom.Document; ! import org.w3c.dom.Element; ! import org.w3c.dom.Node; ! import org.xmldb.api.DatabaseManager; ! import org.xmldb.api.base.Collection; ! import org.xmldb.api.base.Database; ! import org.xmldb.api.modules.XMLResource; /** *************** *** 138,141 **** --- 141,167 ---- } + public void testSerialize4( ) throws Exception{ + System.out.println("Xerces version: "+org.apache.xerces.impl.Version.getVersion( )); + Document doc = javax.xml.parsers.DocumentBuilderFactory.newInstance( ).newDocumentBuilder().parse(testFile); + XMLResource resource = (XMLResource) c.createResource(null, "XMLResource"); + resource.setContentAsDOM(doc); + System.out.println("Storing resource: "+resource.getId( )); + c.storeResource(resource); + + resource = (XMLResource)c.getResource(resource.getId()); + Node node = resource.getContentAsDOM(); + System.out.println("Attempting serialization using eXist's SAX serializer"); + StringWriter writer = new StringWriter(); + Properties outputProperties = new Properties(); + outputProperties.setProperty("indent", "yes"); + SAXSerializer serializer = new SAXSerializer(writer, outputProperties); + resource.getContentAsSAX(serializer); + + System.out.println("Using org.exist.util.serializer.SAXSerializer"); + System.out.println("---------------------"); + System.out.println(writer.toString()); + System.out.println("---------------------"); + } + /** * @param args the command line arguments |