com.xenonsoft.bridgetown.aop.transaction
Interface IResourceController

All Known Implementing Classes:
DataSourceResourceController, ExpressoDBConnectionResourceController, HibernateSessionResourceController, JNDIDataSourceResourceController

public interface IResourceController

This interface defines the contract for a resource controller that is responsible for management of a resource during a transaction.

Version:
$Id: IResourceController.java,v 1.4 2005/03/17 02:35:51 peter_pilgrim Exp $
Author:
Peter Pilgrim, 08-Nov-2004 17:34:24

Method Summary
 void closeResource(ITransactionContext tx)
          Closes the resource for transaction management
 void commitResource(ITransactionContext tx)
          Commits the resource for transaction management
 java.lang.Object getResourceConnection()
          Retrieves the connection resource that binds to the application to the transactional resource.
 boolean isResourceOpen(ITransactionContext tx)
          Retrieve the boolean value that indicates if the resource is open and available for transactional operations or not
 void openResource(ITransactionContext tx)
          Opens the resource for transaction management
 boolean prepareToCommit(ITransactionContext tx)
          Queries the resource manager if it ready to commit the transaction
 void resumeResource(ITransactionContext tx)
          Resumes the resource for transaction management
 void rollbackResource(ITransactionContext tx)
          Rolls back the resource for transaction management
 void setRequestedIsolationLevel(TransactionIsolationEnum level)
          Sets the requested transaction isolation level for this resource controller.
 void setRequestedTransactionTimeout(int timeout)
          Sets the requested transaction timeout for this resource controller.
 void suspendResource(ITransactionContext tx)
          Suspends the resource for transaction management
 

Method Detail

getResourceConnection

public java.lang.Object getResourceConnection()
Retrieves the connection resource that binds to the application to the transactional resource.

For instance, for a JDBC resource controller, this method would return the Connection.

Returns:
the resource connection object

setRequestedIsolationLevel

public void setRequestedIsolationLevel(TransactionIsolationEnum level)
                                throws java.lang.IllegalStateException
Sets the requested transaction isolation level for this resource controller. The underlying resource controller may or may not support this request.

Parameters:
level - the isolation level
Throws:
java.lang.IllegalStateException - thrown if the isolation level cannot be set

setRequestedTransactionTimeout

public void setRequestedTransactionTimeout(int timeout)
                                    throws java.lang.IllegalStateException
Sets the requested transaction timeout for this resource controller. The underlying resource controller may or may not support this request.

Parameters:
timeout - the transaction timeout
Throws:
java.lang.IllegalStateException - thrown if the timeout value is illegal for this resource controller

isResourceOpen

public boolean isResourceOpen(ITransactionContext tx)
Retrieve the boolean value that indicates if the resource is open and available for transactional operations or not

Parameters:
tx - the transaction object
Returns:
return true is opened for transactions

openResource

public void openResource(ITransactionContext tx)
Opens the resource for transaction management

Parameters:
tx - the transaction object

suspendResource

public void suspendResource(ITransactionContext tx)
Suspends the resource for transaction management

Parameters:
tx - the transaction object

resumeResource

public void resumeResource(ITransactionContext tx)
Resumes the resource for transaction management

Parameters:
tx - the transaction object

prepareToCommit

public boolean prepareToCommit(ITransactionContext tx)
Queries the resource manager if it ready to commit the transaction

Parameters:
tx - the transaction
Returns:
true if the resource manager can commit the transaction, otherwise it should return false.

commitResource

public void commitResource(ITransactionContext tx)
Commits the resource for transaction management

Parameters:
tx - the transaction object

rollbackResource

public void rollbackResource(ITransactionContext tx)
Rolls back the resource for transaction management

Parameters:
tx - the transaction object

closeResource

public void closeResource(ITransactionContext tx)
Closes the resource for transaction management

Parameters:
tx - the transaction object


Copyright © 2005 XeNoNSoFT.com. All Rights Reserved.