We also identified needs for Status#ROLLING_BACK and Status#COMMITTING, so consider those in the enum as well.
On Wed, Mar 25, 2015 at 12:19 PM, Steve Ebersole <st...@hibernate.org> wrote: > I thought I had asked this before, but maybe not. Andrea and I are > working through the transaction/jdbc changes and I really would like to > clean up the org.hibernate.Transaction API. But before I start cutting I > wanted to make sure noone is using the methods I plan on getting rid of... > > Here is the new proposed contract: > > public interface Transsaction { > public void begin(); > public void commit(); > public void rollback(); > public void markRollbackOnly(); > > public Status getStatus(); > > public int getTimeout(); > public void setTimeout(int seconds); > > public void registerSynchronization(Synchronization synchronization); > } > > public enum Status { > NOT_ACTIVE, > ACTIVE, > COMMITTED, > ROLLED_BACK, > FAILED_COMMIT > } > > Notes: > 1) isInitiator() has been removed with no real replacement. I could not > really see when that would be useful. > 2) isParticipating() has been removed with no real replacement. > 2) isActive(), wasCommitted() and wasRolledBack has all been removed with > call to getStatus() as replacement > 3) getLocalStatus() is gone. Who cares :) If users are asking us this, > we really should be checking the REAL state of the transaction > 4) Transaction is now a single impl. The distinctions are all handled > internally. TransactionImplementor is gone too. > > Thoughts? Concerns? > _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev