| java.lang.Object org.codehaus.aspectwerkz.transform.aopalliance.AopAllianceAspectModel
All known Subclasses: yapbaop.core.Yapbaop, org.codehaus.aspectwerkz.transform.spring.SpringAspectModel,
AopAllianceAspectModel | public class AopAllianceAspectModel implements AspectModel,TransformationConstants(Code) | | TODO support ConstructorInvocation (1h work) (plus tests)
Implementation of the AspectModel interface for AOP Alliance based frameworks (e.g. Spring, dynaop etc.).
Provides methods for definition of aspects and framework specific bytecode generation
used by the join point compiler.
author: Jonas BonŽr |
Method Summary | |
public void | createAfterAdviceArgumentHandling(CodeVisitor cv, AdviceMethodInfo adviceMethodInfo) Handles the arguments to the after advice. | public void | createAroundAdviceArgumentHandling(CodeVisitor cv, AdviceMethodInfo adviceMethodInfo) Handles the arguments to the before around. | public void | createAspectInstantiation(CodeVisitor cv, AspectInfo aspectInfo, String joinPointClassName) Creates instantiation of the aop alliance aspect instance by invoking aspectOf(). | public void | createAspectReferenceField(ClassWriter cw, AspectInfo aspectInfo, String joinPointClassName) Creates host of the aop alliance aspect instance by invoking aspectOf(). | public void | createBeforeAdviceArgumentHandling(CodeVisitor cv, AdviceMethodInfo adviceMethodInfo) Handles the arguments to the before advice. | public void | createInvocationOfAroundClosureSuperClass(CodeVisitor cv) Creates an invocation of the around closure class' constructor. | public void | createMandatoryMethods(ClassWriter cw, String className) Creates the methods required to implement or extend to implement the closure for the specific
aspect model type. | public void | defineAspect(ClassInfo classInfo, AspectDefinition aspectDef, ClassLoader loader) Defines the aspect. | public AroundClosureClassInfo | getAroundClosureClassInfo() Returns info about the closure class, name and type (interface or class). | public String | getAspectModelType() Returns the aspect model type, which is an id for the the special aspect model, can be anything as long
as it is unique. | public boolean | requiresReflectiveInfo() AOP Alliance is a reflection based model and therefore in need of RTTI info: returns true. |
AOP_ALLIANCE_CLOSURE_CLASS_NAME | final protected static String AOP_ALLIANCE_CLOSURE_CLASS_NAME(Code) | | |
AOP_ALLIANCE_CLOSURE_PROCEED_METHOD_NAME | final protected static String AOP_ALLIANCE_CLOSURE_PROCEED_METHOD_NAME(Code) | | |
AOP_ALLIANCE_CLOSURE_PROCEED_METHOD_SIGNATURE | final protected static String AOP_ALLIANCE_CLOSURE_PROCEED_METHOD_SIGNATURE(Code) | | |
ASPECT_CONTAINER_CLASS_NAME | final protected static String ASPECT_CONTAINER_CLASS_NAME(Code) | | |
ASPECT_MODEL_TYPE | final protected static String ASPECT_MODEL_TYPE(Code) | | |
GET_ARGUMENTS_METHOD_NAME | final protected static String GET_ARGUMENTS_METHOD_NAME(Code) | | |
GET_ARGUMENTS_METHOD_SIGNATURE | final protected static String GET_ARGUMENTS_METHOD_SIGNATURE(Code) | | |
GET_METHOD_METHOD_NAME | final protected static String GET_METHOD_METHOD_NAME(Code) | | |
GET_METHOD_METHOD_SIGNATURE | final protected static String GET_METHOD_METHOD_SIGNATURE(Code) | | |
GET_PARAMETER_VALUES_METHOD_NAME | final protected static String GET_PARAMETER_VALUES_METHOD_NAME(Code) | | |
GET_STATIC_PART_METHOD_NAME | final protected static String GET_STATIC_PART_METHOD_NAME(Code) | | |
GET_STATIC_PART_METHOD_SIGNATURE | final protected static String GET_STATIC_PART_METHOD_SIGNATURE(Code) | | |
createAfterAdviceArgumentHandling | public void createAfterAdviceArgumentHandling(CodeVisitor cv, AdviceMethodInfo adviceMethodInfo)(Code) | | Handles the arguments to the after advice.
Parameters: cv - Parameters: adviceMethodInfo - |
createAroundAdviceArgumentHandling | public void createAroundAdviceArgumentHandling(CodeVisitor cv, AdviceMethodInfo adviceMethodInfo)(Code) | | Handles the arguments to the before around.
Parameters: cv - Parameters: adviceMethodInfo - |
createAspectInstantiation | public void createAspectInstantiation(CodeVisitor cv, AspectInfo aspectInfo, String joinPointClassName)(Code) | | Creates instantiation of the aop alliance aspect instance by invoking aspectOf().
Parameters: cv - Parameters: aspectInfo - Parameters: joinPointClassName - |
createAspectReferenceField | public void createAspectReferenceField(ClassWriter cw, AspectInfo aspectInfo, String joinPointClassName)(Code) | | Creates host of the aop alliance aspect instance by invoking aspectOf().
Parameters: cw - Parameters: aspectInfo - Parameters: joinPointClassName - |
createBeforeAdviceArgumentHandling | public void createBeforeAdviceArgumentHandling(CodeVisitor cv, AdviceMethodInfo adviceMethodInfo)(Code) | | Handles the arguments to the before advice.
Parameters: cv - Parameters: adviceMethodInfo - |
createInvocationOfAroundClosureSuperClass | public void createInvocationOfAroundClosureSuperClass(CodeVisitor cv)(Code) | | Creates an invocation of the around closure class' constructor.
Parameters: cv - |
createMandatoryMethods | public void createMandatoryMethods(ClassWriter cw, String className)(Code) | | Creates the methods required to implement or extend to implement the closure for the specific
aspect model type.
Parameters: cw - Parameters: className - |
getAroundClosureClassInfo | public AroundClosureClassInfo getAroundClosureClassInfo()(Code) | | Returns info about the closure class, name and type (interface or class).
the closure class info |
getAspectModelType | public String getAspectModelType()(Code) | | Returns the aspect model type, which is an id for the the special aspect model, can be anything as long
as it is unique.
the aspect model type id |
requiresReflectiveInfo | public boolean requiresReflectiveInfo()(Code) | | AOP Alliance is a reflection based model and therefore in need of RTTI info: returns true.
true |
|
|