package io.github.hengyunabc.mybatis;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.config.BeanFactoryPostProcessor;
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
/**
* add current spring context into global SharedSpringContext
*
* @author hengyunabc
*
*/
public class SharedSpringContextSetter implements ApplicationContextAware, BeanFactoryPostProcessor {
String contextName = null;;
@Override
public void setApplicationContext(ApplicationContext context) throws BeansException {
if (contextName == null) {
SharedSpringContext.addDefaultContext(context);
} else {
SharedSpringContext.add(contextName, context);
}
}
@Override
public void postProcessBeanFactory(ConfigurableListableBeanFactory arg0) throws BeansException {
}
public String getContextName() {
return contextName;
}
public void setContextName(String contextName) {
this.contextName = contextName;
}
}