[jboss-dev-forums] [Design of AOP on JBoss (Aspects/JBoss)] - Re: Dynamic AOP API
flavia.rainone@jboss.com
do-not-reply at jboss.com
Thu Jul 24 15:42:00 EDT 2008
Yes, the DBO is a nice idea. The handle is not only needed for removal, but also for binding updates.
I think we should also provide some sort of dynamic AOP transaction, useful for two reasons:
performance: it is faster to perform a single dynamic AOP operation than two or three (think about caller pointcuts, and about hot swap)
| consistency: if two aspects work only together, the user won't want to risk having one of them enabled for a few ms without the other one. Other scenario that would need this is when a set of aspects is to be removed, so they can be replaced by a second set of aspects. The user won't want to risk running the joinpoints without aspects, nor with the two sets of aspects at the same time.
|
|
| This way, the user has an option of opening a transaction, indicating that all operations inside it will be performed in an atomic way, assuring consistency:
| DynamicAOP.start();
| | DynamicAOP.add(dbo1, dbo2, dbo3);
| | DynamicAOP.remove(oldDbo1.getHandle(), oldDbo2.getHandle(), oldDbo3.getHandle());
| | DynamicAOP.commit();
|
| If, on the other hand, the user does not start a transaction, each operation will be an atomic unit:
| DynamicAOP.add(dbo1, dbo2, dbo3);
| | DynamicAOP.remove(oldDbo1.getHandle(), oldDbo2.getHandle(), oldDbo3.getHandle());
|
| Naturally, the start and commit methods could have better names, I just haven't come up with a nice idea for them.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4166496#4166496
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4166496
More information about the jboss-dev-forums
mailing list