org.openejb.alt.containers.castor_cmp11
Class CastorCmpEntityTxPolicy

java.lang.Object
  |
  +--org.openejb.core.transaction.TransactionPolicy
        |
        +--org.openejb.alt.containers.castor_cmp11.CastorCmpEntityTxPolicy

public class CastorCmpEntityTxPolicy
extends TransactionPolicy

Wraps the TxPolicies for EntityBeans beans with container-managed persistence using Castor for persistence. When the wrapped TransactionPolicy doesn't start a transaction for the invocation of called method, a Castor local transaciton is required. The castor local transaction executes on a Database object aquired from a JDO object that was not initated with a transaction manager name. The local transaction will be committed by the afterInoke() method of this class or rolled back by the handleSystemException() or handleApplicationException() methods.

Version:
$Revision: 1.1.1.1 $ $Date: 2002/01/18 23:21:19 $

Field Summary
protected  CastorCMP11_EntityContainer cmpContainer
           
protected  org.exolab.castor.jdo.JDO jdo_ForLocalTransaction
           
protected  TransactionPolicy policy
           
 
Fields inherited from class org.openejb.core.transaction.TransactionPolicy
BeanManaged, container, logger, Manditory, Never, NotSupported, policyType, Required, RequiresNew, Supports
 
Constructor Summary
CastorCmpEntityTxPolicy(TransactionPolicy policy)
           
 
Method Summary
 void afterInvoke(javax.ejb.EnterpriseBean instance, TransactionContext context)
           
 void beforeInvoke(javax.ejb.EnterpriseBean instance, TransactionContext context)
           
 void handleApplicationException(java.lang.Throwable appException, TransactionContext context)
           
 void handleSystemException(java.lang.Throwable sysException, javax.ejb.EnterpriseBean instance, TransactionContext context)
           
 
Methods inherited from class org.openejb.core.transaction.TransactionPolicy
beginTransaction, commitTransaction, discardBeanInstance, getContainer, getTxMngr, handleCallbackException, logSystemException, markTxRollbackOnly, rollbackTransaction, throwAppExceptionToServer, throwExceptionToServer, throwTxExceptionToServer
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

policy

protected TransactionPolicy policy

cmpContainer

protected CastorCMP11_EntityContainer cmpContainer

jdo_ForLocalTransaction

protected org.exolab.castor.jdo.JDO jdo_ForLocalTransaction
Constructor Detail

CastorCmpEntityTxPolicy

public CastorCmpEntityTxPolicy(TransactionPolicy policy)
Method Detail

beforeInvoke

public void beforeInvoke(javax.ejb.EnterpriseBean instance,
                         TransactionContext context)
                  throws SystemException,
                         ApplicationException
Overrides:
beforeInvoke in class TransactionPolicy

afterInvoke

public void afterInvoke(javax.ejb.EnterpriseBean instance,
                        TransactionContext context)
                 throws ApplicationException,
                        SystemException
Overrides:
afterInvoke in class TransactionPolicy

handleApplicationException

public void handleApplicationException(java.lang.Throwable appException,
                                       TransactionContext context)
                                throws ApplicationException
Overrides:
handleApplicationException in class TransactionPolicy

handleSystemException

public void handleSystemException(java.lang.Throwable sysException,
                                  javax.ejb.EnterpriseBean instance,
                                  TransactionContext context)
                           throws ApplicationException,
                                  SystemException
Overrides:
handleSystemException in class TransactionPolicy