org.springframework.transaction.interceptor
Class TransactionAspectUtils

java.lang.Object
  extended by org.springframework.transaction.interceptor.TransactionAspectUtils

public abstract class TransactionAspectUtils
extends java.lang.Object

Utility methods for obtaining a PlatformTransactionManager by qualifier value.

Since:
3.0.2
Author:
Juergen Hoeller

Constructor Summary
TransactionAspectUtils()
           
 
Method Summary
static PlatformTransactionManager getTransactionManager(BeanFactory beanFactory, java.lang.String qualifier)
          Obtain a PlatformTransactionManager from the given BeanFactory, matching the given qualifier.
static PlatformTransactionManager getTransactionManager(ConfigurableListableBeanFactory bf, java.lang.String qualifier)
          Obtain a PlatformTransactionManager from the given BeanFactory, matching the given qualifier.
private static boolean isQualifierMatch(java.lang.String qualifier, java.lang.String beanName, ConfigurableListableBeanFactory bf)
          Check whether we have a qualifier match for the given candidate bean.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TransactionAspectUtils

public TransactionAspectUtils()
Method Detail

getTransactionManager

public static PlatformTransactionManager getTransactionManager(BeanFactory beanFactory,
                                                               java.lang.String qualifier)
Obtain a PlatformTransactionManager from the given BeanFactory, matching the given qualifier.

Parameters:
beanFactory - the BeanFactory to get the PlatformTransactionManager bean from
qualifier - the qualifier for selecting between multiple PlatformTransactionManager matches
Returns:
the chosen PlatformTransactionManager (never null)
Throws:
java.lang.IllegalStateException - if no matching PlatformTransactionManager bean found

getTransactionManager

public static PlatformTransactionManager getTransactionManager(ConfigurableListableBeanFactory bf,
                                                               java.lang.String qualifier)
Obtain a PlatformTransactionManager from the given BeanFactory, matching the given qualifier.

Parameters:
bf - the BeanFactory to get the PlatformTransactionManager bean from
qualifier - the qualifier for selecting between multiple PlatformTransactionManager matches
Returns:
the chosen PlatformTransactionManager (never null)
Throws:
java.lang.IllegalStateException - if no matching PlatformTransactionManager bean found

isQualifierMatch

private static boolean isQualifierMatch(java.lang.String qualifier,
                                        java.lang.String beanName,
                                        ConfigurableListableBeanFactory bf)
Check whether we have a qualifier match for the given candidate bean.

Parameters:
qualifier - the qualifier that we are looking for
beanName - the name of the candidate bean
bf - the BeanFactory to get the bean definition from
Returns:
true if either the bean definition (in the XML case) or the bean's factory method (in the @Bean case) defines a matching qualifier value (through <qualifier<> or @Qualifier)