Class CompositeTransactionAttributeSource
java.lang.Object
org.springframework.transaction.interceptor.CompositeTransactionAttributeSource
- All Implemented Interfaces:
 Serializable,TransactionAttributeSource
public class CompositeTransactionAttributeSource
extends Object
implements TransactionAttributeSource, Serializable
Composite 
TransactionAttributeSource implementation that iterates
 over a given array of TransactionAttributeSource instances.- Since:
 - 2.0
 - Author:
 - Juergen Hoeller
 - See Also:
 
- 
Constructor Summary
ConstructorsConstructorDescriptionCompositeTransactionAttributeSource(TransactionAttributeSource... transactionAttributeSources) Create a new CompositeTransactionAttributeSource for the given sources. - 
Method Summary
Modifier and TypeMethodDescriptiongetTransactionAttribute(Method method, Class<?> targetClass) Return the transaction attribute for the given method, ornullif the method is non-transactional.final TransactionAttributeSource[]Return the TransactionAttributeSource instances that this CompositeTransactionAttributeSource combines.booleanhasTransactionAttribute(Method method, Class<?> targetClass) Determine whether there is a transaction attribute for the given method.booleanisCandidateClass(Class<?> targetClass) Determine whether the given class is a candidate for transaction attributes in the metadata format of thisTransactionAttributeSource. 
- 
Constructor Details
- 
CompositeTransactionAttributeSource
public CompositeTransactionAttributeSource(TransactionAttributeSource... transactionAttributeSources) Create a new CompositeTransactionAttributeSource for the given sources.- Parameters:
 transactionAttributeSources- the TransactionAttributeSource instances to combine
 
 - 
 - 
Method Details
- 
getTransactionAttributeSources
Return the TransactionAttributeSource instances that this CompositeTransactionAttributeSource combines. - 
isCandidateClass
Description copied from interface:TransactionAttributeSourceDetermine whether the given class is a candidate for transaction attributes in the metadata format of thisTransactionAttributeSource.If this method returns
false, the methods on the given class will not get traversed forTransactionAttributeSource.getTransactionAttribute(java.lang.reflect.Method, java.lang.Class<?>)introspection. Returningfalseis therefore an optimization for non-affected classes, whereastruesimply means that the class needs to get fully introspected for each method on the given class individually.- Specified by:
 isCandidateClassin interfaceTransactionAttributeSource- Parameters:
 targetClass- the class to introspect- Returns:
 falseif the class is known to have no transaction attributes at class or method level;trueotherwise. The default implementation returnstrue, leading to regular introspection.- See Also:
 
 - 
hasTransactionAttribute
Description copied from interface:TransactionAttributeSourceDetermine whether there is a transaction attribute for the given method.- Specified by:
 hasTransactionAttributein interfaceTransactionAttributeSource- Parameters:
 method- the method to introspecttargetClass- the target class (can benull, in which case the declaring class of the method must be used)- See Also:
 
 - 
getTransactionAttribute
@Nullable public TransactionAttribute getTransactionAttribute(Method method, @Nullable Class<?> targetClass) Description copied from interface:TransactionAttributeSourceReturn the transaction attribute for the given method, ornullif the method is non-transactional.- Specified by:
 getTransactionAttributein interfaceTransactionAttributeSource- Parameters:
 method- the method to introspecttargetClass- the target class (can benull, in which case the declaring class of the method must be used)- Returns:
 - the matching transaction attribute, or 
nullif none found 
 
 -