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