curcuru 01/07/05 09:37:20
Modified: test/java/src/org/apache/qetest/xalanj2 XalanDumper.java
Log:
Add dump(Transformer...) method; only partly implemented
Revision Changes Path
1.4 +59 -1
xml-xalan/test/java/src/org/apache/qetest/xalanj2/XalanDumper.java
Index: XalanDumper.java
===================================================================
RCS file:
/home/cvs/xml-xalan/test/java/src/org/apache/qetest/xalanj2/XalanDumper.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- XalanDumper.java 2001/06/28 19:23:46 1.3
+++ XalanDumper.java 2001/07/05 16:37:18 1.4
@@ -63,6 +63,7 @@
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
+import javax.xml.transform.Transformer;
import org.apache.xalan.trace.GenerateEvent;
import org.apache.xalan.trace.SelectionEvent;
import org.apache.xalan.trace.TracerEvent;
@@ -71,10 +72,15 @@
import org.apache.xalan.templates.ElemTextLiteral;
import org.apache.xalan.templates.ElemLiteralResult;
import org.apache.xalan.templates.Constants;
+import org.apache.xalan.transformer.TransformerImpl;
import org.apache.xml.utils.QName;
import org.apache.xpath.XPath;
+import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.util.Properties;
import java.lang.reflect.Method;
+
/**
* Static utility for dumping info about common Xalan objects.
* Cheap-o string representations of some common properties
@@ -85,7 +91,7 @@
* logging utilities to output our data without escaping, etc.
*
* @author [EMAIL PROTECTED]
- * @version $Id: XalanDumper.java,v 1.3 2001/06/28 19:23:46 curcuru Exp $
+ * @version $Id: XalanDumper.java,v 1.4 2001/07/05 16:37:18 curcuru Exp $
*/
public abstract class XalanDumper
{
@@ -242,6 +248,58 @@
return buf.toString();
else
return buf.toString() + RBRACKET;
+ }
+
+
+ /**
+ * Return String describing a Transformer.
+ * Currently just returns info about a get selected public
+ * getter methods from a Transformer.
+ * Only really useful when it can do instanceof TransformerImpl
+ * to return custom info about Xalan
+ *
+ * @param t the Transformer to print info of
+ * @param dumpLevel what format/how much to dump
+ */
+ public static String dump(Transformer trans, int dumpLevel)
+ {
+ if (null == trans)
+ return "Transformer" + LBRACKET + NULL + RBRACKET;
+
+ StringBuffer buf = new StringBuffer();
+
+ StringWriter sw = new StringWriter();
+ Properties p = trans.getOutputProperties();
+ if (null != p)
+ {
+ p.list(new PrintWriter(sw));
+ buf.append("getOutputProperties{" + sw.toString() + "}");
+ }
+
+ if (trans instanceof TransformerImpl)
+ {
+ final TransformerImpl timpl = (TransformerImpl)trans;
+ // We have a Xalan-J 2.x basic transformer
+ buf.append("getBaseURLOfSource=" + timpl.getBaseURLOfSource() +
SEP);
+ // Result getOutputTarget()
+ // ContentHandler getInputContentHandler(boolean doDocFrag)
+ // DeclHandler getInputDeclHandler()
+ // LexicalHandler getInputLexicalHandler()
+ // OutputProperties getOutputFormat()
+ // Serializer getSerializer()
+ // ElemTemplateElement getCurrentElement()
+ // int getCurrentNode()
+ // ElemTemplate getCurrentTemplate()
+ // ElemTemplate getMatchedTemplate()
+ // int getMatchedNode()
+ // DTMIterator getContextNodeList()
+ // StylesheetRoot getStylesheet()
+ // int getRecursionLimit()
+ buf.append("getMode=" + timpl.getMode() + SEP);
+ }
+
+ return "Transformer" + LBRACKET
+ + buf.toString() + RBRACKET;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]