[jboss-cvs] JBossAS SVN: r93737 - projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/dependency.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Sep 18 10:40:54 EDT 2009


Author: alesj
Date: 2009-09-18 10:40:54 -0400 (Fri, 18 Sep 2009)
New Revision: 93737

Modified:
   projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/dependency/KernelScopeInfo.java
Log:
Exclude external factories - ctor mismatch.

Modified: projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/dependency/KernelScopeInfo.java
===================================================================
--- projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/dependency/KernelScopeInfo.java	2009-09-18 14:40:05 UTC (rev 93736)
+++ projects/kernel/trunk/kernel/src/main/java/org/jboss/kernel/plugins/dependency/KernelScopeInfo.java	2009-09-18 14:40:54 UTC (rev 93737)
@@ -245,25 +245,30 @@
       ConstructorMetaData constructorMetaData = beanMetaData.getConstructor();
       if (constructorMetaData == null)
          return;
-      
+
+      // TODO - Kabir check if this is OK?
+      // we don't handle external factories
+      if (constructorMetaData.getFactory() != null || constructorMetaData.getFactoryClass() != null)
+         return;
+
       BeanInfo beanInfo = context.getBeanInfo();
       if (beanInfo == null)
          return;
 
-      ClassLoader cl;
-      try
-      {
-         cl = Configurator.getClassLoader(beanMetaData);
-      }
-      catch(Throwable t)
-      {
-         throw new RuntimeException("Error getting classloader for metadata");
-      }
-
       Set<AnnotationMetaData> constructorAnnotations = constructorMetaData.getAnnotations();
       List<ParameterMetaData> parameterMetaDatas = constructorMetaData.getParameters(); 
-      if (constructorAnnotations != null && constructorAnnotations.size() > 0 || parameterMetaDatas != null && parameterMetaDatas.size() > 0)
+      if ((constructorAnnotations != null && constructorAnnotations.size() > 0) || (parameterMetaDatas != null && parameterMetaDatas.size() > 0))
       {
+         ClassLoader cl;
+         try
+         {
+            cl = Configurator.getClassLoader(beanMetaData);
+         }
+         catch(Throwable t)
+         {
+            throw new RuntimeException("Error getting classloader for metadata: " + t);
+         }
+
          ConstructorInfo constructorInfo = Configurator.resolveConstructor(log.isTraceEnabled(), beanInfo, constructorMetaData);
          if (constructorAnnotations != null && constructorAnnotations.size() > 0)
             updateAnnotations(repository, cl, mutable, context, constructorInfo, constructorAnnotations, add);




More information about the jboss-cvs-commits mailing list