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 Java 5 annotations), or anywhere else.
- Since:
- 15.04.2003
- Author:
- Rod Johnson, Juergen Hoeller
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiongetTransactionAttribute(Method method, Class<?> targetClass) Return the transaction attribute for the given method, ornullif the method is non-transactional.default booleanisCandidateClass(Class<?> targetClass) Determine whether the given class is a candidate for transaction attributes in the metadata format of thisTransactionAttributeSource.
-
Method Details
-
isCandidateClass
Determine 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 returnstrue, leading to regular introspection.- Since:
- 5.2
-
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 introspecttargetClass- the target class (may benull, in which case the declaring class of the method must be used)- Returns:
- the matching transaction attribute, or
nullif none found
-