Here's a kick of of how we should integrate JBoss AOP with the new kernel. 1) We need to decide on the Invocation/Joinpoint model. I like the one you have defined in your kernel. We can switch to that, with some modifications of course.
Some questions on it though: - Annotations should be able to be added/overriden on a per-bean basis. Therefore we need a getAnnotation() method someplace in the SPI. At first thought, it seems like the JoinPoint is a good place? Is there a JoinPoint created per "container"? - Also, aspects/interceptors need to obtain Annotations on the class/interface of the particular Joinpoint. These annotations can also be overriden by the container in question. We need to decide where this method will be. Is there some type of ClassJoinpoint? I couldn't find one at first glance. - getAnnotation and getClassAnotation should be added to the InvocationContext so that annotations can be overriden on a per context basis. The gives the aspect a choice on whether to obtain a "static" annotation or a "dynamic" one. For instance, Security would not want a dynamically overridable annotation. 2) The SPI (at least the Joinpoint/Invocation/InvocationContext stuff) should be moved to the AOP package when AOP is ready. 3) Interceptors/Aspects should be defined outside a bean and bound in via a bind statement (like in JBoss AOP). Not defined directly within the bean. Usually, it is the aspect that decides its scope: whether it is created per vm, per class, per instance, per joinpoint, and not the other way around. Bill View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3861107#3861107 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3861107 ------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ JBoss-Development mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/jboss-development
