You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by oz...@apache.org on 2009/11/17 15:42:34 UTC
svn commit: r881306 -
/incubator/aries/trunk/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/container/BeanRecipe.java
Author: ozzy
Date: Tue Nov 17 14:42:34 2009
New Revision: 881306
URL: http://svn.apache.org/viewvc?rev=881306&view=rev
Log:
ARIES-47 Add interceptor support to blueprint. Correct cglib test placement.
Modified:
incubator/aries/trunk/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/container/BeanRecipe.java
Modified: incubator/aries/trunk/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/container/BeanRecipe.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/container/BeanRecipe.java?rev=881306&r1=881305&r2=881306&view=diff
==============================================================================
--- incubator/aries/trunk/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/container/BeanRecipe.java (original)
+++ incubator/aries/trunk/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/container/BeanRecipe.java Tue Nov 17 14:42:34 2009
@@ -603,19 +603,19 @@
private Object addInterceptors(Object original) throws ComponentDefinitionException{
- try {
- // Try load load a cglib class (to make sure it's actually available
- getClass().getClassLoader().loadClass("net.sf.cglib.proxy.Enhancer");
- } catch (Throwable t) {
- throw new ComponentDefinitionException("Interceptors have been configured but cglib can not be used", t);
- }
-
Object intercepted = null;
String beanName = getName();
ComponentDefinitionRegistry reg = blueprintContainer.getComponentDefinitionRegistry();
ComponentMetadata metaData = reg.getComponentDefinition(beanName);
List<Interceptor> interceptors = reg.getInterceptors(metaData);
if(interceptors!=null && interceptors.size()>0){
+ try {
+ // Try load load a cglib class (to make sure it's actually available
+ getClass().getClassLoader().loadClass("net.sf.cglib.proxy.Enhancer");
+ } catch (Throwable t) {
+ throw new ComponentDefinitionException("Interceptors have been configured but cglib can not be used", t);
+ }
+
intercepted = CgLibInterceptorWrapper.createProxyObject(original.getClass().getClassLoader(),
metaData,
interceptors,