Class DelegatingTransactionDefinition
- All Implemented Interfaces:
- Serializable,- TransactionDefinition
- Direct Known Subclasses:
- DelegatingTransactionAttribute
TransactionDefinition implementation that delegates all calls to a given target
 TransactionDefinition instance. Abstract because it is meant to be subclassed,
 with subclasses overriding specific methods that are not supposed to simply delegate
 to the target instance.- Since:
- 3.0
- Author:
- Juergen Hoeller
- See Also:
- 
Field SummaryFields inherited from interface org.springframework.transaction.TransactionDefinitionISOLATION_DEFAULT, ISOLATION_READ_COMMITTED, ISOLATION_READ_UNCOMMITTED, ISOLATION_REPEATABLE_READ, ISOLATION_SERIALIZABLE, PROPAGATION_MANDATORY, PROPAGATION_NESTED, PROPAGATION_NEVER, PROPAGATION_NOT_SUPPORTED, PROPAGATION_REQUIRED, PROPAGATION_REQUIRES_NEW, PROPAGATION_SUPPORTS, TIMEOUT_DEFAULT
- 
Constructor SummaryConstructorsConstructorDescriptionDelegatingTransactionDefinition(TransactionDefinition targetDefinition) Create a DelegatingTransactionAttribute for the given target attribute.
- 
Method Summary
- 
Constructor Details- 
DelegatingTransactionDefinitionCreate a DelegatingTransactionAttribute for the given target attribute.- Parameters:
- targetDefinition- the target TransactionAttribute to delegate to
 
 
- 
- 
Method Details- 
getPropagationBehaviorpublic int getPropagationBehavior()Description copied from interface:TransactionDefinitionReturn the propagation behavior.Must return one of the PROPAGATION_XXXconstants defined onthis interface.The default is TransactionDefinition.PROPAGATION_REQUIRED.- Specified by:
- getPropagationBehaviorin interface- TransactionDefinition
- Returns:
- the propagation behavior
- See Also:
 
- 
getIsolationLevelpublic int getIsolationLevel()Description copied from interface:TransactionDefinitionReturn the isolation level.Must return one of the ISOLATION_XXXconstants defined onthis interface. Those constants are designed to match the values of the same constants onConnection.Exclusively designed for use with TransactionDefinition.PROPAGATION_REQUIREDorTransactionDefinition.PROPAGATION_REQUIRES_NEWsince it only applies to newly started transactions. Consider switching the "validateExistingTransactions" flag to "true" on your transaction manager if you'd like isolation level declarations to get rejected when participating in an existing transaction with a different isolation level.The default is TransactionDefinition.ISOLATION_DEFAULT. Note that a transaction manager that does not support custom isolation levels will throw an exception when given any other level thanTransactionDefinition.ISOLATION_DEFAULT.- Specified by:
- getIsolationLevelin interface- TransactionDefinition
- Returns:
- the isolation level
- See Also:
 
- 
getTimeoutpublic int getTimeout()Description copied from interface:TransactionDefinitionReturn the transaction timeout.Must return a number of seconds, or TransactionDefinition.TIMEOUT_DEFAULT.Exclusively designed for use with TransactionDefinition.PROPAGATION_REQUIREDorTransactionDefinition.PROPAGATION_REQUIRES_NEWsince it only applies to newly started transactions.Note that a transaction manager that does not support timeouts will throw an exception when given any other timeout than TransactionDefinition.TIMEOUT_DEFAULT.The default is TransactionDefinition.TIMEOUT_DEFAULT.- Specified by:
- getTimeoutin interface- TransactionDefinition
- Returns:
- the transaction timeout
 
- 
isReadOnlypublic boolean isReadOnly()Description copied from interface:TransactionDefinitionReturn whether to optimize as a read-only transaction.The read-only flag applies to any transaction context, whether backed by an actual resource transaction ( TransactionDefinition.PROPAGATION_REQUIRED/TransactionDefinition.PROPAGATION_REQUIRES_NEW) or operating non-transactionally at the resource level (TransactionDefinition.PROPAGATION_SUPPORTS). In the latter case, the flag will only apply to managed resources within the application, such as a HibernateSession.This just serves as a hint for the actual transaction subsystem; it will not necessarily cause failure of write access attempts. A transaction manager which cannot interpret the read-only hint will not throw an exception when asked for a read-only transaction. - Specified by:
- isReadOnlyin interface- TransactionDefinition
- Returns:
- trueif the transaction is to be optimized as read-only (- falseby default)
- See Also:
 
- 
getNameDescription copied from interface:TransactionDefinitionReturn the name of this transaction. Can benull.This will be used as the transaction name to be shown in a transaction monitor, if applicable (for example, WebLogic's). In case of Spring's declarative transactions, the exposed name will be the fully-qualified class name + "." + method name(by default).- Specified by:
- getNamein interface- TransactionDefinition
- Returns:
- the name of this transaction (nullby default}
- See Also:
 
- 
equals
- 
hashCodepublic int hashCode()
- 
toString
 
-