View Javadoc
1 /* Ephemera.java */ 2 package org.quilt.cover.stmt; 3 4 import java.util.List; 5 import java.util.Vector; 6 7 /*** 8 * 9 * @author < a href="mailto:jddixon@users.sourceforge.net">Jim Dixon</a> 10 */ 11 12 class Ephemera { 13 14 /*** Name of the class we are collecting information on */ 15 private String className; 16 17 /*** Number of counters added so far */ 18 private static int counterCount; 19 20 /*** Counter index at the end of each instrumented method */ 21 private List methodEnds; 22 23 /*** Names of methods that have been instrumented */ 24 private List methodNames; 25 26 /*** Constructor, initializes class name */ 27 Ephemera (String name) { 28 className = name; 29 counterCount = 0; 30 methodEnds = new Vector(); 31 methodNames = new Vector(); 32 } 33 34 /*** 35 * Used by GraphXformers to report the cumulative number of 36 * counter vertices added after instrumenting method n. 37 * 38 * @param n Method index. 39 * @param count Cumulative number of counter vertices added. 40 */ 41 void setEndCount (String meName, int count) { 42 if (meName == null) { 43 throw new IllegalArgumentException("null name"); 44 } 45 if (count < 0) { 46 throw new IllegalArgumentException("negative count"); 47 } 48 if (count < counterCount) { 49 System.out.println("Ephemera.setEndCount WARNING: " 50 + "count now " + counterCount 51 + " but resetting to " + count); 52 } 53 if (methodEnds == null || methodNames == null) { 54 System.out.println( 55 "Ephemera.setEndCount INTERNAL ERROR: methodEnds/Names is null"); 56 } else { 57 methodNames.add(meName); 58 methodEnds.add(new Integer(count)); 59 } 60 counterCount = count; 61 } 62 /*** @return class name for debugging */ 63 String getClassName() { 64 return className; 65 } 66 /*** @return cumulative counter count */ 67 int getCounterCount() { 68 return counterCount; 69 } 70 /*** @return a list of names of methods seen so far */ 71 List getMethodNames () { 72 return methodNames; 73 } 74 /*** @return a list of cumulative counter counts after instrumenting */ 75 List getMethodEnds () { 76 return methodEnds; 77 } 78 }

This page was automatically generated by Maven