| java.lang.Object org.codehaus.aspectwerkz.transform.inlining.compiler.AbstractJoinPointCompiler org.codehaus.aspectwerkz.transform.inlining.compiler.MethodCallJoinPointCompiler
All known Subclasses: org.codehaus.aspectwerkz.transform.inlining.compiler.MethodCallJoinPointRedefiner,
MethodCallJoinPointCompiler | public class MethodCallJoinPointCompiler extends AbstractJoinPointCompiler (Code) | | A compiler that compiles/generates a class that represents a specific join point, a class which invokes the advices
and the target join point statically.
author: Jonas BonŽr author: Alexandre Vasseur |
MethodCallJoinPointCompiler | MethodCallJoinPointCompiler(CompilationInfo.Model model)(Code) | | Creates a new join point compiler instance.
Parameters: model - |
createGetRttiMethod | protected void createGetRttiMethod()(Code) | | Creates the getRtti method
|
createGetSignatureMethod | protected void createGetSignatureMethod()(Code) | | Creates the getSignature method.
|
createInlinedJoinPointInvocation | protected void createInlinedJoinPointInvocation(CodeVisitor cv, boolean isOptimizedJoinPoint, int argStartIndex, int joinPointIndex)(Code) | | Optimized implementation that does not retrieve the parameters from the join point instance but is passed
directly to the method from the input parameters in the 'invoke' method. Can only be used if no around advice
exists.
Parameters: cv - Parameters: argStartIndex - index on stack of first target method arg (0 or 1, depends of static target or not) |
createJoinPointInvocation | protected void createJoinPointInvocation(CodeVisitor cv)(Code) | | Creates a call to the target join point, the parameter(s) to the join point are retrieved from the invocation
local join point instance.
Parameters: cv - |
createJoinPointSpecificFields | protected void createJoinPointSpecificFields()(Code) | | Creates join point specific fields.
|
createSignature | protected void createSignature(CodeVisitor cv)(Code) | | Creates the signature for the join point.
FIXME signature field should NOT be of type Signature but of the specific type (update all refs as well)
Parameters: cv - |
getJoinPointArgumentTypes | protected Type[] getJoinPointArgumentTypes()(Code) | | Returns the join points argument type(s).
|
getJoinPointReturnType | protected Type getJoinPointReturnType()(Code) | | Returns the join points return type.
|
Methods inherited from org.codehaus.aspectwerkz.transform.inlining.compiler.AbstractJoinPointCompiler | protected void addReturnedValueToJoinPoint(CodeVisitor cv, int returnValueIndex, int joinPointInstanceIndex, boolean unwrap)(Code)(Java Doc) protected Label beginRuntimeCheck(CodeVisitor cv, boolean isOptimizedJoinPoint, int joinPointInstanceIndex, AdviceInfo adviceInfo, int calleeIndex)(Code)(Java Doc) protected String buildInvokeMethodSignature()(Code)(Java Doc) public byte[] compile()(Code)(Java Doc) protected void createAfterAdviceInvocation(CodeVisitor cv, boolean isOptimizedJoinPoint, AdviceMethodInfo adviceMethodInfo, int joinPointInstanceIndex, int argStartIndex, int callerIndex, int calleeIndex, int specialArgIndex)(Code)(Java Doc) protected void createAfterFinallyAdviceInvocations(CodeVisitor cv, boolean isOptimizedJoinPoint, int argStartIndex, int joinPointInstanceIndex, int callerIndex, int calleeIndex)(Code)(Java Doc) protected void createAfterReturningAdviceInvocations(CodeVisitor cv, boolean isOptimizedJoinPoint, int argStartIndex, int joinPointInstanceIndex, int callerIndex, int calleeIndex)(Code)(Java Doc) protected boolean createAndInitializeAspectField(AspectInfo aspectInfo, CodeVisitor cv)(Code)(Java Doc) final protected void createArgumentArrayAt(CodeVisitor cv, int stackFreeIndex)(Code)(Java Doc) public static void createAspectInstantiation(CodeVisitor cv, AspectInfo aspectInfo, String joinPointClassName)(Code)(Java Doc) public static void createAspectReferenceField(ClassWriter cw, AspectInfo aspectInfo)(Code)(Java Doc) protected void createBeforeAdviceInvocations(CodeVisitor cv, boolean isOptimizedJoinPoint, int argStartIndex, int joinPointInstanceIndex, int callerIndex, int calleeIndex)(Code)(Java Doc) protected void createClinit()(Code)(Java Doc) protected void createCopyMethod()(Code)(Java Doc) protected void createEnclosingStaticJoinPoint(CodeVisitor cv)(Code)(Java Doc) protected void createFieldsCommonToAllJoinPoints()(Code)(Java Doc) abstract protected void createGetRttiMethod()(Code)(Java Doc) abstract protected void createGetSignatureMethod()(Code)(Java Doc) protected void createInit()(Code)(Java Doc) abstract protected void createInlinedJoinPointInvocation(CodeVisitor cv, boolean isOptimizedJoinPoint, int argStartIndex, int joinPointIndex)(Code)(Java Doc) protected void createInvocationLocalJoinPointInstance(CodeVisitor cv, int argStartIndex, int joinPointInstanceIndex, int callerIndex, int calleeIndex)(Code)(Java Doc) public void createInvocationToAspectOf(CodeVisitor cv, boolean isOptimizedJoinPoint, int joinPointIndex, int callerIndex, int calleeIndex, AspectInfo aspectInfo)(Code)(Java Doc) protected void createInvocationToProceedMethod(CodeVisitor cv, int joinPointInstanceIndex, int returnValueIndex)(Code)(Java Doc) protected void createInvokeMethod()(Code)(Java Doc) abstract protected void createJoinPointInvocation(CodeVisitor cv)(Code)(Java Doc) abstract protected void createJoinPointSpecificFields()(Code)(Java Doc) protected void createPartOfInvokeMethodWithAllAdviceTypes(CodeVisitor cv, boolean isOptimizedJoinPoint, int joinPointInstanceIndex, int argStartIndex, int callerIndex, int calleeIndex)(Code)(Java Doc) protected void createPartOfInvokeMethodWithoutAfterFinallyAndAfterThrowingAdviceTypes(CodeVisitor cv, boolean isOptimizedJoinPoint, int joinPointInstanceIndex, int argStartIndex, int callerIndex, int calleeIndex)(Code)(Java Doc) protected void createPartOfInvokeMethodWithoutAfterThrowingAdviceTypes(CodeVisitor cv, boolean isOptimizedJoinPoint, int joinPointInstanceIndex, int argStartIndex, int callerIndex, int calleeIndex)(Code)(Java Doc) protected void createProceedMethod()(Code)(Java Doc) abstract protected void createSignature(CodeVisitor cv)(Code)(Java Doc) protected void createStaticInitializer()(Code)(Java Doc) protected void createUtilityMethods()(Code)(Java Doc) protected void endRuntimeCheck(CodeVisitor cv, AdviceInfo adviceInfo, Label label)(Code)(Java Doc) protected AdviceMethodInfo[] getAdviceMethodInfos(List aspectQualifiedNames, Set aspectInfos, AdviceInfo[] adviceInfos)(Code)(Java Doc) abstract protected Type[] getJoinPointArgumentTypes()(Code)(Java Doc) abstract protected Type getJoinPointReturnType()(Code)(Java Doc) final protected boolean hasArguments()(Code)(Java Doc) protected void incrementStackFrameCounter(CodeVisitor cv)(Code)(Java Doc) protected void initializeInstanceLevelAspects(CodeVisitor cv, boolean isOptimizedJoinPoint, int joinPointIndex, int callerIndex, int calleeIndex)(Code)(Java Doc) protected void loadArgumentMemberFields(CodeVisitor cv, int argStartIndex)(Code)(Java Doc) protected void loadArguments(CodeVisitor cv)(Code)(Java Doc) protected void loadAspect(CodeVisitor cv, boolean isOptimizedJoinPoint, int joinPointIndex, AspectInfo aspectInfo)(Code)(Java Doc) public void loadCallee(CodeVisitor cv, boolean isOptimizedJoinPoint, int joinPointIndex, int calleeIndex)(Code)(Java Doc) protected void loadCaller(CodeVisitor cv, boolean isOptimizedJoinPoint, int joinPointIndex, int callerIndex)(Code)(Java Doc) protected void loadJoinPointInstance(CodeVisitor cv, boolean isOptimizedJoinPoint, int joinPointInstanceIndex)(Code)(Java Doc) protected boolean requiresJoinPoint()(Code)(Java Doc) protected boolean requiresJoinPoint(AdviceMethodInfo[] adviceMethodInfos)(Code)(Java Doc) protected boolean requiresProceedMethod()(Code)(Java Doc) protected boolean requiresThisOrTarget()(Code)(Java Doc) protected boolean requiresThisOrTarget(AdviceMethodInfo[] adviceMethodInfos)(Code)(Java Doc) protected void resetStackFrameCounter(CodeVisitor cv)(Code)(Java Doc)
|
|
|