org.objectweb.dream.control.lifecycle
Class LifeCycleInterceptorGenerator

java.lang.Object
  extended byorg.objectweb.fractal.julia.asm.AbstractCodeGenerator
      extended byorg.objectweb.fractal.julia.asm.SimpleCodeGenerator
          extended byorg.objectweb.dream.control.lifecycle.LifeCycleInterceptorGenerator
All Implemented Interfaces:
CodeGenerator, org.objectweb.asm.Constants, Initializable

public class LifeCycleInterceptorGenerator
extends SimpleCodeGenerator

Interceptor generator for lifecycle interceptor. Use SimpleCodeGeneratorpre and post method are implemented by lifecycle-controller. Pre and post method have the following signature :int addCurrentThread(String s) and void removeCurrentThread(String s, int i).


Field Summary
 
Fields inherited from interface org.objectweb.asm.Constants
AALOAD, AASTORE, ACC_ABSTRACT, ACC_DEPRECATED, 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_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, DREM, DRETURN, DSTORE, 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, 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, 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, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, 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
 
Fields inherited from interface org.objectweb.fractal.julia.asm.CodeGenerator
IN, IN_OUT, OUT
 
Constructor Summary
LifeCycleInterceptorGenerator()
           
 
Method Summary
protected  Class getContextType()
           
protected  String getControllerInterfaceName()
           
protected  int getInterceptionType(Method m)
           
protected  String getMethodName(Method m)
           
protected  String getPostMethodName()
           
protected  String getPreMethodName()
           
 
Methods inherited from class org.objectweb.fractal.julia.asm.SimpleCodeGenerator
generateCloneCode, generateInitCode, generateInterceptionCodeBlock, getInterceptionCodeFormals, init, initialize, needsInterfaceName, needsTargetObject
 
Methods inherited from class org.objectweb.fractal.julia.asm.AbstractCodeGenerator
close, generateInterceptionCode, intercept
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LifeCycleInterceptorGenerator

public LifeCycleInterceptorGenerator()
Method Detail

getControllerInterfaceName

protected String getControllerInterfaceName()
See Also:
SimpleCodeGenerator.getControllerInterfaceName()

getPreMethodName

protected String getPreMethodName()
See Also:
SimpleCodeGenerator.getPreMethodName()

getPostMethodName

protected String getPostMethodName()
See Also:
SimpleCodeGenerator.getPostMethodName()

getContextType

protected Class getContextType()
See Also:
SimpleCodeGenerator.getContextType()

getMethodName

protected String getMethodName(Method m)
See Also:
SimpleCodeGenerator.getMethodName(Method)

getInterceptionType

protected int getInterceptionType(Method m)
See Also:
AbstractCodeGenerator.getInterceptionType(Method)


Copyright © 2003, 2004 - INRIA Rhone-Alpes - All Rights Reserved.