Well, my first thought is "ugh".
Personally I think that suggestion is actually a step backwards. Our
current Hibernate implementation requires the same exact thing, each
operation happens within a Transaction, but we are able to begin
transactions in a lazy fashion and it's isolated within the Hibernate
implementation code so that the rest of the code isn't littered with
Roller.begin() statements everywhere.
If you look in the HibernatePersistenceStrategy class it's pretty easy
to see what I mean. Any time one of the hibernate manager impl classes
requests a Hibernate Session to do some work, a transaction is
automatically started. Check out HibernatePersistenceStrategy.getSession()
Unless there is a *very* *very* strong reason why that can't be done in
JDO then I would much prefer that we not revert to using a
Roller.begin() method. The idea is that persistence is supposed to be
transparent, and as soon as every time you work on an object you have to
wrap it in a begin() and flush() method then that's not the case anymore =(
-- Allen
Dave Johnson wrote:
This is an interesting RFE from Craig Russell:
http://opensource.atlassian.com/projects/roller/browse/ROL-1156
Perhaps we could call this new method Roller.begin() ?
- Dave