package janala.instrument; import janala.logger.ClassNames; import org.objectweb.asm.ClassVisitor; import org.objectweb.asm.MethodVisitor; import org.objectweb.asm.Opcodes; public class SnoopInstructionClassAdapter extends ClassVisitor { public SnoopInstructionClassAdapter(ClassVisitor cv) { super(Opcodes.ASM5, cv); } @Override public MethodVisitor visitMethod(int access, String name, String desc, String signature, String[] exceptions) { Coverage.instance.setLastMethod(name + ":" + signature); MethodVisitor mv = cv.visitMethod(access, name, desc, signature, exceptions); if (mv != null) { return new SnoopInstructionMethodAdapter(mv, name.equals("<init>"), Coverage.get(), GlobalStateForInstrumentation.instance, ClassNames.getInstance()); } return null; } }