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

Gavin King gavin.king at jboss.com
Wed Jul 12 20:58:55 EDT 2006


  User: gavin   
  Date: 06/07/12 20:58:55

  Modified:    src/main/org/jboss/seam/core  
                        ManagedPersistenceContext.java
                        ManagedHibernateSession.java
  Log:
  control flushing from @Begin
  
  Revision  Changes    Path
  1.16      +16 -2     jboss-seam/src/main/org/jboss/seam/core/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/core/ManagedPersistenceContext.java,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -b -r1.15 -r1.16
  --- ManagedPersistenceContext.java	17 Jun 2006 01:35:11 -0000	1.15
  +++ ManagedPersistenceContext.java	13 Jul 2006 00:58:55 -0000	1.16
  @@ -1,4 +1,4 @@
  -//$Id: ManagedPersistenceContext.java,v 1.15 2006/06/17 01:35:11 gavin Exp $
  +//$Id: ManagedPersistenceContext.java,v 1.16 2006/07/13 00:58:55 gavin Exp $
   package org.jboss.seam.core;
   
   import static org.jboss.seam.InterceptionType.NEVER;
  @@ -8,6 +8,7 @@
   import javax.naming.NamingException;
   import javax.persistence.EntityManager;
   import javax.persistence.EntityManagerFactory;
  +import javax.persistence.FlushModeType;
   import javax.transaction.SystemException;
   
   import org.apache.commons.logging.Log;
  @@ -21,6 +22,7 @@
   import org.jboss.seam.annotations.Scope;
   import org.jboss.seam.annotations.Unwrap;
   import org.jboss.seam.util.Naming;
  +import org.jboss.seam.util.Persistence;
   import org.jboss.seam.util.Transactions;
   
   /**
  @@ -60,6 +62,18 @@
            throw new IllegalArgumentException("EntityManagerFactory not found", ne);
         }
         
  +      switch ( Conversation.instance().getFlushMode() )
  +      {
  +         case AUTO: 
  +            break;
  +         case MANUAL:
  +            Persistence.setFlushModeManual(entityManager); 
  +            break;
  +         case COMMIT: 
  +            entityManager.setFlushMode(FlushModeType.COMMIT); 
  +            break;
  +      }
  +      
         if ( log.isDebugEnabled() )
         {
            log.debug("created seam managed persistence context for persistence unit: "+ persistenceUnitJndiName);
  
  
  
  1.17      +9 -1      jboss-seam/src/main/org/jboss/seam/core/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/core/ManagedHibernateSession.java,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -b -r1.16 -r1.17
  --- ManagedHibernateSession.java	17 Jun 2006 01:35:11 -0000	1.16
  +++ ManagedHibernateSession.java	13 Jul 2006 00:58:55 -0000	1.17
  @@ -1,4 +1,4 @@
  -//$Id: ManagedHibernateSession.java,v 1.16 2006/06/17 01:35:11 gavin Exp $
  +//$Id: ManagedHibernateSession.java,v 1.17 2006/07/13 00:58:55 gavin Exp $
   package org.jboss.seam.core;
   
   import static org.jboss.seam.InterceptionType.NEVER;
  @@ -9,6 +9,7 @@
   
   import org.apache.commons.logging.Log;
   import org.apache.commons.logging.LogFactory;
  +import org.hibernate.FlushMode;
   import org.hibernate.Session;
   import org.hibernate.SessionFactory;
   import org.jboss.seam.Component;
  @@ -60,6 +61,13 @@
            throw new IllegalArgumentException("SessionFactory not found", ne);
         }
         
  +      switch ( Conversation.instance().getFlushMode() )
  +      {
  +         case AUTO: break;
  +         case MANUAL: session.setFlushMode(FlushMode.NEVER); break;
  +         case COMMIT: session.setFlushMode(FlushMode.COMMIT); break;
  +      }
  +      
         if ( log.isDebugEnabled() )
         {
            log.debug("created seam managed session for session factory: "+ sessionFactoryJndiName);
  
  
  



More information about the jboss-cvs-commits mailing list