Class ClassTracer.MonitoredMethodEnhancer

  • Enclosing class:
    ClassTracer

    private class ClassTracer.MonitoredMethodEnhancer
    extends org.objectweb.asm.MethodVisitor
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private org.objectweb.asm.tree.LocalVariableNode __exc  
      private org.objectweb.asm.tree.LocalVariableNode __mm  
      private org.objectweb.asm.tree.LocalVariableNode __result  
      private int access  
      private org.objectweb.asm.Label afterExcStore  
      private org.objectweb.asm.tree.LabelNode afterExcStoreNode  
      private java.lang.String desc  
      private org.objectweb.asm.Label end  
      private org.objectweb.asm.tree.LabelNode endNode  
      private org.objectweb.asm.Label excHandler  
      private org.objectweb.asm.tree.LabelNode excHandlerNode  
      private int identVal  
      private org.objectweb.asm.MethodVisitor lmv  
      private org.objectweb.asm.commons.LocalVariablesSorter lvs  
      private java.lang.String name  
      private java.util.Set<java.lang.Integer> returnOpcodes  
      private org.objectweb.asm.Label start  
      private org.objectweb.asm.tree.LabelNode startNode  
      • Fields inherited from class org.objectweb.asm.MethodVisitor

        api, mv
    • Constructor Summary

      Constructors 
      Constructor Description
      MonitoredMethodEnhancer​(int access, java.lang.String name, java.lang.String desc, org.objectweb.asm.MethodVisitor mv)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private void emitExceptionReport​(int excIndex)  
      private void emitFinally()  
      void setLocalVariablesSorter​(org.objectweb.asm.commons.LocalVariablesSorter lvs)  
      void visitCode()  
      void visitFieldInsn​(int opcode, java.lang.String owner, java.lang.String name, java.lang.String desc)  
      void visitIincInsn​(int var, int increment)  
      void visitInsn​(int opcode)  
      void visitIntInsn​(int opcode, int operand)  
      void visitJumpInsn​(int opcode, org.objectweb.asm.Label label)  
      void visitLdcInsn​(java.lang.Object cst)  
      void visitLookupSwitchInsn​(org.objectweb.asm.Label dflt, int[] keys, org.objectweb.asm.Label[] labels)  
      void visitMaxs​(int maxStack, int maxLocals)  
      void visitMethodInsn​(int opcode, java.lang.String owner, java.lang.String name, java.lang.String desc)  
      void visitMultiANewArrayInsn​(java.lang.String desc, int dims)  
      void visitTableSwitchInsn​(int min, int max, org.objectweb.asm.Label dflt, org.objectweb.asm.Label[] labels)  
      void visitTypeInsn​(int opcode, java.lang.String type)  
      void visitVarInsn​(int opcode, int var)  
      • Methods inherited from class org.objectweb.asm.MethodVisitor

        getDelegate, visitAnnotableParameterCount, visitAnnotation, visitAnnotationDefault, visitAttribute, visitEnd, visitFrame, visitInsnAnnotation, visitInvokeDynamicInsn, visitLabel, visitLineNumber, visitLocalVariable, visitLocalVariableAnnotation, visitMethodInsn, visitParameter, visitParameterAnnotation, visitTryCatchAnnotation, visitTryCatchBlock, visitTypeAnnotation
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • access

        private final int access
      • name

        private final java.lang.String name
      • desc

        private final java.lang.String desc
      • lmv

        private final org.objectweb.asm.MethodVisitor lmv
      • identVal

        private final int identVal
      • returnOpcodes

        private final java.util.Set<java.lang.Integer> returnOpcodes
      • start

        private final org.objectweb.asm.Label start
      • startNode

        private final org.objectweb.asm.tree.LabelNode startNode
      • excHandler

        private final org.objectweb.asm.Label excHandler
      • excHandlerNode

        private final org.objectweb.asm.tree.LabelNode excHandlerNode
      • end

        private final org.objectweb.asm.Label end
      • endNode

        private final org.objectweb.asm.tree.LabelNode endNode
      • afterExcStore

        private final org.objectweb.asm.Label afterExcStore
      • afterExcStoreNode

        private final org.objectweb.asm.tree.LabelNode afterExcStoreNode
      • lvs

        private org.objectweb.asm.commons.LocalVariablesSorter lvs
      • __result

        private org.objectweb.asm.tree.LocalVariableNode __result
      • __mm

        private org.objectweb.asm.tree.LocalVariableNode __mm
      • __exc

        private org.objectweb.asm.tree.LocalVariableNode __exc
    • Constructor Detail

      • MonitoredMethodEnhancer

        public MonitoredMethodEnhancer​(int access,
                                       java.lang.String name,
                                       java.lang.String desc,
                                       org.objectweb.asm.MethodVisitor mv)
    • Method Detail

      • setLocalVariablesSorter

        public void setLocalVariablesSorter​(org.objectweb.asm.commons.LocalVariablesSorter lvs)
      • visitCode

        public void visitCode()
        Overrides:
        visitCode in class org.objectweb.asm.MethodVisitor
      • emitExceptionReport

        private void emitExceptionReport​(int excIndex)
      • emitFinally

        private void emitFinally()
      • visitInsn

        public void visitInsn​(int opcode)
        Overrides:
        visitInsn in class org.objectweb.asm.MethodVisitor
      • visitMethodInsn

        public void visitMethodInsn​(int opcode,
                                    java.lang.String owner,
                                    java.lang.String name,
                                    java.lang.String desc)
        Overrides:
        visitMethodInsn in class org.objectweb.asm.MethodVisitor
      • visitMaxs

        public void visitMaxs​(int maxStack,
                              int maxLocals)
        Overrides:
        visitMaxs in class org.objectweb.asm.MethodVisitor
      • visitIntInsn

        public void visitIntInsn​(int opcode,
                                 int operand)
        Overrides:
        visitIntInsn in class org.objectweb.asm.MethodVisitor
      • visitVarInsn

        public void visitVarInsn​(int opcode,
                                 int var)
        Overrides:
        visitVarInsn in class org.objectweb.asm.MethodVisitor
      • visitTypeInsn

        public void visitTypeInsn​(int opcode,
                                  java.lang.String type)
        Overrides:
        visitTypeInsn in class org.objectweb.asm.MethodVisitor
      • visitFieldInsn

        public void visitFieldInsn​(int opcode,
                                   java.lang.String owner,
                                   java.lang.String name,
                                   java.lang.String desc)
        Overrides:
        visitFieldInsn in class org.objectweb.asm.MethodVisitor
      • visitJumpInsn

        public void visitJumpInsn​(int opcode,
                                  org.objectweb.asm.Label label)
        Overrides:
        visitJumpInsn in class org.objectweb.asm.MethodVisitor
      • visitLdcInsn

        public void visitLdcInsn​(java.lang.Object cst)
        Overrides:
        visitLdcInsn in class org.objectweb.asm.MethodVisitor
      • visitIincInsn

        public void visitIincInsn​(int var,
                                  int increment)
        Overrides:
        visitIincInsn in class org.objectweb.asm.MethodVisitor
      • visitTableSwitchInsn

        public void visitTableSwitchInsn​(int min,
                                         int max,
                                         org.objectweb.asm.Label dflt,
                                         org.objectweb.asm.Label[] labels)
        Overrides:
        visitTableSwitchInsn in class org.objectweb.asm.MethodVisitor
      • visitLookupSwitchInsn

        public void visitLookupSwitchInsn​(org.objectweb.asm.Label dflt,
                                          int[] keys,
                                          org.objectweb.asm.Label[] labels)
        Overrides:
        visitLookupSwitchInsn in class org.objectweb.asm.MethodVisitor
      • visitMultiANewArrayInsn

        public void visitMultiANewArrayInsn​(java.lang.String desc,
                                            int dims)
        Overrides:
        visitMultiANewArrayInsn in class org.objectweb.asm.MethodVisitor