View Javadoc

1   /*
2    * EL4J, the Extension Library for the J2EE, adds incremental enhancements to
3    * the spring framework, http://el4j.sf.net
4    * Copyright (C) 2010 by ELCA Informatique SA, Av. de la Harpe 22-24,
5    * 1000 Lausanne, Switzerland, http://www.elca.ch
6    *
7    * EL4J is published under the GNU Lesser General Public License (LGPL)
8    * Version 2.1. See http://www.gnu.org/licenses/
9    *
10   * This program is distributed in the hope that it will be useful,
11   * but WITHOUT ANY WARRANTY; without even the implied warranty of
12   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13   * GNU Lesser General Public License for more details.
14   *
15   * For alternative licensing, please contact info@elca.ch
16   */
17  package ch.elca.el4j.tests.aspects.spring;
18  
19  import org.springframework.beans.BeansException;
20  import org.springframework.beans.factory.config.BeanDefinition;
21  import org.springframework.beans.factory.config.BeanFactoryPostProcessor;
22  import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
23  
24  import ch.elca.el4j.tests.aspects.interceptor.ObservedTransactionInterceptor;
25  
26  /**
27   * Replaces the transaction interceptor with an observable version of it.
28   *
29   * @svnLink $Revision: 4253 $;$Date: 2010-12-21 11:08:04 +0100 (Di, 21. Dez 2010) $;$Author: swismer $;$URL: https://el4j.svn.sourceforge.net/svnroot/el4j/branches/el4j_3_1/el4j/framework/tests/aspects/src/main/java/ch/elca/el4j/tests/aspects/spring/UseInstrumentedTransactionInterceptorBeanPostProcessor.java $
30   *
31   * @author Martin Zeltner (MZE)
32   */
33  public class UseInstrumentedTransactionInterceptorBeanPostProcessor implements BeanFactoryPostProcessor {
34  	/**
35  	 * Sets class {@link ObservedTransactionInterceptor} for bean with name 'transactionInterceptor'.
36  	 * 
37  	 * {@inheritDoc}
38  	 */
39  	@Override
40  	public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
41  		BeanDefinition bd = beanFactory.getBeanDefinition("transactionInterceptor");
42  		bd.setBeanClassName(ObservedTransactionInterceptor.class.getName());
43  	}
44  }