[jboss-cvs] JBossAS SVN: r101398 - in projects/kernel/branches/jsr330: weld-int/src/main/java/org/jboss/kernel/weld/plugins/dependency and 3 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Feb 24 09:38:28 EST 2010


Author: kabir.khan at jboss.com
Date: 2010-02-24 09:38:27 -0500 (Wed, 24 Feb 2010)
New Revision: 101398

Added:
   projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectFilter.java
Modified:
   projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectAnnotationPlugin.java
   projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectConstructorAnnotationPlugin.java
   projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectFieldAnnotationPlugin.java
   projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectMethodAnnotationPlugin.java
   projects/kernel/branches/jsr330/weld-int/src/main/java/org/jboss/kernel/weld/plugins/dependency/WeldControllerInitializer.java
   projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/bidirectional/support/First.java
   projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/bidirectional/support/Middle.java
   projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/McBean.java
   projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/McBeanMcConstructor.java
   projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/McBeanWithPostConstructAndPreDestroy.java
   projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/MissingDependenciesFieldBean.java
   projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/test/InjectWeldInMcBeansTestCase.java
Log:
Don't try to inject @Weld @Inject from MC JSR330 Inject annotation plugins. Update tests needing injection from weld to have the @Weld annotation

Modified: projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectAnnotationPlugin.java
===================================================================
--- projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectAnnotationPlugin.java	2010-02-24 14:29:05 UTC (rev 101397)
+++ projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectAnnotationPlugin.java	2010-02-24 14:38:27 UTC (rev 101398)
@@ -21,10 +21,16 @@
 */
 package org.jboss.kernel.plugins.annotations;
 
+import java.util.List;
+
 import javax.inject.Inject;
 
+import org.jboss.beans.info.spi.PropertyInfo;
 import org.jboss.beans.metadata.plugins.AbstractInjectionValueMetaData;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.MetaDataVisitorNode;
 import org.jboss.beans.metadata.spi.ValueMetaData;
+import org.jboss.metadata.spi.MetaData;
 
 /**
  * Inject value annotation plugin.
@@ -34,13 +40,22 @@
 public class Jsr330InjectAnnotationPlugin extends PropertyAnnotationPlugin<Inject>
 {
    public final static Jsr330InjectAnnotationPlugin INSTANCE = new Jsr330InjectAnnotationPlugin();
-
+   
    protected Jsr330InjectAnnotationPlugin()
    {
       super(Inject.class);
    }
 
    @Override
+   protected List<? extends MetaDataVisitorNode> internalApplyAnnotation(PropertyInfo info, MetaData retrieval, Inject annotation, BeanMetaData beanMetaData) throws Throwable
+   {
+       if (!Jsr330InjectFilter.INSTANCE.handleInject(retrieval))
+          return null;
+      
+       return super.internalApplyAnnotation(info, retrieval, annotation, beanMetaData);
+   }
+
+   @Override
    public ValueMetaData createValueMetaData(Inject annotation)
    {
       return new AbstractInjectionValueMetaData();

Modified: projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectConstructorAnnotationPlugin.java
===================================================================
--- projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectConstructorAnnotationPlugin.java	2010-02-24 14:29:05 UTC (rev 101397)
+++ projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectConstructorAnnotationPlugin.java	2010-02-24 14:38:27 UTC (rev 101398)
@@ -30,7 +30,6 @@
 
 import javax.inject.Inject;
 
-import org.jboss.annotation.factory.AnnotationCreator;
 import org.jboss.beans.metadata.api.annotations.Constructor;
 import org.jboss.beans.metadata.plugins.AbstractBeanMetaData;
 import org.jboss.beans.metadata.plugins.AbstractConstructorMetaData;
@@ -80,6 +79,9 @@
    @Override
    protected List<? extends MetaDataVisitorNode> internalApplyAnnotation(ConstructorInfo info, MetaData retrieval, Inject annotation, KernelControllerContext context) throws Throwable
    {
+      if (!Jsr330InjectFilter.INSTANCE.handleInject(retrieval))
+         return null;
+
       //Add the standard MC @Inject annotation to each parameter so that the AbstractInjectionValueMetaData gets created
       ParameterInfo[] params = info.getParameters();
       if (params.length == 0)

Modified: projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectFieldAnnotationPlugin.java
===================================================================
--- projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectFieldAnnotationPlugin.java	2010-02-24 14:29:05 UTC (rev 101397)
+++ projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectFieldAnnotationPlugin.java	2010-02-24 14:38:27 UTC (rev 101398)
@@ -21,10 +21,17 @@
 */
 package org.jboss.kernel.plugins.annotations;
 
+import java.util.List;
+
 import javax.inject.Inject;
 
+import org.jboss.beans.info.spi.PropertyInfo;
 import org.jboss.beans.metadata.plugins.AbstractInjectionValueMetaData;
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.beans.metadata.spi.MetaDataVisitorNode;
 import org.jboss.beans.metadata.spi.ValueMetaData;
+import org.jboss.metadata.spi.MetaData;
+import org.jboss.reflect.spi.FieldInfo;
 
 /**
  * Value factory field annotation plugin.
@@ -40,7 +47,17 @@
       super(Inject.class);
    }
 
+
    @Override
+   protected List<? extends MetaDataVisitorNode> internalApplyAnnotation(FieldInfo info, MetaData retrieval, Inject annotation, BeanMetaData beanMetaData) throws Throwable
+   {
+       if (!Jsr330InjectFilter.INSTANCE.handleInject(retrieval))
+          return null;
+      
+       return super.internalApplyAnnotation(info, retrieval, annotation, beanMetaData);
+   }
+
+   @Override
    public ValueMetaData createValueMetaData(Inject annotation)
    {
       return new AbstractInjectionValueMetaData();

Added: projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectFilter.java
===================================================================
--- projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectFilter.java	                        (rev 0)
+++ projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectFilter.java	2010-02-24 14:38:27 UTC (rev 101398)
@@ -0,0 +1,73 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.kernel.plugins.annotations;
+
+import java.lang.annotation.Annotation;
+import java.util.HashSet;
+import java.util.Set;
+
+import javax.inject.Inject;
+
+import org.jboss.metadata.spi.MetaData;
+
+/**
+ * Singleton Used to filter out which {@link Inject} annotated injection points should not be handled.
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class Jsr330InjectFilter
+{
+   public static Jsr330InjectFilter INSTANCE = new Jsr330InjectFilter();
+   
+   Set<Class<? extends Annotation>> ignoredClasses = new HashSet<Class<? extends Annotation>>();
+   
+   private Jsr330InjectFilter()
+   {
+   }
+   
+   /**
+    * Add an annotation. If this annotation is present on the injection point we should not handle this inject.
+    * 
+    * @param annotation an ignored annotation to add
+    */
+   public void addIgnoredAnnotation(Class<? extends Annotation> annotation)
+   {
+      ignoredClasses.add(annotation);
+   }
+   
+   /**
+    * Check if kernel should handle the injection
+    * 
+    * @param retrieval The metadata for the injection point we are checking
+    * @return true if this injection point should be handled by kernel
+    */
+   public boolean handleInject(MetaData retrieval)
+   {
+      for (Annotation ann : retrieval.getAnnotations())
+      {
+         if (ignoredClasses.contains(ann.annotationType()))
+            return false;
+      }
+      return true;
+   }
+}

Modified: projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectMethodAnnotationPlugin.java
===================================================================
--- projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectMethodAnnotationPlugin.java	2010-02-24 14:29:05 UTC (rev 101397)
+++ projects/kernel/branches/jsr330/kernel/src/main/java/org/jboss/kernel/plugins/annotations/Jsr330InjectMethodAnnotationPlugin.java	2010-02-24 14:38:27 UTC (rev 101398)
@@ -30,7 +30,6 @@
 import javax.inject.Inject;
 
 import org.jboss.beans.metadata.plugins.AbstractBeanMetaData;
-import org.jboss.beans.metadata.plugins.AbstractConstructorMetaData;
 import org.jboss.beans.metadata.plugins.AbstractInjectionValueMetaData;
 import org.jboss.beans.metadata.plugins.AbstractInstallMetaData;
 import org.jboss.beans.metadata.plugins.AbstractParameterMetaData;
@@ -41,7 +40,6 @@
 import org.jboss.dependency.spi.ControllerState;
 import org.jboss.kernel.spi.dependency.KernelControllerContext;
 import org.jboss.metadata.spi.MetaData;
-import org.jboss.reflect.spi.ConstructorInfo;
 import org.jboss.reflect.spi.MethodInfo;
 import org.jboss.reflect.spi.ParameterInfo;
 
@@ -62,18 +60,12 @@
       return beanMetaData.getInstalls();
    }
 
-//   protected AbstractInstallMetaData createParametrizedMetaData(MethodInfo info, Inject annotation)
-//   {
-//      AbstractInstallMetaData install = new AbstractInstallMetaData();
-//      install.setMethodName(info.getName());
-//      install.setState(ControllerState.CONFIGURED);
-//      install.setDependentState(ControllerState.INSTALLED);
-//      return install;
-//   }
-
    @Override
    protected List<? extends MetaDataVisitorNode> internalApplyAnnotation(MethodInfo info, MetaData retrieval, Inject annotation, KernelControllerContext context) throws Throwable
    {
+      if (!Jsr330InjectFilter.INSTANCE.handleInject(retrieval))
+         return null;
+
       //Add the standard MC @Inject annotation to each parameter so that the AbstractInjectionValueMetaData gets created
       ParameterInfo[] params = info.getParameters();
       if (params.length == 0)

Modified: projects/kernel/branches/jsr330/weld-int/src/main/java/org/jboss/kernel/weld/plugins/dependency/WeldControllerInitializer.java
===================================================================
--- projects/kernel/branches/jsr330/weld-int/src/main/java/org/jboss/kernel/weld/plugins/dependency/WeldControllerInitializer.java	2010-02-24 14:29:05 UTC (rev 101397)
+++ projects/kernel/branches/jsr330/weld-int/src/main/java/org/jboss/kernel/weld/plugins/dependency/WeldControllerInitializer.java	2010-02-24 14:38:27 UTC (rev 101398)
@@ -23,6 +23,8 @@
 
 import org.jboss.dependency.spi.Controller;
 import org.jboss.dependency.spi.ControllerState;
+import org.jboss.kernel.plugins.annotations.Jsr330InjectFilter;
+import org.jboss.kernel.weld.metadata.api.annotations.Weld;
 
 /**
  * Helper to add the Web Beans controller context actions to the controller
@@ -34,6 +36,7 @@
 {
    static void initializeController(Controller controller)
    {
+      Jsr330InjectFilter.INSTANCE.addIgnoredAnnotation(Weld.class);
       controller.addState(WeldPostConstructAction.STATE, ControllerState.CONFIGURED);
       controller.addState(WeldPreDestroyAction.STATE, ControllerState.START);
    }

Modified: projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/bidirectional/support/First.java
===================================================================
--- projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/bidirectional/support/First.java	2010-02-24 14:29:05 UTC (rev 101397)
+++ projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/bidirectional/support/First.java	2010-02-24 14:38:27 UTC (rev 101398)
@@ -24,6 +24,8 @@
 import javax.enterprise.inject.Default;
 import javax.inject.Inject;
 
+import org.jboss.kernel.weld.metadata.api.annotations.Weld;
+
 /**
  * 
  * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
@@ -32,7 +34,7 @@
 @Default
 public class First
 {
-   @Inject Middle middle;
+   @Weld @Inject Middle middle;
 
    public Middle getMiddle()
    {

Modified: projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/bidirectional/support/Middle.java
===================================================================
--- projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/bidirectional/support/Middle.java	2010-02-24 14:29:05 UTC (rev 101397)
+++ projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/bidirectional/support/Middle.java	2010-02-24 14:38:27 UTC (rev 101398)
@@ -24,6 +24,8 @@
 import javax.enterprise.inject.Default;
 import javax.inject.Inject;
 
+import org.jboss.kernel.weld.metadata.api.annotations.Weld;
+
 /**
  * 
  * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
@@ -32,7 +34,7 @@
 @Default
 public class Middle
 {
-   @Inject Last last;
+   @Weld @Inject Last last;
 
    public Last getLast()
    {

Modified: projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/McBean.java
===================================================================
--- projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/McBean.java	2010-02-24 14:29:05 UTC (rev 101397)
+++ projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/McBean.java	2010-02-24 14:38:27 UTC (rev 101398)
@@ -24,7 +24,9 @@
 import javax.enterprise.inject.Default;
 import javax.inject.Inject;
 
+import org.jboss.kernel.weld.metadata.api.annotations.Weld;
 
+
 /**
  * 
  * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
@@ -34,12 +36,12 @@
 {
    WebBean beanFromConstructor;
    
-   @Inject @Default
+   @Weld @Inject @Default
    WebBean bean;
    
    WebBean nonInject;
    
-   @Inject
+   @Weld @Inject
    public McBean(@Default WebBean beanFromConstructor)
    {
       this.beanFromConstructor = beanFromConstructor;

Modified: projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/McBeanMcConstructor.java
===================================================================
--- projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/McBeanMcConstructor.java	2010-02-24 14:29:05 UTC (rev 101397)
+++ projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/McBeanMcConstructor.java	2010-02-24 14:38:27 UTC (rev 101398)
@@ -24,7 +24,9 @@
 import javax.enterprise.inject.Default;
 import javax.inject.Inject;
 
+import org.jboss.kernel.weld.metadata.api.annotations.Weld;
 
+
 /**
  * 
  * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
@@ -32,7 +34,7 @@
  */
 public class McBeanMcConstructor
 {
-   @Inject @Default
+   @Weld @Inject @Default
    WebBean bean;
    
    Simple simple;

Modified: projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/McBeanWithPostConstructAndPreDestroy.java
===================================================================
--- projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/McBeanWithPostConstructAndPreDestroy.java	2010-02-24 14:29:05 UTC (rev 101397)
+++ projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/McBeanWithPostConstructAndPreDestroy.java	2010-02-24 14:38:27 UTC (rev 101398)
@@ -26,7 +26,9 @@
 import javax.enterprise.inject.Default;
 import javax.inject.Inject;
 
+import org.jboss.kernel.weld.metadata.api.annotations.Weld;
 
+
 /**
  * 
  * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
@@ -34,14 +36,14 @@
  */
 public class McBeanWithPostConstructAndPreDestroy
 {
-   @Inject @Default
+   @Weld @Inject @Default
    WebBean bean;
    
    boolean postConstructCalled;
    
    boolean preDestroyCalled;
    
-   @Inject
+   @Weld @Inject
    public McBeanWithPostConstructAndPreDestroy()
    {
    }

Modified: projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/MissingDependenciesFieldBean.java
===================================================================
--- projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/MissingDependenciesFieldBean.java	2010-02-24 14:29:05 UTC (rev 101397)
+++ projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/support/MissingDependenciesFieldBean.java	2010-02-24 14:38:27 UTC (rev 101398)
@@ -24,7 +24,9 @@
 import javax.enterprise.inject.Default;
 import javax.inject.Inject;
 
+import org.jboss.kernel.weld.metadata.api.annotations.Weld;
 
+
 /**
  * 
  * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
@@ -32,5 +34,5 @@
  */
 public class MissingDependenciesFieldBean
 {
-   @Inject @Default @Bean WebBean bean;
+   @Weld @Inject @Default @Bean WebBean bean;
 }

Modified: projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/test/InjectWeldInMcBeansTestCase.java
===================================================================
--- projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/test/InjectWeldInMcBeansTestCase.java	2010-02-24 14:29:05 UTC (rev 101397)
+++ projects/kernel/branches/jsr330/weld-int/src/test/java/org/jboss/test/kernel/weld/wbtomc/test/InjectWeldInMcBeansTestCase.java	2010-02-24 14:38:27 UTC (rev 101398)
@@ -47,6 +47,7 @@
 import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
 import org.jboss.dependency.spi.ControllerContext;
 import org.jboss.dependency.spi.ControllerState;
+import org.jboss.kernel.weld.metadata.api.annotations.Weld;
 import org.jboss.kernel.weld.plugins.dependency.WeldKernelControllerContext;
 import org.jboss.test.kernel.weld.AbstractWeldMcTest;
 import org.jboss.test.kernel.weld.wbtomc.support.ExternalBeanConstructor;
@@ -344,11 +345,14 @@
       metaData.setAccessMode(BeanAccessMode.ALL);
       
       AbstractConstructorMetaData ctor = new AbstractConstructorMetaData();
-      AnnotationMetaData initializer = new AbstractAnnotationMetaData("@" + Inject.class.getName());
-      ctor.setAnnotations(Collections.singleton(initializer));
+      Set<AnnotationMetaData> annotations = new HashSet<AnnotationMetaData>();
+      annotations.add(new AbstractAnnotationMetaData("@" + Inject.class.getName()));
+      annotations.add(new AbstractAnnotationMetaData("@" + Weld.class.getName()));
+      ctor.setAnnotations(annotations);
       AbstractParameterMetaData param = new AbstractParameterMetaData(WebBean.class.getName(), (String)null);
-      AnnotationMetaData current = new AbstractAnnotationMetaData("@" + Default.class.getName());
-      param.setAnnotations(Collections.singleton(current));
+      annotations = new HashSet<AnnotationMetaData>();
+      annotations.add(new AbstractAnnotationMetaData("@" + Default.class.getName()));
+      param.setAnnotations(annotations);
       ctor.setParameters(Collections.singletonList((ParameterMetaData)param));
       metaData.setConstructor(ctor);
       
@@ -356,6 +360,7 @@
       Set<AnnotationMetaData> propertyAnns = new HashSet<AnnotationMetaData>();
       propertyAnns.add(new AbstractAnnotationMetaData("@" + Default.class.getName()));
       propertyAnns.add(new AbstractAnnotationMetaData("@" + Inject.class.getName()));
+      propertyAnns.add(new AbstractAnnotationMetaData("@" + Weld.class.getName()));
 
       property.setAnnotations(propertyAnns);
       metaData.addProperty(property);




More information about the jboss-cvs-commits mailing list