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#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...