Javassist 3.15.0-GA-redhat-2

javassist.convert
Class TransformCall

java.lang.Object
  extended by javassist.convert.Transformer
      extended by javassist.convert.TransformCall
All Implemented Interfaces:
Opcode
Direct Known Subclasses:
TransformBefore

public class TransformCall
extends Transformer


Field Summary
protected  String classname
           
protected  ConstPool constPool
           
protected  String methodDescriptor
           
protected  String methodname
           
protected  String newClassname
           
protected  int newIndex
           
protected  boolean newMethodIsPrivate
           
protected  String newMethodname
           
 
Fields inherited from interface javassist.bytecode.Opcode
AALOAD, AASTORE, ACONST_NULL, ALOAD, ALOAD_0, ALOAD_1, ALOAD_2, ALOAD_3, ANEWARRAY, ARETURN, ARRAYLENGTH, ASTORE, ASTORE_0, ASTORE_1, ASTORE_2, ASTORE_3, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DLOAD_0, DLOAD_1, DLOAD_2, DLOAD_3, DMUL, DNEG, DREM, DRETURN, DSTORE, DSTORE_0, DSTORE_1, DSTORE_2, DSTORE_3, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAD_0, FLOAD_1, FLOAD_2, FLOAD_3, FMUL, FNEG, FREM, FRETURN, FSTORE, FSTORE_0, FSTORE_1, FSTORE_2, FSTORE_3, FSUB, GETFIELD, GETSTATIC, GOTO, GOTO_W, 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, ILOAD_0, ILOAD_1, ILOAD_2, ILOAD_3, IMUL, INEG, INSTANCEOF, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISTORE_0, ISTORE_1, ISTORE_2, ISTORE_3, ISUB, IUSHR, IXOR, JSR, JSR_W, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDC_W, LDC2_W, LDIV, LLOAD, LLOAD_0, LLOAD_1, LLOAD_2, LLOAD_3, LMUL, LNEG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSTORE_0, LSTORE_1, LSTORE_2, LSTORE_3, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, STACK_GROW, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, WIDE
 
Constructor Summary
TransformCall(Transformer next, CtMethod origMethod, CtMethod substMethod)
           
TransformCall(Transformer next, String oldMethodName, CtMethod substMethod)
           
 
Method Summary
 void initialize(ConstPool cp, CodeAttribute attr)
           
protected  int match(int c, int pos, CodeIterator iterator, int typedesc, ConstPool cp)
           
 int transform(CtClass clazz, int pos, CodeIterator iterator, ConstPool cp)
          Modify INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC and INVOKEVIRTUAL so that a different method is invoked.
 
Methods inherited from class javassist.convert.Transformer
clean, extraLocals, extraStack, getNext, initialize
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

classname

protected String classname

methodname

protected String methodname

methodDescriptor

protected String methodDescriptor

newClassname

protected String newClassname

newMethodname

protected String newMethodname

newMethodIsPrivate

protected boolean newMethodIsPrivate

newIndex

protected int newIndex

constPool

protected ConstPool constPool
Constructor Detail

TransformCall

public TransformCall(Transformer next,
                     CtMethod origMethod,
                     CtMethod substMethod)

TransformCall

public TransformCall(Transformer next,
                     String oldMethodName,
                     CtMethod substMethod)
Method Detail

initialize

public void initialize(ConstPool cp,
                       CodeAttribute attr)
Overrides:
initialize in class Transformer

transform

public int transform(CtClass clazz,
                     int pos,
                     CodeIterator iterator,
                     ConstPool cp)
              throws BadBytecode
Modify INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC and INVOKEVIRTUAL so that a different method is invoked. The class name in the operand of these instructions might be a subclass of the target class specified by classname. This method transforms the instruction in that case unless the subclass overrides the target method.

Specified by:
transform in class Transformer
Throws:
BadBytecode

match

protected int match(int c,
                    int pos,
                    CodeIterator iterator,
                    int typedesc,
                    ConstPool cp)
             throws BadBytecode
Throws:
BadBytecode

Javassist 3.15.0-GA-redhat-2

Copyright © 2012 JBoss by Red Hat. All Rights Reserved.