com.ikokoon.serenity.instrumentation.coverage
Class CoverageClassAdapter

java.lang.Object
  extended by org.objectweb.asm.ClassAdapter
      extended by com.ikokoon.serenity.instrumentation.coverage.CoverageClassAdapter
All Implemented Interfaces:
org.objectweb.asm.ClassVisitor, org.objectweb.asm.Opcodes

public class CoverageClassAdapter
extends org.objectweb.asm.ClassAdapter
implements org.objectweb.asm.Opcodes

This is the class visitor that visits the class structures and invokes the method visitor for the coverage functionality.

Since:
12.07.09
Version:
01.00
Author:
Michael Couck

Field Summary
 
Fields inherited from class org.objectweb.asm.ClassAdapter
cv
 
Fields inherited from interface org.objectweb.asm.Opcodes
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, ASTORE, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DMUL, DNEG, DOUBLE, DREM, DRETURN, DSTORE, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F_APPEND, F_CHOP, F_FULL, F_NEW, F_SAME, F_SAME1, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAT, FMUL, FNEG, FREM, FRETURN, FSTORE, FSUB, GETFIELD, GETSTATIC, GOTO, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, IMUL, INEG, INSTANCEOF, INTEGER, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISUB, IUSHR, IXOR, JSR, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDIV, LLOAD, LMUL, LNEG, LONG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, NULL, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, TOP, UNINITIALIZED_THIS, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6
 
Constructor Summary
CoverageClassAdapter(org.objectweb.asm.ClassVisitor visitor, java.lang.String className)
          Constructs a CoverageClassAdapter that takes the parent class visitor and the class name that will be enhanced with instructions to invoke the Collector that collects the instructions that are executed.
 
Method Summary
 org.objectweb.asm.MethodVisitor visitMethod(int access, java.lang.String methodName, java.lang.String methodDescription, java.lang.String methodSignature, java.lang.String[] exceptions)
          This is the method that calls the MethodAdapter that will enhance the class methods with instructions that will enable data to be collected for the class at runtime producing a line coverage report for the class.
 
Methods inherited from class org.objectweb.asm.ClassAdapter
visit, visitAnnotation, visitAttribute, visitEnd, visitField, visitInnerClass, visitOuterClass, visitSource
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CoverageClassAdapter

public CoverageClassAdapter(org.objectweb.asm.ClassVisitor visitor,
                            java.lang.String className)
Constructs a CoverageClassAdapter that takes the parent class visitor and the class name that will be enhanced with instructions to invoke the Collector that collects the instructions that are executed.

Parameters:
visitor - the parent class visitor
className - that name of the class that will be enhanced with coverage instructions
Method Detail

visitMethod

public org.objectweb.asm.MethodVisitor visitMethod(int access,
                                                   java.lang.String methodName,
                                                   java.lang.String methodDescription,
                                                   java.lang.String methodSignature,
                                                   java.lang.String[] exceptions)
This is the method that calls the MethodAdapter that will enhance the class methods with instructions that will enable data to be collected for the class at runtime producing a line coverage report for the class.

Specified by:
visitMethod in interface org.objectweb.asm.ClassVisitor
Overrides:
visitMethod in class org.objectweb.asm.ClassAdapter


Copyright © 2010. All Rights Reserved.