Overview | Package | Class | Tree | Deprecated | Index | Help
| Spring Framework
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.springframework.transaction.support
Interface CallbackPreferringPlatformTransactionManager

All Superinterfaces:
  PlatformTransactionManager

All Known Implementing Classes:
  WebSphereUowTransactionManager

    public interface CallbackPreferringPlatformTransactionManager

extends PlatformTransactionManager

Extension of the `PlatformTransactionManager` interface, exposing a method for executing a given callback within a transaction.

Implementors of this interface automatically express a preference for callbacks over programmatic `getTransaction`, `commit` and `rollback` calls. Calling code may check whether a given transaction manager implements this interface to choose to prepare a callback instead of explicit transaction demarcation control.

Spring's `TransactionTemplate` and `TransactionInterceptor` detect and use this PlatformTransactionManager variant automatically.

Since:
  2.0
Author:
  Juergen Hoeller
See Also:
  `TransactionTemplate`, `TransactionInterceptor`

Method Summary
`
`<T> T`
` | `execute(TransactionDefinition definition, TransactionCallback<T> callback)` Execute the action specified by the given callback object within a transaction.

Methods inherited from interface org.springframework.transaction.PlatformTransactionManager
`commit, getTransaction, rollback`

Method Detail

### execute

    <T> T execute(TransactionDefinition definition,
                  TransactionCallback<T> callback)
              throws TransactionException

  Execute the action specified by the given callback object within a transaction.

  Allows for returning a result object created within the transaction, that is, a domain object or a collection of domain objects. A RuntimeException thrown by the callback is treated as a fatal exception that enforces a rollback. Such an exception gets propagated to the caller of the template.

  Parameters:
    `definition` - the definition for the transaction to wrap the callback in
    `callback` - the callback object that specifies the transactional action
  Returns:
    a result object returned by the callback, or `null` if none
  Throws:
    `TransactionException` - in case of initialization, rollback, or system errors
    `java.lang.RuntimeException` - if thrown by the TransactionCallback

Overview | Package | Class | Tree | Deprecated | Index | Help
| Spring Framework
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD