org.jboss.byteman.agent.adapter
Class IndexParamAccessTriggerAdapter.IndexParamAccessTriggerMethodAdapter

java.lang.Object
  extended by MethodAdapter
      extended by org.jboss.byteman.agent.adapter.RuleMethodAdapter
          extended by org.jboss.byteman.agent.adapter.RuleGeneratorAdapter
              extended by org.jboss.byteman.agent.adapter.RuleTriggerMethodAdapter
                  extended by org.jboss.byteman.agent.adapter.IndexParamAccessTriggerAdapter.IndexParamAccessTriggerMethodAdapter
Direct Known Subclasses:
IndexParamAccessTriggerAdapter.IndexParamAccessTriggerConstructorAdapter
Enclosing class:
IndexParamAccessTriggerAdapter

private class IndexParamAccessTriggerAdapter.IndexParamAccessTriggerMethodAdapter
extends RuleTriggerMethodAdapter

a method visitor used to add a rule event trigger call to a method


Nested Class Summary
 
Nested classes/interfaces inherited from class org.jboss.byteman.agent.adapter.RuleMethodAdapter
RuleMethodAdapter.LocalVar
 
Field Summary
private  int index
           
protected  boolean latched
          flag used by subclass to avoid inserting trigger until after super constructor has been called
private  int visitedCount
           
 
Fields inherited from class org.jboss.byteman.agent.adapter.RuleTriggerMethodAdapter
exceptions
 
Fields inherited from class org.jboss.byteman.agent.adapter.RuleGeneratorAdapter
ADD, AND, DIV, EQ, GE, GT, LE, LT, MUL, NE, NEG, OR, REM, SHL, SHR, SUB, USHR, XOR
 
Fields inherited from class org.jboss.byteman.agent.adapter.RuleMethodAdapter
access, descriptor, localVarsByName, name, rule, transformContext
 
Constructor Summary
IndexParamAccessTriggerAdapter.IndexParamAccessTriggerMethodAdapter(MethodVisitor mv, TransformContext transformContext, int paramSlotIdx, int access, java.lang.String name, java.lang.String descriptor, java.lang.String signature, java.lang.String[] exceptions)
           
 
Method Summary
private  boolean matchCall(int opcode)
           
 void visitIincInsn(int var, int increment)
           
 void visitVarInsn(int opcode, int var)
          override this so we can see track which local var slots are in use and avoid overwriting them
 
Methods inherited from class org.jboss.byteman.agent.adapter.RuleTriggerMethodAdapter
getInvokedTypes, getMethodName, getReturnBindingType, inBytemanHandler, inBytemanTrigger, injectTriggerPoint, inRethrowHandler, visitCode, visitEnd, visitFieldInsn, visitInsn, visitIntInsn, visitJumpInsn, visitLabel, visitLdcInsn, visitLookupSwitchInsn, visitMaxs, visitMethodInsn, visitMultiANewArrayInsn, visitTableSwitchInsn, visitTriggerEnd, visitTriggerStart, visitTryCatchBlock, visitTypeInsn
 
Methods inherited from class org.jboss.byteman.agent.adapter.RuleGeneratorAdapter
arrayLength, arrayLoad, arrayStore, box, cast, catchException, checkCast, dup, dup2, dup2X1, dup2X2, dupX1, dupX2, endMethod, getField, getLocalType, getStatic, goTo, ifCmp, ifICmp, ifNonNull, ifNull, ifZCmp, iinc, instanceOf, invokeConstructor, invokeInterface, invokeStatic, invokeVirtual, loadArg, loadArgArray, loadArgs, loadArgs, loadLocal, loadThis, mark, mark, math, monitorEnter, monitorExit, newArray, newInstance, newLabel, newLocal, not, pop, pop2, popLocal, push, push, push, push, push, push, push, putField, putStatic, ret, returnValue, storeArg, storeLocal, swap, swap, tableSwitch, tableSwitch, throwException, throwException, unbox, visitFrame
 
Methods inherited from class org.jboss.byteman.agent.adapter.RuleMethodAdapter
getTriggerClass, lookup, visitLocalVariable
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

latched

protected boolean latched
flag used by subclass to avoid inserting trigger until after super constructor has been called


index

private int index

visitedCount

private int visitedCount
Constructor Detail

IndexParamAccessTriggerAdapter.IndexParamAccessTriggerMethodAdapter

IndexParamAccessTriggerAdapter.IndexParamAccessTriggerMethodAdapter(MethodVisitor mv,
                                                                    TransformContext transformContext,
                                                                    int paramSlotIdx,
                                                                    int access,
                                                                    java.lang.String name,
                                                                    java.lang.String descriptor,
                                                                    java.lang.String signature,
                                                                    java.lang.String[] exceptions)
Method Detail

visitVarInsn

public void visitVarInsn(int opcode,
                         int var)
Description copied from class: RuleGeneratorAdapter
override this so we can see track which local var slots are in use and avoid overwriting them

Overrides:
visitVarInsn in class RuleTriggerMethodAdapter

visitIincInsn

public void visitIincInsn(int var,
                          int increment)
Overrides:
visitIincInsn in class RuleTriggerMethodAdapter

matchCall

private boolean matchCall(int opcode)