Interface TransactionAttributeSource
- All Known Implementing Classes:
- AbstractFallbackTransactionAttributeSource,- AnnotationTransactionAttributeSource,- CompositeTransactionAttributeSource,- MatchAlwaysTransactionAttributeSource,- MethodMapTransactionAttributeSource,- NameMatchTransactionAttributeSource
public interface TransactionAttributeSource
Strategy interface used by 
TransactionInterceptor for metadata retrieval.
 Implementations know how to source transaction attributes, whether from configuration, metadata attributes at source level (such as annotations), or anywhere else.
- Since:
- 15.04.2003
- Author:
- Rod Johnson, Juergen Hoeller
- See Also:
- 
Method SummaryModifier and TypeMethodDescriptiongetTransactionAttribute(Method method, @Nullable Class<?> targetClass) Return the transaction attribute for the given method, ornullif the method is non-transactional.default booleanhasTransactionAttribute(Method method, @Nullable Class<?> targetClass) Determine whether there is a transaction attribute for the given method.default booleanisCandidateClass(Class<?> targetClass) Determine whether the given class is a candidate for transaction attributes in the metadata format of thisTransactionAttributeSource.
- 
Method Details- 
isCandidateClassDetermine 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 forgetTransactionAttribute(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.- 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 returns- true, leading to regular introspection.
- Since:
- 5.2
- See Also:
 
- 
hasTransactionAttributeDetermine whether there is a transaction attribute for the given method.- Parameters:
- method- the method to introspect
- targetClass- the target class (can be- null, in which case the declaring class of the method must be used)
- Since:
- 6.2
- See Also:
 
- 
getTransactionAttribute@Nullable TransactionAttribute getTransactionAttribute(Method method, @Nullable Class<?> targetClass) Return the transaction attribute for the given method, ornullif the method is non-transactional.- Parameters:
- method- the method to introspect
- targetClass- the target class (can be- null, in which case the declaring class of the method must be used)
- Returns:
- the matching transaction attribute, or nullif none found
 
 
-