JBoss AOP applies the optimal solution according to the specific case. This 
means that:

- at compile, it checks class by class, verifying all bindings and aspect that 
apply to that class, and weaving its code. In this case, weaving on a per 
aspect basis would be costly, because it would force JBoss AOP to weave a 
single class more than once.

- at load time, it also checks the classes as they become loaded in the jvm. 
This is also the best solution because, as in the previous case, doing it the 
other way would force JBoss AOP to process a class more than once. And trying 
to figure out all classes afected by a specific class would force the load of 
all classes, which is not what we want

- at runtime (hotswap), JBossAOP weaves at a per dynamic operation basis. This 
means that, if you add one or more Binding on a single dynamic aop operation, 
JBoss AOP will first define all join points affected, and, only after this, 
perform the weaving of the affected classes. Plus, on JBoss AOP there is no 
flag involved, so, you won't have the unsetting flag cost if you use JBoss AOP 
in this case.

- at runtime (without hotswap) in this case, the class code has already been 
weaved, so JBoss AOP just adds the advices to the appropriete advice stacks

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3994944#3994944

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3994944
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to