curcuru 01/12/21 14:53:27
Modified: test/java/src/org/apache/qetest/xslwrapper
TraxDOMWrapper.java TraxFileWrapper.java
TraxLocalPathWrapper.java TraxSAXWrapper.java
TraxStreamWrapper.java TraxSystemIdWrapper.java
Log:
Use new TraxWrapperUtils setAttribute on all transformers;
also implement TraxStreamWrapper.transformEmbedded
Revision Changes Path
1.4 +10 -1
xml-xalan/test/java/src/org/apache/qetest/xslwrapper/TraxDOMWrapper.java
Index: TraxDOMWrapper.java
===================================================================
RCS file:
/home/cvs/xml-xalan/test/java/src/org/apache/qetest/xslwrapper/TraxDOMWrapper.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- TraxDOMWrapper.java 2001/06/25 14:35:21 1.3
+++ TraxDOMWrapper.java 2001/12/21 22:53:27 1.4
@@ -97,7 +97,7 @@
* //@todo add in checks for factory.getFeature(DOMSource.FEATURE)
*
* @author Shane Curcuru
- * @version $Id: TraxDOMWrapper.java,v 1.3 2001/06/25 14:35:21 curcuru Exp $
+ * @version $Id: TraxDOMWrapper.java,v 1.4 2001/12/21 22:53:27 curcuru Exp $
*/
public class TraxDOMWrapper extends TransformWrapperHelper
{
@@ -246,6 +246,9 @@
Document outNode = docBuilder.newDocument();
DOMResult domResult = new DOMResult(outNode);
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
+
// Untimed: Apply any parameters needed
applyParameters(transformer);
@@ -395,6 +398,9 @@
Document outNode = docBuilder.newDocument();
DOMResult domResult = new DOMResult(outNode);
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
+
// Untimed: Apply any parameters needed
applyParameters(transformer);
@@ -485,6 +491,9 @@
Document outNode = docBuilder.newDocument();
DOMResult domResult = new DOMResult(outNode);
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
+
// Untimed: Apply any parameters needed
applyParameters(transformer);
1.4 +11 -2
xml-xalan/test/java/src/org/apache/qetest/xslwrapper/TraxFileWrapper.java
Index: TraxFileWrapper.java
===================================================================
RCS file:
/home/cvs/xml-xalan/test/java/src/org/apache/qetest/xslwrapper/TraxFileWrapper.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- TraxFileWrapper.java 2001/06/25 14:35:22 1.3
+++ TraxFileWrapper.java 2001/12/21 22:53:27 1.4
@@ -83,7 +83,7 @@
* our getProcessorInfo() method.
*
* @author Shane Curcuru
- * @version $Id: TraxFileWrapper.java,v 1.3 2001/06/25 14:35:22 curcuru Exp $
+ * @version $Id: TraxFileWrapper.java,v 1.4 2001/12/21 22:53:27 curcuru Exp $
*/
public class TraxFileWrapper extends TransformWrapperHelper
{
@@ -198,11 +198,14 @@
long xslBuild = 0;
long transform = 0;
- // Timed: read/build xsl from a URL
+ // Timed: read/build xsl from a File
startTime = System.currentTimeMillis();
Transformer transformer = factory.newTransformer(new
StreamSource(new File(xslName)));
xslBuild = System.currentTimeMillis() - startTime;
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
+
// Untimed: Apply any parameters needed
applyParameters(transformer);
@@ -300,6 +303,9 @@
// UNTimed: get Transformer from Templates
Transformer transformer = builtTemplates.newTransformer();
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
+
// Untimed: Apply any parameters needed
applyParameters(transformer);
@@ -357,6 +363,9 @@
startTime = System.currentTimeMillis();
Transformer transformer = factory.newTransformer(xslSource);
xslBuild = System.currentTimeMillis() - startTime;
+
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
// Untimed: Apply any parameters needed
applyParameters(transformer);
1.2 +10 -1
xml-xalan/test/java/src/org/apache/qetest/xslwrapper/TraxLocalPathWrapper.java
Index: TraxLocalPathWrapper.java
===================================================================
RCS file:
/home/cvs/xml-xalan/test/java/src/org/apache/qetest/xslwrapper/TraxLocalPathWrapper.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- TraxLocalPathWrapper.java 2001/08/12 19:56:01 1.1
+++ TraxLocalPathWrapper.java 2001/12/21 22:53:27 1.2
@@ -85,7 +85,7 @@
* our getProcessorInfo() method.
*
* @author Shane Curcuru
- * @version $Id: TraxLocalPathWrapper.java,v 1.1 2001/08/12 19:56:01 curcuru
Exp $
+ * @version $Id: TraxLocalPathWrapper.java,v 1.2 2001/12/21 22:53:27 curcuru
Exp $
*/
public class TraxLocalPathWrapper extends TransformWrapperHelper
{
@@ -206,6 +206,9 @@
new StreamSource(xslName));
xslBuild = System.currentTimeMillis() - startTime;
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
+
// Untimed: Apply any parameters needed
applyParameters(transformer);
@@ -305,6 +308,9 @@
// UNTimed: get Transformer from Templates
Transformer transformer = builtTemplates.newTransformer();
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
+
// Untimed: Apply any parameters needed
applyParameters(transformer);
@@ -362,6 +368,9 @@
startTime = System.currentTimeMillis();
Transformer transformer = factory.newTransformer(xslSource);
xslBuild = System.currentTimeMillis() - startTime;
+
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
// Untimed: Apply any parameters needed
applyParameters(transformer);
1.5 +7 -1
xml-xalan/test/java/src/org/apache/qetest/xslwrapper/TraxSAXWrapper.java
Index: TraxSAXWrapper.java
===================================================================
RCS file:
/home/cvs/xml-xalan/test/java/src/org/apache/qetest/xslwrapper/TraxSAXWrapper.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- TraxSAXWrapper.java 2001/10/25 21:06:12 1.4
+++ TraxSAXWrapper.java 2001/12/21 22:53:27 1.5
@@ -99,7 +99,7 @@
* our getProcessorInfo() method.</p>
*
* @author Shane Curcuru
- * @version $Id: TraxSAXWrapper.java,v 1.4 2001/10/25 21:06:12 curcuru Exp $
+ * @version $Id: TraxSAXWrapper.java,v 1.5 2001/12/21 22:53:27 curcuru Exp $
*/
public class TraxSAXWrapper extends TransformWrapperHelper
{
@@ -259,6 +259,9 @@
// Also set systemId to the stylesheet
stylesheetHandler.setSystemId(QetestUtils.filenameToURL(xslName));
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(stylesheetHandler.getTransformer(),
newProcessorOpts);
+
// Apply any parameters needed
applyParameters(stylesheetHandler.getTransformer());
@@ -437,6 +440,9 @@
// Create a ContentHandler to handle parsing of the XML
TransformerHandler stylesheetHandler =
saxFactory.newTransformerHandler(builtTemplates);
+
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(stylesheetHandler.getTransformer(),
newProcessorOpts);
// Apply any parameters needed
applyParameters(stylesheetHandler.getTransformer());
1.3 +80 -3
xml-xalan/test/java/src/org/apache/qetest/xslwrapper/TraxStreamWrapper.java
Index: TraxStreamWrapper.java
===================================================================
RCS file:
/home/cvs/xml-xalan/test/java/src/org/apache/qetest/xslwrapper/TraxStreamWrapper.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- TraxStreamWrapper.java 2001/06/25 14:35:24 1.2
+++ TraxStreamWrapper.java 2001/12/21 22:53:27 1.3
@@ -95,7 +95,7 @@
* should be updated in several of our methods.</p>
*
* @author Shane Curcuru
- * @version $Id: TraxStreamWrapper.java,v 1.2 2001/06/25 14:35:24 curcuru
Exp $
+ * @version $Id: TraxStreamWrapper.java,v 1.3 2001/12/21 22:53:27 curcuru
Exp $
*/
public class TraxStreamWrapper extends TransformWrapperHelper
{
@@ -248,6 +248,9 @@
ByteArrayOutputStream outBytes = new ByteArrayOutputStream();
StreamResult byteResult = new StreamResult(outBytes);
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
+
// Untimed: Apply any parameters needed
applyParameters(transformer);
@@ -400,6 +403,9 @@
ByteArrayOutputStream outBytes = new ByteArrayOutputStream();
StreamResult byteResult = new StreamResult(outBytes);
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
+
// Untimed: Apply any parameters needed
applyParameters(transformer);
@@ -440,7 +446,8 @@
* @return array of longs denoting timing of only these parts of
* our operation: IDX_OVERALL, IDX_XSLREAD (time to find XSL
* reference from the xml-stylesheet PI), IDX_XSLBUILD, (time
- * to then build the Transformer therefrom), IDX_TRANSFORM
+ * to then build the Transformer therefrom), IDX_TRANSFORM,
+ * IDX_XMLREAD, IDX_RESULTWRITE
*
* @throws Exception any underlying exceptions from the
* wrappered processor are simply allowed to propagate; throws
@@ -454,9 +461,79 @@
long startTime = 0;
long xslRead = 0;
long xslBuild = 0;
+ long xmlRead = 0;
long transform = 0;
+ long resultWrite = 0;
+
+
+ File xmlFile = new File(xmlName);
+ int xmlLength = new Long(xmlFile.length()).intValue(); //@todo
warning: possible overflow
+ byte[] xmlBytes = new byte[xmlLength];
+ FileInputStream xmlStream = new FileInputStream(xmlFile);
+ // Timed: read xml into a byte array
+ startTime = System.currentTimeMillis();
+ int xmlRetVal = xmlStream.read(xmlBytes);
+ xmlRead = System.currentTimeMillis() - startTime;
+
+ // Untimed: create StreamSource and setSystemId
+ StreamSource xmlSource = new StreamSource(new
ByteArrayInputStream(xmlBytes));
+ xmlSource.setSystemId(QetestUtils.filenameToURL(xmlName));
+
+ // Timed: readxsl from the xml document
+ // Should this be timed as something?
+ startTime = System.currentTimeMillis();
+ Source xslSource = factory.getAssociatedStylesheet(xmlSource, null,
null, null);
+ xslRead = System.currentTimeMillis() - startTime;
+
+ // Timed: build xsl from a URL
+ startTime = System.currentTimeMillis();
+ Transformer transformer = factory.newTransformer(xslSource);
+ xslBuild = System.currentTimeMillis() - startTime;
+
+ // Re-read the XML file for use in transform; not timed
+ xmlFile = new File(xmlName);
+ xmlLength = new Long(xmlFile.length()).intValue(); //@todo warning:
possible overflow
+ xmlBytes = new byte[xmlLength];
+ xmlStream = new FileInputStream(xmlFile);
+ xmlRetVal = xmlStream.read(xmlBytes);
+
+ // Untimed: create StreamSource and setSystemId
+ xmlSource = new StreamSource(new ByteArrayInputStream(xmlBytes));
+ xmlSource.setSystemId(QetestUtils.filenameToURL(xmlName));
+
+ // Untimed: create StreamResult
+ ByteArrayOutputStream outBytes = new ByteArrayOutputStream();
+ StreamResult byteResult = new StreamResult(outBytes);
+
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
+
+ // Untimed: Apply any parameters needed
+ applyParameters(transformer);
+
+ // Timed: build xml (so to speak) and transform
+ startTime = System.currentTimeMillis();
+ transformer.transform(xmlSource, byteResult);
+ transform = System.currentTimeMillis() - startTime;
+
+ // Timed: writeResults from the byte array
+ startTime = System.currentTimeMillis();
+ byte[] writeBytes = outBytes.toByteArray(); // Should this be timed
too or not?
+ FileOutputStream writeStream = new FileOutputStream(resultName);
+ writeStream.write(writeBytes);
+ writeStream.close();
+ resultWrite = System.currentTimeMillis() - startTime;
+
+ long[] times = getTimeArray();
+ times[IDX_OVERALL] = xslRead + xslBuild + xmlRead
+ + transform + resultWrite;
+ times[IDX_XSLREAD] = xslRead;
+ times[IDX_XSLBUILD] = xslBuild;
+ times[IDX_XMLREAD] = xmlRead;
+ times[IDX_TRANSFORM] = transform;
+ times[IDX_RESULTWRITE] = resultWrite;
+ return times;
- throw new RuntimeException("transformEmbedded not implemented yet!");
}
1.3 +11 -2
xml-xalan/test/java/src/org/apache/qetest/xslwrapper/TraxSystemIdWrapper.java
Index: TraxSystemIdWrapper.java
===================================================================
RCS file:
/home/cvs/xml-xalan/test/java/src/org/apache/qetest/xslwrapper/TraxSystemIdWrapper.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- TraxSystemIdWrapper.java 2001/06/25 14:35:25 1.2
+++ TraxSystemIdWrapper.java 2001/12/21 22:53:27 1.3
@@ -82,7 +82,7 @@
* our getProcessorInfo() method.
*
* @author Shane Curcuru
- * @version $Id: TraxSystemIdWrapper.java,v 1.2 2001/06/25 14:35:25 curcuru
Exp $
+ * @version $Id: TraxSystemIdWrapper.java,v 1.3 2001/12/21 22:53:27 curcuru
Exp $
*/
public class TraxSystemIdWrapper extends TransformWrapperHelper
{
@@ -164,7 +164,7 @@
throw new
TransformerConfigurationException("TraxSystemIdWrapper.newProcessor: factory
does not support Streams!");
}
// Set any of our options as Attributes on the factory
- TraxWrapperUtils.setAttributes(factory, options);
+ TraxWrapperUtils.setAttributes(factory, newProcessorOpts);
return (Object)factory;
}
@@ -203,6 +203,9 @@
new StreamSource(QetestUtils.filenameToURL(xslName)));
xslBuild = System.currentTimeMillis() - startTime;
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
+
// Untimed: Apply any parameters needed
applyParameters(transformer);
@@ -302,6 +305,9 @@
// UNTimed: get Transformer from Templates
Transformer transformer = builtTemplates.newTransformer();
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
+
// Untimed: Apply any parameters needed
applyParameters(transformer);
@@ -359,6 +365,9 @@
startTime = System.currentTimeMillis();
Transformer transformer = factory.newTransformer(xslSource);
xslBuild = System.currentTimeMillis() - startTime;
+
+ // Untimed: Set any of our options as Attributes on the transformer
+ TraxWrapperUtils.setAttributes(transformer, newProcessorOpts);
// Untimed: Apply any parameters needed
applyParameters(transformer);
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]