djencks     2004/10/05 03:04:01

  Modified:    modules/core/src/java/org/openejb/mdb MDBContainer.java
                        MDBContext.java MDBInstanceContext.java
                        MDBInstanceContextFactory.java
  Log:

  Use TransactionContextManager rather than TransactionContext static methods.  Mostly 
fix GERONIMO-355. Progress on GERONIMO-347. This demonstrates the problems in 
GERONIMO-359 and GERONIMO-360 (there are now itest failures)
  
  Revision  Changes    Path
  1.18      +2 -2      openejb/modules/core/src/java/org/openejb/mdb/MDBContainer.java
  
  Index: MDBContainer.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/mdb/MDBContainer.java,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- MDBContainer.java 2 Aug 2004 01:52:36 -0000       1.17
  +++ MDBContainer.java 5 Oct 2004 07:04:01 -0000       1.18
  @@ -141,7 +141,7 @@
           SystemMethodIndices systemMethodIndices = 
contextFactory.setSignatures(getSignatures());
   
           contextFactory.setSystemChain(chains.getSystemChain());
  -
  +        contextFactory.setTransactionContextManager(transactionContextManager);
           if (timer != null) {
               timerService = new BasicTimerService(systemMethodIndices, interceptor, 
timer, objectName, kernel.getKernelName(), ObjectName.getInstance(objectName), 
transactionContextManager);
               contextFactory.setTimerService(timerService);
  
  
  
  1.4       +4 -3      openejb/modules/core/src/java/org/openejb/mdb/MDBContext.java
  
  Index: MDBContext.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/mdb/MDBContext.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- MDBContext.java   22 Jun 2004 19:04:53 -0000      1.3
  +++ MDBContext.java   5 Oct 2004 07:04:01 -0000       1.4
  @@ -58,6 +58,7 @@
   import javax.xml.rpc.handler.MessageContext;
   
   import org.apache.geronimo.transaction.UserTransactionImpl;
  +import org.apache.geronimo.transaction.context.TransactionContextManager;
   import org.openejb.EJBContextImpl;
   import org.openejb.EJBInstanceContext;
   import org.openejb.EJBOperation;
  @@ -69,8 +70,8 @@
    * @version $Revision$ $Date$
    */
   public class MDBContext extends EJBContextImpl implements MessageDrivenContext {
  -    public MDBContext(MDBInstanceContext context, UserTransactionImpl 
userTransaction) {
  -        super(context, userTransaction);
  +    public MDBContext(MDBInstanceContext context, TransactionContextManager 
transactionContextManager, UserTransactionImpl userTransaction) {
  +        super(context, transactionContextManager, userTransaction);
           state = MDBContext.INACTIVE;
       }
   
  
  
  
  1.8       +4 -3      
openejb/modules/core/src/java/org/openejb/mdb/MDBInstanceContext.java
  
  Index: MDBInstanceContext.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/mdb/MDBInstanceContext.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- MDBInstanceContext.java   20 Jul 2004 23:40:02 -0000      1.7
  +++ MDBInstanceContext.java   5 Oct 2004 07:04:01 -0000       1.8
  @@ -53,6 +53,7 @@
   
   import org.apache.geronimo.core.service.Interceptor;
   import org.apache.geronimo.transaction.UserTransactionImpl;
  +import org.apache.geronimo.transaction.context.TransactionContextManager;
   import org.openejb.AbstractInstanceContext;
   import org.openejb.EJBOperation;
   import org.openejb.dispatch.SystemMethodIndices;
  @@ -67,10 +68,10 @@
       private final Object containerId;
       private final MDBContext mdbContext;
   
  -    public MDBInstanceContext(Object containerId, MessageDrivenBean instance, 
UserTransactionImpl userTransaction, SystemMethodIndices systemMethodIndices, 
Interceptor systemChain, Set unshareableResources, Set 
applicationManagedSecurityResources, BasicTimerService timerService) {
  +    public MDBInstanceContext(Object containerId, MessageDrivenBean instance, 
TransactionContextManager transactionContextManager, UserTransactionImpl 
userTransaction, SystemMethodIndices systemMethodIndices, Interceptor systemChain, Set 
unshareableResources, Set applicationManagedSecurityResources, BasicTimerService 
timerService) {
           super(systemMethodIndices, systemChain, unshareableResources, 
applicationManagedSecurityResources, instance, null, timerService);
           this.containerId = containerId;
  -        this.mdbContext = new MDBContext(this, userTransaction);
  +        this.mdbContext = new MDBContext(this, transactionContextManager, 
userTransaction);
           setContextInvocation = systemMethodIndices.getSetContextInvocation(this, 
mdbContext);
           unsetContextInvocation = systemMethodIndices.getSetContextInvocation(this, 
null);
       }
  
  
  
  1.5       +10 -4     
openejb/modules/core/src/java/org/openejb/mdb/MDBInstanceContextFactory.java
  
  Index: MDBInstanceContextFactory.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/mdb/MDBInstanceContextFactory.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- MDBInstanceContextFactory.java    20 Jul 2004 23:40:02 -0000      1.4
  +++ MDBInstanceContextFactory.java    5 Oct 2004 07:04:01 -0000       1.5
  @@ -54,6 +54,7 @@
   
   import org.apache.geronimo.transaction.InstanceContext;
   import org.apache.geronimo.transaction.UserTransactionImpl;
  +import org.apache.geronimo.transaction.context.TransactionContextManager;
   import org.apache.geronimo.core.service.Interceptor;
   import org.openejb.EJBInstanceFactory;
   import org.openejb.EJBInstanceFactoryImpl;
  @@ -70,8 +71,9 @@
       private final UserTransactionImpl userTransaction;
       private final Set unshareableResources;
       private final Set applicationManagedSecurityResources;
  -    private SystemMethodIndices systemMethodIndices;
  -    private Interceptor systemChain;
  +    private transient SystemMethodIndices systemMethodIndices;
  +    private transient Interceptor systemChain;
  +    private transient TransactionContextManager transactionContextManager;
       private transient BasicTimerService timerService;
   
       public MDBInstanceContextFactory(Object containerId, Class beanClass, 
UserTransactionImpl userTransaction, Set unshareableResources, Set 
applicationManagedSecurityResources) {
  @@ -91,6 +93,10 @@
           return systemMethodIndices;
       }
   
  +    public void setTransactionContextManager(TransactionContextManager 
transactionContextManager) {
  +        this.transactionContextManager = transactionContextManager;
  +    }
  +
       public void setTimerService(BasicTimerService timerService) {
           this.timerService = timerService;
       }
  @@ -99,7 +105,7 @@
       public InstanceContext newInstance() throws Exception {
           return new MDBInstanceContext(containerId,
                   (MessageDrivenBean) factory.newInstance(),
  -                userTransaction,
  +                transactionContextManager, userTransaction,
                   systemMethodIndices, systemChain, unshareableResources,
                   applicationManagedSecurityResources, timerService);
       }
  
  
  

Reply via email to