[jboss-cvs] JBossAS SVN: r96562 - projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Nov 19 07:59:39 EST 2009


Author: adrian at jboss.org
Date: 2009-11-19 07:59:39 -0500 (Thu, 19 Nov 2009)
New Revision: 96562

Modified:
   projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractBeanMetaData.java
   projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractCollectionMetaData.java
   projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractConstructorMetaData.java
   projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDependencyMetaData.java
   projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractFeatureMetaData.java
   projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractInstallMetaData.java
   projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractLifecycleMetaData.java
   projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractValueFactoryMetaData.java
   projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/CloneUtil.java
Log:
For some reason the eclipse compiler doesn't understand the collection->set/list capature change?

Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractBeanMetaData.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractBeanMetaData.java	2009-11-19 12:58:34 UTC (rev 96561)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractBeanMetaData.java	2009-11-19 12:59:39 UTC (rev 96562)
@@ -21,11 +21,16 @@
 */
 package org.jboss.beans.metadata.plugins;
 
+import static org.jboss.beans.metadata.plugins.CloneUtil.cloneList;
+import static org.jboss.beans.metadata.plugins.CloneUtil.cloneObject;
+import static org.jboss.beans.metadata.plugins.CloneUtil.cloneSet;
+
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
+
 import javax.xml.bind.annotation.XmlAttribute;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlRootElement;
@@ -34,8 +39,6 @@
 
 import org.jboss.beans.info.spi.BeanAccessMode;
 import org.jboss.beans.metadata.api.model.AutowireType;
-import static org.jboss.beans.metadata.plugins.CloneUtil.cloneCollection;
-import static org.jboss.beans.metadata.plugins.CloneUtil.cloneObject;
 import org.jboss.beans.metadata.spi.AliasMetaData;
 import org.jboss.beans.metadata.spi.BeanMetaData;
 import org.jboss.beans.metadata.spi.BeanMetaDataFactory;
@@ -49,8 +52,8 @@
 import org.jboss.beans.metadata.spi.MetaDataVisitor;
 import org.jboss.beans.metadata.spi.MetaDataVisitorNode;
 import org.jboss.beans.metadata.spi.PropertyMetaData;
+import org.jboss.beans.metadata.spi.RelatedClassMetaData;
 import org.jboss.beans.metadata.spi.SupplyMetaData;
-import org.jboss.beans.metadata.spi.RelatedClassMetaData;
 import org.jboss.dependency.plugins.AbstractDependencyItem;
 import org.jboss.dependency.spi.Controller;
 import org.jboss.dependency.spi.ControllerContext;
@@ -751,7 +754,7 @@
       return name;
    }
 
-   @SuppressWarnings({"unchecked", "deprecation"})
+   @SuppressWarnings({"deprecation"})
    public Object getValue(TypeInfo info, ClassLoader cl) throws Throwable
    {
       if (context == null)
@@ -864,21 +867,21 @@
       super.doClone(clone);
       if (aliases != null)
          clone.setAliases(new HashSet<Object>(aliases));
-      clone.setAliasMetaData(cloneCollection(aliasMetaData, HashSet.class, AliasMetaData.class));
-      clone.setRelated(cloneCollection(related, HashSet.class, RelatedClassMetaData.class));
+      clone.setAliasMetaData(cloneSet(aliasMetaData, HashSet.class, AliasMetaData.class));
+      clone.setRelated(cloneSet(related, HashSet.class, RelatedClassMetaData.class));
       clone.setClassLoader(cloneObject(classLoader, ClassLoaderMetaData.class));
       clone.setConstructor(cloneObject(constructor, ConstructorMetaData.class));
       clone.setCreate(cloneObject(create, LifecycleMetaData.class));
-      clone.setDemands(cloneCollection(demands, HashSet.class, DemandMetaData.class));
-      clone.setDepends(cloneCollection(depends, HashSet.class, DependencyMetaData.class));
+      clone.setDemands(cloneSet(demands, HashSet.class, DemandMetaData.class));
+      clone.setDepends(cloneSet(depends, HashSet.class, DependencyMetaData.class));
       clone.setDestroy(cloneObject(destroy, LifecycleMetaData.class));
-      clone.setInstallCallbacks(cloneCollection(installCallbacks, ArrayList.class, CallbackMetaData.class));
-      clone.setInstalls(cloneCollection(installs, ArrayList.class, InstallMetaData.class));
-      clone.setProperties(cloneCollection(properties, HashSet.class, PropertyMetaData.class));
+      clone.setInstallCallbacks(cloneList(installCallbacks, ArrayList.class, CallbackMetaData.class));
+      clone.setInstalls(cloneList(installs, ArrayList.class, InstallMetaData.class));
+      clone.setProperties(cloneSet(properties, HashSet.class, PropertyMetaData.class));
       clone.setStart(cloneObject(start, LifecycleMetaData.class));
       clone.setStop(cloneObject(stop, LifecycleMetaData.class));
-      clone.setSupplies(cloneCollection(supplies, HashSet.class, SupplyMetaData.class));
-      clone.setUninstallCallbacks(cloneCollection(uninstallCallbacks, ArrayList.class, CallbackMetaData.class));
-      clone.setUninstalls(cloneCollection(uninstalls, ArrayList.class, InstallMetaData.class));
+      clone.setSupplies(cloneSet(supplies, HashSet.class, SupplyMetaData.class));
+      clone.setUninstallCallbacks(cloneList(uninstallCallbacks, ArrayList.class, CallbackMetaData.class));
+      clone.setUninstalls(cloneList(uninstalls, ArrayList.class, InstallMetaData.class));
    }
 }

Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractCollectionMetaData.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractCollectionMetaData.java	2009-11-19 12:58:34 UTC (rev 96561)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractCollectionMetaData.java	2009-11-19 12:59:39 UTC (rev 96562)
@@ -253,7 +253,7 @@
    public AbstractCollectionMetaData clone()
    {
       AbstractCollectionMetaData clone = (AbstractCollectionMetaData)super.clone();
-      clone.collection = CloneUtil.cloneCollection(collection, ArrayList.class, MetaDataVisitorNode.class);
+      clone.collection = (ArrayList) CloneUtil.cloneList(collection, ArrayList.class, MetaDataVisitorNode.class);
       return clone;
    }
 }
\ No newline at end of file

Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractConstructorMetaData.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractConstructorMetaData.java	2009-11-19 12:58:34 UTC (rev 96561)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractConstructorMetaData.java	2009-11-19 12:59:39 UTC (rev 96562)
@@ -324,6 +324,6 @@
       super.doClone(clone);
       clone.setFactory(CloneUtil.cloneObject(factory, ValueMetaData.class));
       clone.setValue(CloneUtil.cloneObject(value, ValueMetaData.class));
-      clone.setParameters(CloneUtil.cloneCollection(parameters, ArrayList.class, ParameterMetaData.class));
+      clone.setParameters(CloneUtil.cloneList(parameters, ArrayList.class, ParameterMetaData.class));
    }
 }

Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDependencyMetaData.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDependencyMetaData.java	2009-11-19 12:58:34 UTC (rev 96561)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractDependencyMetaData.java	2009-11-19 12:59:39 UTC (rev 96562)
@@ -146,6 +146,7 @@
        * Create a new LifecycleDependencyItem.
        * 
        * @param name the name
+       * @param dependency the dependency's name
        * @param state the state
        */
       public LifecycleDependencyItem(Object name, Object dependency, ControllerState state)

Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractFeatureMetaData.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractFeatureMetaData.java	2009-11-19 12:58:34 UTC (rev 96561)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractFeatureMetaData.java	2009-11-19 12:59:39 UTC (rev 96562)
@@ -28,7 +28,7 @@
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlTransient;
 
-import static org.jboss.beans.metadata.plugins.CloneUtil.cloneCollection;
+import static org.jboss.beans.metadata.plugins.CloneUtil.cloneSet;
 import org.jboss.beans.metadata.spi.AnnotationMetaData;
 import org.jboss.beans.metadata.spi.FeatureMetaData;
 import org.jboss.beans.metadata.spi.MetaDataVisitor;
@@ -156,6 +156,6 @@
    @SuppressWarnings("unchecked")
    protected void doClone(AbstractFeatureMetaData clone)
    {
-      clone.setAnnotations(cloneCollection(annotations, HashSet.class, AnnotationMetaData.class));
+      clone.setAnnotations(cloneSet(annotations, HashSet.class, AnnotationMetaData.class));
    }
 }

Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractInstallMetaData.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractInstallMetaData.java	2009-11-19 12:58:34 UTC (rev 96561)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractInstallMetaData.java	2009-11-19 12:59:39 UTC (rev 96562)
@@ -161,6 +161,9 @@
        * Create a new InstallationDependencyItem.
        * 
        * @param name the name
+       * @param bean the bean class
+       * @param state the state of the bean
+       * @param dependentState the state of the dependency
        */
       public InstallationDependencyItem(Object name, String bean, ControllerState state, ControllerState dependentState)
       {

Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractLifecycleMetaData.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractLifecycleMetaData.java	2009-11-19 12:58:34 UTC (rev 96561)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractLifecycleMetaData.java	2009-11-19 12:59:39 UTC (rev 96562)
@@ -226,7 +226,7 @@
       super.doClone(clone);
       clone.setIgnored(ignored);
       clone.setMethodName(methodName);
-      clone.setParameters(CloneUtil.cloneCollection(parameters, ArrayList.class, ParameterMetaData.class));
+      clone.setParameters(CloneUtil.cloneList(parameters, ArrayList.class, ParameterMetaData.class));
       clone.setState(state);
       clone.setType(type);
    }

Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractValueFactoryMetaData.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractValueFactoryMetaData.java	2009-11-19 12:58:34 UTC (rev 96561)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/AbstractValueFactoryMetaData.java	2009-11-19 12:59:39 UTC (rev 96562)
@@ -360,7 +360,7 @@
    public AbstractValueFactoryMetaData clone()
    {
       AbstractValueFactoryMetaData clone = (AbstractValueFactoryMetaData)super.clone();
-      clone.setParameters(CloneUtil.cloneCollection(parameters, ArrayList.class, ParameterMetaData.class));
+      clone.setParameters(CloneUtil.cloneList(parameters, ArrayList.class, ParameterMetaData.class));
       return clone;
    }
 }

Modified: projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/CloneUtil.java
===================================================================
--- projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/CloneUtil.java	2009-11-19 12:58:34 UTC (rev 96561)
+++ projects/microcontainer/branches/Branch_2_0/kernel/src/main/java/org/jboss/beans/metadata/plugins/CloneUtil.java	2009-11-19 12:59:39 UTC (rev 96562)
@@ -23,7 +23,9 @@
 
 import java.util.Collection;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
+import java.util.Set;
 
 import org.jboss.beans.metadata.spi.MetaDataVisitorNode;
 
@@ -85,6 +87,64 @@
    }
 
    /**
+    * Simple set clone.
+    *
+    * @param <T> the collection type
+    * @param <U> the component type
+    * @param collection the set to be cloned
+    * @param expectedClass expected set class
+    * @param componentType expected component class
+    * @return cloned collection
+    */
+   public static <U extends MetaDataVisitorNode, T extends Set<U>> T cloneSet(T collection, Class<? extends T> expectedClass, Class<U> componentType)
+   {
+      if (collection == null)
+         return null;
+
+      try
+      {
+         T clone = expectedClass.newInstance();
+         for (U item : collection)
+               clone.add(cloneObject(item, componentType));
+
+         return clone;
+      }
+      catch (Throwable t)
+      {
+         throw new RuntimeException(t);
+      }
+   }
+
+   /**
+    * Simple set clone.
+    *
+    * @param <T> the collection type
+    * @param <U> the component type
+    * @param collection the list to be cloned
+    * @param expectedClass expected set class
+    * @param componentType expected component class
+    * @return cloned collection
+    */
+   public static <U extends MetaDataVisitorNode, T extends List<U>> T cloneList(T collection, Class<? extends T> expectedClass, Class<U> componentType)
+   {
+      if (collection == null)
+         return null;
+
+      try
+      {
+         T clone = expectedClass.newInstance();
+         for (U item : collection)
+               clone.add(cloneObject(item, componentType));
+
+         return clone;
+      }
+      catch (Throwable t)
+      {
+         throw new RuntimeException(t);
+      }
+   }
+
+   /**
     * Simple map clone.
     *
     * @param <T> the collection type




More information about the jboss-cvs-commits mailing list