[jboss-cvs] jboss-seam/src/main/org/jboss/seam/persistence ...

Gavin King gavin.king at jboss.com
Fri Jul 6 15:42:55 EDT 2007


  User: gavin   
  Date: 07/07/06 15:42:55

  Modified:    src/main/org/jboss/seam/persistence  
                        ManagedHibernateSession.java
                        ManagedPersistenceContext.java
  Log:
  JBSEAM-1614
  
  Revision  Changes    Path
  1.14      +13 -6     jboss-seam/src/main/org/jboss/seam/persistence/ManagedHibernateSession.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: ManagedHibernateSession.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/persistence/ManagedHibernateSession.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -b -r1.13 -r1.14
  --- ManagedHibernateSession.java	24 Jun 2007 23:57:18 -0000	1.13
  +++ ManagedHibernateSession.java	6 Jul 2007 19:42:55 -0000	1.14
  @@ -1,4 +1,4 @@
  -//$Id: ManagedHibernateSession.java,v 1.13 2007/06/24 23:57:18 gavin Exp $
  +//$Id: ManagedHibernateSession.java,v 1.14 2007/07/06 19:42:55 gavin Exp $
   package org.jboss.seam.persistence;
   
   import java.io.Serializable;
  @@ -111,11 +111,20 @@
      {
         if (session==null) initSession();
         
  -      //join the transaction
  -      if ( !synchronizationRegistered && !Lifecycle.isDestroying() && Transaction.instance().isActive() )
  +      if ( !synchronizationRegistered && !Lifecycle.isDestroying() )
  +      {
  +         joinTransaction();
  +      }
  +      
  +      return session;
  +   }
  +
  +   private void joinTransaction() throws SystemException
         {
  -         session.isOpen();
            UserTransaction transaction = Transaction.instance();
  +      if ( transaction.isActive() )
  +      {
  +         session.isOpen();
            try
            {
               transaction.registerSynchronization(this);
  @@ -126,8 +135,6 @@
            }
            synchronizationRegistered = true;
         }
  -      
  -      return session;
      }
      
      //we can't use @PrePassivate because it is intercept NEVER
  
  
  
  1.11      +15 -7     jboss-seam/src/main/org/jboss/seam/persistence/ManagedPersistenceContext.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: ManagedPersistenceContext.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/persistence/ManagedPersistenceContext.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -b -r1.10 -r1.11
  --- ManagedPersistenceContext.java	24 Jun 2007 23:57:18 -0000	1.10
  +++ ManagedPersistenceContext.java	6 Jul 2007 19:42:55 -0000	1.11
  @@ -1,4 +1,4 @@
  -//$Id: ManagedPersistenceContext.java,v 1.10 2007/06/24 23:57:18 gavin Exp $
  +//$Id: ManagedPersistenceContext.java,v 1.11 2007/07/06 19:42:55 gavin Exp $
   package org.jboss.seam.persistence;
   
   import java.io.Serializable;
  @@ -106,11 +106,20 @@
      {
         if (entityManager==null) initEntityManager();
         
  -      //join the transaction
  -      if ( !synchronizationRegistered && !Lifecycle.isDestroying() && Transaction.instance().isActive() )
  +      if ( !synchronizationRegistered && !Lifecycle.isDestroying() )
  +      {
  +         joinTransaction();
  +      }
  +      
  +      return entityManager;
  +   }
  +
  +   private void joinTransaction() throws SystemException
         {
  -         entityManager.joinTransaction();
            UserTransaction transaction = Transaction.instance();
  +      if ( transaction.isActive() )
  +      {
  +         transaction.enlist(entityManager);
            try
            {
               transaction.registerSynchronization(this);
  @@ -121,8 +130,6 @@
               synchronizationRegistered = PersistenceProvider.instance().registerSynchronization(this, entityManager);
            }
         }
  -      
  -      return entityManager;
      }
      
      //we can't use @PrePassivate because it is intercept NEVER
  @@ -311,6 +318,7 @@
               break;
         }
      }
  +   
      @Override
      public String toString()
      {
  
  
  



More information about the jboss-cvs-commits mailing list