You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by gr...@apache.org on 2003/09/11 17:45:53 UTC
cvs commit: xml-xalan/java/src/org/apache/xalan/trace PrintTraceListener.java
grchiu 2003/09/11 08:45:53
Modified: java/src/org/apache/xalan/trace PrintTraceListener.java
Log:
Updating PrintTraceListener to print information about the recently
added ExtensionEvents.
Revision Changes Path
1.19 +40 -2 xml-xalan/java/src/org/apache/xalan/trace/PrintTraceListener.java
Index: PrintTraceListener.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/trace/PrintTraceListener.java,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- PrintTraceListener.java 1 Apr 2003 20:20:26 -0000 1.18
+++ PrintTraceListener.java 11 Sep 2003 15:45:53 -0000 1.19
@@ -56,6 +56,9 @@
*/
package org.apache.xalan.trace;
+import java.lang.reflect.Constructor;
+import java.lang.reflect.Method;
+
import javax.xml.transform.SourceLocator;
import org.apache.xalan.templates.Constants;
@@ -75,7 +78,7 @@
*
* @see org.apache.xalan.trace.TracerEvent
*/
-public class PrintTraceListener implements TraceListenerEx2
+public class PrintTraceListener implements TraceListenerEx3
{
/**
@@ -114,6 +117,11 @@
public boolean m_traceSelection = false;
/**
+ * Set to true if the listener is to print information after each extension event.
+ */
+ public boolean m_traceExtension = false;
+
+ /**
* Print information about a TracerEvent.
*
* @param ev the trace event.
@@ -393,6 +401,36 @@
}
}
}
-
+
+ /**
+ * Print information about an extension event.
+ *
+ * @param ev the extension event to print information about
+ */
+ public void extension(ExtensionEvent ev) {
+ if (m_traceExtension) {
+ switch (ev.m_callType) {
+ case ExtensionEvent.DEFAULT_CONSTRUCTOR:
+ m_pw.println("EXTENSION: " + ((Class)ev.m_method).getName() + "#<init>");
+ break;
+ case ExtensionEvent.METHOD:
+ m_pw.println("EXTENSION: " + ((Method)ev.m_method).getDeclaringClass().getName() + "#" + ((Method)ev.m_method).getName());
+ break;
+ case ExtensionEvent.CONSTRUCTOR:
+ m_pw.println("EXTENSION: " + ((Constructor)ev.m_method).getDeclaringClass().getName() + "#<init>");
+ break;
+ }
+ }
+ }
+
+
+ /**
+ * Print information about an extension event.
+ *
+ * @param ev the extension event to print information about
+ */
+ public void extensionEnd(ExtensionEvent ev) {
+ // do nothing
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org