org.alfresco.service.transaction
Interface TransactionService

All Known Implementing Classes:
DummyTransactionService, TransactionServiceImpl

@PublicService
public interface TransactionService

Contract for retrieving access to a user transaction.

Note that the implementation of the UserTransaction is not able to provide the full set of status codes available on the Status class.


Method Summary
 javax.transaction.UserTransaction getNonPropagatingUserTransaction()
          Gets a user transaction that ensures a new transaction is created.
 javax.transaction.UserTransaction getNonPropagatingUserTransaction(boolean readOnly)
          Gets a user transaction that ensures a new transaction is created.
 RetryingTransactionHelper getRetryingTransactionHelper()
          Get the standard instance of the helper object that supports transaction retrying.
 javax.transaction.UserTransaction getUserTransaction()
          Gets a user transaction that supports transaction propagation.
 javax.transaction.UserTransaction getUserTransaction(boolean readOnly)
          Gets a user transaction that supports transaction propagation.
 boolean isReadOnly()
          Determine if ALL user transactions will be read-only.
 

Method Detail

isReadOnly

@NotAuditable
boolean isReadOnly()
Determine if ALL user transactions will be read-only.

Returns:
Returns true if all transactions are read-only.

getUserTransaction

@NotAuditable
javax.transaction.UserTransaction getUserTransaction()
Gets a user transaction that supports transaction propagation. This is like the EJB REQUIRED transaction attribute.

Returns:
the user transaction

getUserTransaction

@NotAuditable
javax.transaction.UserTransaction getUserTransaction(boolean readOnly)
Gets a user transaction that supports transaction propagation. This is like the EJB REQUIRED transaction attribute.

Parameters:
readOnly - Set true for a READONLY transaction instance, false otherwise. Note that it is not always possible to force a write transaction if the system is in read-only mode.
Returns:
the user transaction

getNonPropagatingUserTransaction

@NotAuditable
javax.transaction.UserTransaction getNonPropagatingUserTransaction()
Gets a user transaction that ensures a new transaction is created. Any enclosing transaction is not propagated. This is like the EJB REQUIRES_NEW transaction attribute - when the transaction is started, the current transaction will be suspended and a new one started.

Returns:
Returns a non-propagating user transaction

getNonPropagatingUserTransaction

@NotAuditable
javax.transaction.UserTransaction getNonPropagatingUserTransaction(boolean readOnly)
Gets a user transaction that ensures a new transaction is created. Any enclosing transaction is not propagated. This is like the EJB REQUIRES_NEW transaction attribute - when the transaction is started, the current transaction will be suspended and a new one started.

Parameters:
readOnly - Set true for a READONLY transaction instance, false otherwise. Note that it is not always possible to force a write transaction if the system is in read-only mode.
Returns:
Returns a non-gating user transaction

getRetryingTransactionHelper

@NotAuditable
RetryingTransactionHelper getRetryingTransactionHelper()
Get the standard instance of the helper object that supports transaction retrying.

Returns:
Returns a helper object that executes units of work transactionally. The helper can be reused or altered as required.


Copyright © 2005 - 2010 Alfresco Software, Inc. All Rights Reserved.