public class NameMatchTransactionAttributeSource extends Object implements TransactionAttributeSource, Serializable
TransactionAttributeSource implementation that
allows attributes to be matched by registered name.isMatch(java.lang.String, java.lang.String),
MethodMapTransactionAttributeSource,
Serialized Form| Modifier and Type | Field and Description |
|---|---|
protected static Log |
logger
Logger available to subclasses.
|
| Constructor and Description |
|---|
NameMatchTransactionAttributeSource() |
| Modifier and Type | Method and Description |
|---|---|
void |
addTransactionalMethod(String methodName,
TransactionAttribute attr)
Add an attribute for a transactional method.
|
boolean |
equals(Object other) |
TransactionAttribute |
getTransactionAttribute(Method method,
Class<?> targetClass)
Return the transaction attribute for the given method,
or
null if the method is non-transactional. |
int |
hashCode() |
protected boolean |
isMatch(String methodName,
String mappedName)
Return if the given method name matches the mapped name.
|
void |
setNameMap(Map<String,TransactionAttribute> nameMap)
Set a name/attribute map, consisting of method names
(e.g.
|
void |
setProperties(Properties transactionAttributes)
Parses the given properties into a name/attribute map.
|
String |
toString() |
protected static final Log logger
Static for optimal serialization.
public void setNameMap(Map<String,TransactionAttribute> nameMap)
public void setProperties(Properties transactionAttributes)
public void addTransactionalMethod(String methodName, TransactionAttribute attr)
Method names can be exact matches, or of the pattern "xxx*", "*xxx" or "*xxx*" for matching multiple methods.
methodName - the name of the methodattr - attribute associated with the methodpublic TransactionAttribute getTransactionAttribute(Method method, Class<?> targetClass)
TransactionAttributeSourcenull if the method is non-transactional.getTransactionAttribute in interface TransactionAttributeSourcemethod - the method to introspecttargetClass - the target class. May be null,
in which case the declaring class of the method must be used.null if none foundprotected boolean isMatch(String methodName, String mappedName)
The default implementation checks for "xxx*", "*xxx" and "*xxx*" matches, as well as direct equality. Can be overridden in subclasses.
methodName - the method name of the classmappedName - the name in the descriptorPatternMatchUtils.simpleMatch(String, String)