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

Reply via email to