avalon-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From blorit...@apache.org
Subject cvs commit: jakarta-avalon-excalibur/src/scratchpad/org/apache/avalon/excalibur/profile/doc-files call-order.png
Date Fri, 14 Dec 2001 16:11:15 GMT
bloritsch    01/12/14 08:11:15

  Modified:    src/scratchpad/org/apache/avalon/excalibur/profile
                        ProfileReport.java
  Added:       src/scratchpad/org/apache/avalon/excalibur/profile/doc-files
                        call-order.png
  Log:
  Update ProfileReport to support hierarchical naming
  
  Revision  Changes    Path
  1.2       +33 -5     jakarta-avalon-excalibur/src/scratchpad/org/apache/avalon/excalibur/profile/ProfileReport.java
  
  Index: ProfileReport.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/src/scratchpad/org/apache/avalon/excalibur/profile/ProfileReport.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ProfileReport.java	2001/12/13 20:42:37	1.1
  +++ ProfileReport.java	2001/12/14 16:11:14	1.2
  @@ -26,12 +26,40 @@
       void startReport();
   
       /**
  -     * This method is used to write the names for the individual sample points.
  -     * It is called once at the beginning of a profile run, but after
  -     * <code>startReport</code>.  If this method is not called, then the report
  -     * must supply it's own default names (typically "column1", "column2", etc).
  +     * The addGroup method is called when using cascading Profilables.  The
  +     * algorithm is that each group is fully evaluated until there are no more
  +     * subgroups (i.e. the column names).  In order to grasp how it should be
  +     * called, please reference the following group heirarchy:
  +     *
  +     * <p><center><img src="doc-files/call-order.png"/></center></p>
  +     *
  +     * <p>
  +     *   In this hierarchy, the call order would be like this:
  +     * </p>
  +     * <pre>
  +     *   report.addGroup("G1", {"C1", "C2"});
  +     *   report.addGroup("G2", {"C3", "C4"});
  +     * </pre>
  +     * <p>
  +     *   In the event that there are subgroups before we get to the column name,
  +     *   the tree is fully evaluated to the end.  For instance, let us assume
  +     *   that "C2" has two column names "C2a" and "C2b".  The call order would
  +     *   be like this:
  +     * </p>
  +     * <pre>
  +     *   report.addGroup("G1", {"C1", "C2"});
  +     *   // no sub groups for "C1"
  +     *   report.addGroup("C2", {"C2a", "C2b"});
  +     *   report.addGroup("G2", {"C3", "C4"});
  +     * </pre>
  +     * <p>
  +     *   When you align the last line of names, this is the order of samples
  +     *   passed in the sample() method.  In this last example, the order would
  +     *   be "C1", "C2a", "C2b", "C3", "C4".  It is imperitive that the samples
  +     *   gathered are in this precise order.
  +     * </p>
        */
  -    void setColumnNames(String[] columnNames);
  +    void addGroup( String groupName, String[] subgroupNames );
   
       /**
        * This method is called each time the Profiler takes a sample.  It has the
  
  
  
  1.1                  jakarta-avalon-excalibur/src/scratchpad/org/apache/avalon/excalibur/profile/doc-files/call-order.png
  
  	<<Binary file>>
  
  

--
To unsubscribe, e-mail:   <mailto:avalon-cvs-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:avalon-cvs-help@jakarta.apache.org>


Mime
View raw message