[jboss-cvs] JBossAS SVN: r64397 - in projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config: test and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Aug 1 06:20:23 EDT 2007


Author: alesj
Date: 2007-08-01 06:20:23 -0400 (Wed, 01 Aug 2007)
New Revision: 64397

Added:
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomArraySimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomListSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomMapSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSetSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureArraySimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureListSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureMapSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureSetSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsArraySimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsListSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsMapSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsSetSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstArraySimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstListSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstMapSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstSetSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsArraySimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsArrayUnmodifiableObject.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsListSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsListUnmodifiableObject.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsMapSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsMapUnmodifiableObject.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsSetSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsSetUnmodifiableObject.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceArraySimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceListSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceMapSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceSetSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/KeyTypeOverrideMapSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotAArraySimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotAListSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotAMapSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotASetSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectArraySimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectListSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectMapSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectSetSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/TypeOverrideArraySimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/TypeOverrideListSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/TypeOverrideSetSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/ValueTypeOverrideMapSimpleBean.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/ArrayAnnotationTestCase.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/ListAnnotationTestCase.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/MapAnnotationTestCase.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/SetAnnotationTestCase.java
Modified:
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/ConfigTestSuite.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/MapTestCase.java
Log:
Set, List, Map, Array annotation tests.

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomArraySimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomArraySimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomArraySimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.ArrayValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromCustomArraySimpleBean extends SimpleBean
+{
+   @ArrayValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "[Ljava.lang.String;"
+   )
+   public void setArray(Object[] collection)
+   {
+      super.setArray(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomListSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomListSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomListSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,51 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.List;
+
+import org.jboss.beans.metadata.plugins.annotations.ListValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromCustomListSimpleBean extends SimpleBean
+{
+   @ListValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "org.jboss.test.kernel.config.support.CustomList"
+   )
+   public void setList(List collection)
+   {
+      super.setList(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomMapSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomMapSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomMapSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,56 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Map;
+
+import org.jboss.beans.metadata.plugins.annotations.EntryValue;
+import org.jboss.beans.metadata.plugins.annotations.MapValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromCustomMapSimpleBean extends SimpleBean
+{
+   @MapValue(
+         value = {
+            @EntryValue(
+                  key=@Value(string = @StringValue("string1")),
+                  value=@Value(string = @StringValue("string2"))
+            ),
+            @EntryValue(
+                  key=@Value(string = @StringValue("string2")),
+                  value=@Value(string = @StringValue("string1"))
+            )
+         },
+         keyClass = "java.lang.String", valueClass = "java.lang.String",
+         clazz = "org.jboss.test.kernel.config.support.CustomMap"
+   )
+   public void setMap(Map collection)
+   {
+      super.setMap(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSetSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSetSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSetSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,51 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Set;
+
+import org.jboss.beans.metadata.plugins.annotations.SetValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromCustomSetSimpleBean extends SimpleBean
+{
+   @SetValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "org.jboss.test.kernel.config.support.CustomSet"
+   )
+   public void setSet(Set collection)
+   {
+      super.setSet(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureArraySimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureArraySimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureArraySimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.ArrayValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromCustomSignatureArraySimpleBean extends SimpleBean
+{
+   @ArrayValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setCustomArray(String[] array)
+   {
+      super.setCustomArray(array);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureListSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureListSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureListSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.ListValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromCustomSignatureListSimpleBean extends SimpleBean
+{
+   @ListValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setCustomList(CustomList collection)
+   {
+      super.setCustomList(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureMapSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureMapSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureMapSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,54 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.MapValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.EntryValue;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromCustomSignatureMapSimpleBean extends SimpleBean
+{
+   @MapValue(
+         value = {
+            @EntryValue(
+                  key=@Value(string = @StringValue("string1")),
+                  value=@Value(string = @StringValue("string2"))
+            ),
+            @EntryValue(
+                  key=@Value(string = @StringValue("string2")),
+                  value=@Value(string = @StringValue("string1"))
+            )
+         },
+         keyClass = "java.lang.String",
+         valueClass = "java.lang.String"
+   )
+   public void setCustomMap(CustomMap collection)
+   {
+      super.setCustomMap(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureSetSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureSetSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromCustomSignatureSetSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.SetValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromCustomSignatureSetSimpleBean extends SimpleBean
+{
+   @SetValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setCustomSet(CustomSet collection)
+   {
+      super.setCustomSet(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsArraySimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsArraySimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsArraySimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.JavaBeanValue;
+import org.jboss.beans.metadata.plugins.annotations.ArrayValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromObjectsArraySimpleBean extends SimpleBean
+{
+   @ArrayValue(
+         value = {
+            @Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject1")),
+            @Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject2")),
+            @Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject2")),
+            @Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject1"))
+         },
+         elementClass = "java.lang.Object"
+   )
+   public void setArray(Object[] array)
+   {
+      super.setArray(array);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsListSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsListSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsListSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,50 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.List;
+
+import org.jboss.beans.metadata.plugins.annotations.JavaBeanValue;
+import org.jboss.beans.metadata.plugins.annotations.ListValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromObjectsListSimpleBean extends SimpleBean
+{
+   @ListValue(
+         value = {
+            @Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject1")),
+            @Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject2")),
+            @Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject2")),
+            @Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject1"))
+         },
+         elementClass = "java.lang.Object"
+   )
+   public void setList(List collection)
+   {
+      super.setList(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsMapSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsMapSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsMapSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,56 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Map;
+
+import org.jboss.beans.metadata.plugins.annotations.EntryValue;
+import org.jboss.beans.metadata.plugins.annotations.JavaBeanValue;
+import org.jboss.beans.metadata.plugins.annotations.MapValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromObjectsMapSimpleBean extends SimpleBean
+{
+   @MapValue(
+         value = {
+            @EntryValue(
+                  key=@Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject1")),
+                  value=@Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject2"))
+            ),
+            @EntryValue(
+                  key=@Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject2")),
+                  value=@Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject1"))
+            )
+         },
+         keyClass = "java.lang.Object",
+         valueClass = "java.lang.Object"
+   )
+   public void setMap(Map collection)
+   {
+      super.setMap(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsSetSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsSetSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromObjectsSetSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,50 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Set;
+
+import org.jboss.beans.metadata.plugins.annotations.SetValue;
+import org.jboss.beans.metadata.plugins.annotations.JavaBeanValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromObjectsSetSimpleBean extends SimpleBean
+{
+   @SetValue(
+         value = {
+            @Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject1")),
+            @Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject2")),
+            @Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject2")),
+            @Value(javabean = @JavaBeanValue("org.jboss.test.kernel.config.support.MyObject1"))
+         },
+         elementClass = "java.lang.Object"
+   )
+   public void setSet(Set collection)
+   {
+      super.setSet(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstArraySimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstArraySimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstArraySimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,59 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+
+import org.jboss.beans.metadata.plugins.annotations.ArrayValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromPreinstArraySimpleBean extends SimpleBean
+{
+   @ArrayValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setPreInstantiatedArray(Object[] preInstantiatedArray)
+   {
+      super.setPreInstantiatedArray(preInstantiatedArray);
+   }
+
+   @ArrayValue(
+         value = {
+            @Value(string = @StringValue("element"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setSetterArray(Object[] setterArray)
+   {
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstListSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstListSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstListSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,61 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.List;
+
+import org.jboss.beans.metadata.plugins.annotations.ListValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromPreinstListSimpleBean extends SimpleBean
+{
+   @ListValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setPreInstantiatedList(CustomList preInstantiatedList)
+   {
+      super.setPreInstantiatedList(preInstantiatedList);
+   }
+
+   @ListValue(
+         value = {
+            @Value(string = @StringValue("element"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setSetterList(List setterList)
+   {
+      super.setSetterList(setterList);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstMapSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstMapSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstMapSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,71 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Map;
+
+import org.jboss.beans.metadata.plugins.annotations.EntryValue;
+import org.jboss.beans.metadata.plugins.annotations.MapValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromPreinstMapSimpleBean extends SimpleBean
+{
+   @MapValue(
+         value = {
+            @EntryValue(
+                  key=@Value(string = @StringValue("string1")),
+                  value=@Value(string = @StringValue("string2"))
+            ),
+            @EntryValue(
+                  key=@Value(string = @StringValue("string2")),
+                  value=@Value(string = @StringValue("string1"))
+            )
+         },
+         keyClass = "java.lang.String",
+         valueClass = "java.lang.String"
+   )
+   public void setPreInstantiatedMap(CustomMap preInstantiatedMap)
+   {
+      super.setPreInstantiatedMap(preInstantiatedMap);
+   }
+
+   @MapValue(
+         value = {
+            @EntryValue(
+                  key=@Value(string = @StringValue("justKey")),
+                  value=@Value(string = @StringValue("justValue"))
+            )
+         },
+         keyClass = "java.lang.String",
+         valueClass = "java.lang.String"
+   )
+   public void setSetterMap(Map setterMap)
+   {
+      super.setSetterMap(setterMap);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstSetSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstSetSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromPreinstSetSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,61 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Set;
+
+import org.jboss.beans.metadata.plugins.annotations.SetValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromPreinstSetSimpleBean extends SimpleBean
+{
+   @SetValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setPreInstantiatedSet(CustomSet preInstantiatedSet)
+   {
+      super.setPreInstantiatedSet(preInstantiatedSet);
+   }
+
+   @SetValue(
+         value = {
+            @Value(string = @StringValue("element"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setSetterSet(Set setterSet)
+   {
+      super.setSetterSet(setterSet);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsArraySimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsArraySimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsArraySimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+
+import org.jboss.beans.metadata.plugins.annotations.ArrayValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromStringsArraySimpleBean extends SimpleBean
+{
+   @ArrayValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setArray(Object[] array)
+   {
+      super.setArray(array);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsArrayUnmodifiableObject.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsArrayUnmodifiableObject.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsArrayUnmodifiableObject.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,51 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.List;
+
+import org.jboss.beans.metadata.plugins.annotations.ListValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromStringsArrayUnmodifiableObject extends UnmodifiableGetterBean
+{
+   @ListValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "java.util.ArrayList"
+   )
+   public void setList(List list)
+   {
+      super.setList(list);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsListSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsListSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsListSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,50 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.List;
+
+import org.jboss.beans.metadata.plugins.annotations.ListValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromStringsListSimpleBean extends SimpleBean
+{
+   @ListValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setList(List collection)
+   {
+      super.setList(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsListUnmodifiableObject.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsListUnmodifiableObject.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsListUnmodifiableObject.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,51 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.List;
+
+import org.jboss.beans.metadata.plugins.annotations.ListValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromStringsListUnmodifiableObject extends UnmodifiableGetterBean
+{
+   @ListValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "java.util.ArrayList"
+   )
+   public void setList(List list)
+   {
+      super.setList(list);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsMapSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsMapSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsMapSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,56 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Map;
+
+import org.jboss.beans.metadata.plugins.annotations.EntryValue;
+import org.jboss.beans.metadata.plugins.annotations.MapValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromStringsMapSimpleBean extends SimpleBean
+{
+   @MapValue(
+         value = {
+            @EntryValue(
+                  key=@Value(string = @StringValue("string1")),
+                  value=@Value(string = @StringValue("string2"))
+            ),
+            @EntryValue(
+                  key=@Value(string = @StringValue("string2")),
+                  value=@Value(string = @StringValue("string1"))
+            )
+         },
+         keyClass = "java.lang.String",
+         valueClass = "java.lang.String"
+   )
+   public void setMap(Map collection)
+   {
+      super.setMap(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsMapUnmodifiableObject.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsMapUnmodifiableObject.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsMapUnmodifiableObject.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,57 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Map;
+
+import org.jboss.beans.metadata.plugins.annotations.EntryValue;
+import org.jboss.beans.metadata.plugins.annotations.MapValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromStringsMapUnmodifiableObject extends UnmodifiableGetterBean
+{
+   @MapValue(
+         value = {
+            @EntryValue(
+                  key=@Value(string = @StringValue("string1")),
+                  value=@Value(string = @StringValue("string2"))
+            ),
+            @EntryValue(
+                  key=@Value(string = @StringValue("string2")),
+                  value=@Value(string = @StringValue("string1"))
+            )
+         },
+         keyClass = "java.lang.String",
+         valueClass = "java.lang.String",
+         clazz = "java.util.HashMap"
+   )
+   public void setMap(Map map)
+   {
+      super.setMap(map);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsSetSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsSetSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsSetSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,50 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Set;
+
+import org.jboss.beans.metadata.plugins.annotations.SetValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromStringsSetSimpleBean extends SimpleBean
+{
+   @SetValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setSet(Set collection)
+   {
+      super.setSet(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsSetUnmodifiableObject.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsSetUnmodifiableObject.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/FromStringsSetUnmodifiableObject.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+import org.jboss.beans.metadata.plugins.annotations.SetValue;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FromStringsSetUnmodifiableObject extends UnmodifiableGetterBean
+{
+   @SetValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "java.util.HashSet"
+   )
+   public void setSet(java.util.Set set)
+   {
+      super.setSet(set);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceArraySimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceArraySimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceArraySimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,50 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+
+import org.jboss.beans.metadata.plugins.annotations.ArrayValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class InterfaceArraySimpleBean extends SimpleBean
+{
+   @ArrayValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "java.util.Array"
+   )
+   public void setArray(Object[] array)
+   {
+      super.setArray(array);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceListSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceListSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceListSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,51 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.List;
+
+import org.jboss.beans.metadata.plugins.annotations.ListValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class InterfaceListSimpleBean extends SimpleBean
+{
+   @ListValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "java.util.List"
+   )
+   public void setList(List collection)
+   {
+      super.setList(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceMapSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceMapSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceMapSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,56 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Map;
+
+import org.jboss.beans.metadata.plugins.annotations.EntryValue;
+import org.jboss.beans.metadata.plugins.annotations.MapValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class InterfaceMapSimpleBean extends SimpleBean
+{
+   @MapValue(
+         value = {
+            @EntryValue(
+                  key=@Value(string = @StringValue("string1")),
+                  value=@Value(string = @StringValue("string2"))
+            ),
+            @EntryValue(
+                  key=@Value(string = @StringValue("string2")),
+                  value=@Value(string = @StringValue("string1"))
+            )
+         },
+         keyClass = "java.lang.String", valueClass = "java.lang.String",
+         clazz = "java.util.Map"
+   )
+   public void setMap(Map collection)
+   {
+      super.setMap(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceSetSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceSetSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/InterfaceSetSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,51 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Set;
+
+import org.jboss.beans.metadata.plugins.annotations.SetValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class InterfaceSetSimpleBean extends SimpleBean
+{
+   @SetValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "java.util.Set"
+   )
+   public void setSet(Set collection)
+   {
+      super.setSet(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/KeyTypeOverrideMapSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/KeyTypeOverrideMapSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/KeyTypeOverrideMapSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,60 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Map;
+
+import org.jboss.beans.metadata.plugins.annotations.EntryValue;
+import org.jboss.beans.metadata.plugins.annotations.MapValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class KeyTypeOverrideMapSimpleBean extends SimpleBean
+{
+   @MapValue(
+         value = {
+            @EntryValue(
+                  key=@Value(string = @StringValue("string1")),
+                  value=@Value(string = @StringValue("string2"))
+            ),
+            @EntryValue(
+                  key=@Value(string = @StringValue("string2")),
+                  value=@Value(string = @StringValue("string1"))
+            ),
+            @EntryValue(
+                  key=@Value(string = @StringValue(value = "1", type="java.lang.Integer")),
+                  value=@Value(string = @StringValue("integer"))
+            )
+         },
+         keyClass = "java.lang.String", valueClass = "java.lang.String",
+         clazz = "org.jboss.test.kernel.config.support.CustomMap"
+   )
+   public void setMap(Map collection)
+   {
+      super.setMap(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotAArraySimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotAArraySimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotAArraySimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.ArrayValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class NotAArraySimpleBean extends SimpleBean
+{
+   @ArrayValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue(value = "1", type = "java.lang.Integer"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setAString(String string)
+   {
+      super.setAString(string);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotAListSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotAListSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotAListSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.ListValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class NotAListSimpleBean extends SimpleBean
+{
+   @ListValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue(value = "1", type = "java.lang.Integer"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setAString(String string)
+   {
+      super.setAString(string);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotAMapSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotAMapSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotAMapSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,54 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.MapValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.EntryValue;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class NotAMapSimpleBean extends SimpleBean
+{
+   @MapValue(
+         value = {
+            @EntryValue(
+                  key=@Value(string = @StringValue("string1")),
+                  value=@Value(string = @StringValue("string2"))
+            ),
+            @EntryValue(
+                  key=@Value(string = @StringValue("string2")),
+                  value=@Value(string = @StringValue("string1"))
+            )
+         },
+         keyClass = "java.lang.String",
+         valueClass = "java.lang.String"
+   )
+   public void setAString(String string)
+   {
+      super.setAString(string);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotASetSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotASetSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/NotASetSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.SetValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class NotASetSimpleBean extends SimpleBean
+{
+   @SetValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue(value = "1", type = "java.lang.Integer"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setAString(String string)
+   {
+      super.setAString(string);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectArraySimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectArraySimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectArraySimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,50 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.ArrayValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class OnObjectArraySimpleBean extends SimpleBean
+{
+   @ArrayValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue(value = "1", type = "java.lang.Integer"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "org.jboss.test.kernel.config.support.CustomArray"
+   )
+   public void setAnObject(Object object)
+   {
+      super.setAnObject(object);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectListSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectListSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectListSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,50 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.ListValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class OnObjectListSimpleBean extends SimpleBean
+{
+   @ListValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue(value = "1", type = "java.lang.Integer"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "org.jboss.test.kernel.config.support.CustomList"
+   )
+   public void setAnObject(Object object)
+   {
+      super.setAnObject(object);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectMapSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectMapSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectMapSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,54 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.MapValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.EntryValue;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class OnObjectMapSimpleBean extends SimpleBean
+{
+   @MapValue(
+         value = {
+            @EntryValue(
+                  key=@Value(string = @StringValue("string1")),
+                  value=@Value(string = @StringValue("string2"))
+            ),
+            @EntryValue(
+                  key=@Value(string = @StringValue("string2")),
+                  value=@Value(string = @StringValue("string1"))
+            )
+         },
+         keyClass = "java.lang.String", valueClass = "java.lang.String",
+         clazz = "org.jboss.test.kernel.config.support.CustomMap"
+   )
+   public void setAnObject(Object object)
+   {
+      super.setAnObject(object);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectSetSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectSetSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/OnObjectSetSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,50 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.SetValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class OnObjectSetSimpleBean extends SimpleBean
+{
+   @SetValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue(value = "1", type = "java.lang.Integer"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "org.jboss.test.kernel.config.support.CustomSet"
+   )
+   public void setAnObject(Object object)
+   {
+      super.setAnObject(object);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/TypeOverrideArraySimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/TypeOverrideArraySimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/TypeOverrideArraySimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import org.jboss.beans.metadata.plugins.annotations.ArrayValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class TypeOverrideArraySimpleBean extends SimpleBean
+{
+   @ArrayValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue(value = "1", type = "java.lang.Integer"))
+         },
+         elementClass = "java.lang.String"
+   )
+   public void setArray(Object[] array)
+   {
+      super.setArray(array);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/TypeOverrideListSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/TypeOverrideListSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/TypeOverrideListSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,52 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.List;
+
+import org.jboss.beans.metadata.plugins.annotations.ListValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class TypeOverrideListSimpleBean extends SimpleBean
+{
+   @ListValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue(value = "1", type = "java.lang.Integer"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "org.jboss.test.kernel.config.support.CustomList"
+   )
+   public void setList(List collection)
+   {
+      super.setList(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/TypeOverrideSetSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/TypeOverrideSetSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/TypeOverrideSetSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,52 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Set;
+
+import org.jboss.beans.metadata.plugins.annotations.SetValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class TypeOverrideSetSimpleBean extends SimpleBean
+{
+   @SetValue(
+         value = {
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string2")),
+            @Value(string = @StringValue("string1")),
+            @Value(string = @StringValue(value = "1", type = "java.lang.Integer"))
+         },
+         elementClass = "java.lang.String",
+         clazz = "org.jboss.test.kernel.config.support.CustomSet"
+   )
+   public void setSet(Set collection)
+   {
+      super.setSet(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/ValueTypeOverrideMapSimpleBean.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/ValueTypeOverrideMapSimpleBean.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/support/ValueTypeOverrideMapSimpleBean.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,60 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.support;
+
+import java.util.Map;
+
+import org.jboss.beans.metadata.plugins.annotations.EntryValue;
+import org.jboss.beans.metadata.plugins.annotations.MapValue;
+import org.jboss.beans.metadata.plugins.annotations.StringValue;
+import org.jboss.beans.metadata.plugins.annotations.Value;
+
+/**
+ * A simple bean
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class ValueTypeOverrideMapSimpleBean extends SimpleBean
+{
+   @MapValue(
+         value = {
+            @EntryValue(
+                  key=@Value(string = @StringValue("string1")),
+                  value=@Value(string = @StringValue("string2"))
+            ),
+            @EntryValue(
+                  key=@Value(string = @StringValue("string2")),
+                  value=@Value(string = @StringValue("string1"))
+            ),
+            @EntryValue(
+                  key=@Value(string = @StringValue("integer")),
+                  value=@Value(string = @StringValue(value = "1", type="java.lang.Integer"))
+            )
+         },
+         keyClass = "java.lang.String", valueClass = "java.lang.String",
+         clazz = "org.jboss.test.kernel.config.support.CustomMap"
+   )
+   public void setMap(Map collection)
+   {
+      super.setMap(collection);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/ArrayAnnotationTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/ArrayAnnotationTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/ArrayAnnotationTestCase.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,127 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.test;
+
+import junit.framework.Test;
+import org.jboss.beans.metadata.plugins.builder.BeanMetaDataBuilderFactory;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.dependency.spi.ControllerState;
+import org.jboss.test.kernel.config.support.FromCustomArraySimpleBean;
+import org.jboss.test.kernel.config.support.FromCustomSignatureArraySimpleBean;
+import org.jboss.test.kernel.config.support.FromObjectsArraySimpleBean;
+import org.jboss.test.kernel.config.support.FromStringsArraySimpleBean;
+import org.jboss.test.kernel.config.support.InterfaceArraySimpleBean;
+import org.jboss.test.kernel.config.support.NotAArraySimpleBean;
+import org.jboss.test.kernel.config.support.SimpleBean;
+import org.jboss.test.kernel.config.support.TypeOverrideArraySimpleBean;
+
+/**
+ * Array Test Case.
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class ArrayAnnotationTestCase extends ArrayTestCase
+{
+   public static Test suite()
+   {
+      return suite(ArrayAnnotationTestCase.class);
+   }
+
+   public ArrayAnnotationTestCase(String name)
+   {
+      super(name);
+   }
+
+   public SimpleBean simpleArrayFromObjects() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromObjectsArraySimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean simpleArrayFromStrings() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromStringsArraySimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean customArrayExplicit() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromCustomArraySimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean customArrayFromSignature() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromCustomSignatureArraySimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+/*
+   protected SimpleBean customArrayPreInstantiated() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromPreinstArraySimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected UnmodifiableGetterBean unmodifiableArrayPreInstantiated() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromStringsArrayUnmodifiableObject.class.getName());
+      return (UnmodifiableGetterBean) instantiate(builder.getBeanMetaData());
+   }
+*/
+
+   protected SimpleBean arrayWithValueTypeOverride() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", TypeOverrideArraySimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+/*
+   protected SimpleBean arrayInjectOnObject() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", OnObjectArraySimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+*/
+
+   public void testArrayNotAArray() throws Throwable
+   {
+      arrayNotAArray();
+   }
+
+   protected SimpleBean arrayNotAArray() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", NotAArraySimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData(), ControllerState.ERROR);
+   }
+
+   public void testArrayIsInterface() throws Throwable
+   {
+      arrayIsInterface();
+   }
+
+   protected SimpleBean arrayIsInterface() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", InterfaceArraySimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData(), ControllerState.ERROR);
+   }
+}

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/ConfigTestSuite.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/ConfigTestSuite.java	2007-08-01 04:50:00 UTC (rev 64396)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/ConfigTestSuite.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -59,12 +59,16 @@
       suite.addTest(CollectionAnnotationTestCase.suite());
       suite.addTest(SetTestCase.suite());
       suite.addTest(SetXMLTestCase.suite());
+      suite.addTest(SetAnnotationTestCase.suite());
       suite.addTest(ListTestCase.suite());
       suite.addTest(ListXMLTestCase.suite());
+      suite.addTest(ListAnnotationTestCase.suite());
       suite.addTest(ArrayTestCase.suite());
       suite.addTest(ArrayXMLTestCase.suite());
+      suite.addTest(ArrayAnnotationTestCase.suite());
       suite.addTest(MapTestCase.suite());
       suite.addTest(MapXMLTestCase.suite());
+      suite.addTest(MapAnnotationTestCase.suite());
       suite.addTest(ProgressionTestCase.suite());
       suite.addTest(ProgressionXMLTestCase.suite());
       suite.addTest(BeanMetaDataBuilderTestCase.suite());

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/ListAnnotationTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/ListAnnotationTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/ListAnnotationTestCase.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,127 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.test;
+
+import junit.framework.Test;
+import org.jboss.test.kernel.config.support.SimpleBean;
+import org.jboss.test.kernel.config.support.FromObjectsListSimpleBean;
+import org.jboss.test.kernel.config.support.FromStringsListSimpleBean;
+import org.jboss.test.kernel.config.support.FromCustomListSimpleBean;
+import org.jboss.test.kernel.config.support.FromCustomSignatureListSimpleBean;
+import org.jboss.test.kernel.config.support.FromPreinstListSimpleBean;
+import org.jboss.test.kernel.config.support.UnmodifiableGetterBean;
+import org.jboss.test.kernel.config.support.FromStringsListUnmodifiableObject;
+import org.jboss.test.kernel.config.support.TypeOverrideListSimpleBean;
+import org.jboss.test.kernel.config.support.OnObjectListSimpleBean;
+import org.jboss.test.kernel.config.support.NotAListSimpleBean;
+import org.jboss.test.kernel.config.support.InterfaceListSimpleBean;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.beans.metadata.plugins.builder.BeanMetaDataBuilderFactory;
+import org.jboss.dependency.spi.ControllerState;
+
+/**
+ * List Test Case.
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class ListAnnotationTestCase extends ListTestCase
+{
+   public static Test suite()
+   {
+      return suite(ListAnnotationTestCase.class);
+   }
+
+   public ListAnnotationTestCase(String name)
+   {
+      super(name);
+   }
+
+   public SimpleBean simpleListFromObjects() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromObjectsListSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean simpleListFromStrings() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromStringsListSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean customListExplicit() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromCustomListSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean customListFromSignature() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromCustomSignatureListSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean customListPreInstantiated() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromPreinstListSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected UnmodifiableGetterBean unmodifiableListPreInstantiated() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromStringsListUnmodifiableObject.class.getName());
+      return (UnmodifiableGetterBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean listWithValueTypeOverride() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", TypeOverrideListSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean listInjectOnObject() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", OnObjectListSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   public void testListNotAList() throws Throwable
+   {
+      listNotAList();
+   }
+
+   protected SimpleBean listNotAList() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", NotAListSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData(), ControllerState.ERROR);
+   }
+
+   public void testListIsInterface() throws Throwable
+   {
+      listIsInterface();
+   }
+
+   protected SimpleBean listIsInterface() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", InterfaceListSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData(), ControllerState.ERROR);
+   }
+}

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/MapAnnotationTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/MapAnnotationTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/MapAnnotationTestCase.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,134 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.test;
+
+import junit.framework.Test;
+import org.jboss.test.kernel.config.support.SimpleBean;
+import org.jboss.test.kernel.config.support.FromObjectsMapSimpleBean;
+import org.jboss.test.kernel.config.support.FromStringsMapSimpleBean;
+import org.jboss.test.kernel.config.support.FromCustomMapSimpleBean;
+import org.jboss.test.kernel.config.support.FromCustomSignatureMapSimpleBean;
+import org.jboss.test.kernel.config.support.FromPreinstMapSimpleBean;
+import org.jboss.test.kernel.config.support.UnmodifiableGetterBean;
+import org.jboss.test.kernel.config.support.FromStringsMapUnmodifiableObject;
+import org.jboss.test.kernel.config.support.ValueTypeOverrideMapSimpleBean;
+import org.jboss.test.kernel.config.support.OnObjectMapSimpleBean;
+import org.jboss.test.kernel.config.support.NotAMapSimpleBean;
+import org.jboss.test.kernel.config.support.InterfaceMapSimpleBean;
+import org.jboss.test.kernel.config.support.KeyTypeOverrideMapSimpleBean;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.beans.metadata.plugins.builder.BeanMetaDataBuilderFactory;
+import org.jboss.dependency.spi.ControllerState;
+
+/**
+ * Map Test Case.
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class MapAnnotationTestCase extends MapTestCase
+{
+   public static Test suite()
+   {
+      return suite(MapAnnotationTestCase.class);
+   }
+
+   public MapAnnotationTestCase(String name)
+   {
+      super(name);
+   }
+
+   public SimpleBean simpleMapFromObjects() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromObjectsMapSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean simpleMapFromStrings() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromStringsMapSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean customMapExplicit() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromCustomMapSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean customMapFromSignature() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromCustomSignatureMapSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean customMapPreInstantiated() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromPreinstMapSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected UnmodifiableGetterBean unmodifiableMapPreInstantiated() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromStringsMapUnmodifiableObject.class.getName());
+      return (UnmodifiableGetterBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean mapWithKeyTypeOverride() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", KeyTypeOverrideMapSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean mapWithValueTypeOverride() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", ValueTypeOverrideMapSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean mapInjectOnObject() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", OnObjectMapSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   public void testMapNotAMap() throws Throwable
+   {
+      mapNotAMap();
+   }
+
+   protected SimpleBean mapNotAMap() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", NotAMapSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData(), ControllerState.ERROR);
+   }
+
+   public void testMapIsInterface() throws Throwable
+   {
+      mapIsInterface();
+   }
+
+   protected SimpleBean mapIsInterface() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", InterfaceMapSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData(), ControllerState.ERROR);
+   }
+}

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/MapTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/MapTestCase.java	2007-08-01 04:50:00 UTC (rev 64396)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/MapTestCase.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -333,7 +333,7 @@
       Map<Object, Object> expected = new HashMap<Object, Object>();
       expected.put(string1, string2);
       expected.put(string2, string1);
-      expected.put(new Integer(1), integer);
+      expected.put(1, integer);
       assertEquals(expected, result);
    }
 
@@ -382,7 +382,7 @@
       Map<Object, Object> expected = new HashMap<Object, Object>();
       expected.put(string1, string2);
       expected.put(string2, string1);
-      expected.put(integer, new Integer(1));
+      expected.put(integer, 1);
       assertEquals(expected, result);
    }
 

Added: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/SetAnnotationTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/SetAnnotationTestCase.java	                        (rev 0)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/SetAnnotationTestCase.java	2007-08-01 10:20:23 UTC (rev 64397)
@@ -0,0 +1,127 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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.test.kernel.config.test;
+
+import junit.framework.Test;
+import org.jboss.test.kernel.config.support.SimpleBean;
+import org.jboss.test.kernel.config.support.FromObjectsSetSimpleBean;
+import org.jboss.test.kernel.config.support.FromStringsSetSimpleBean;
+import org.jboss.test.kernel.config.support.FromCustomSetSimpleBean;
+import org.jboss.test.kernel.config.support.FromCustomSignatureSetSimpleBean;
+import org.jboss.test.kernel.config.support.FromPreinstSetSimpleBean;
+import org.jboss.test.kernel.config.support.UnmodifiableGetterBean;
+import org.jboss.test.kernel.config.support.FromStringsSetUnmodifiableObject;
+import org.jboss.test.kernel.config.support.TypeOverrideSetSimpleBean;
+import org.jboss.test.kernel.config.support.OnObjectSetSimpleBean;
+import org.jboss.test.kernel.config.support.NotASetSimpleBean;
+import org.jboss.test.kernel.config.support.InterfaceSetSimpleBean;
+import org.jboss.beans.metadata.spi.builder.BeanMetaDataBuilder;
+import org.jboss.beans.metadata.plugins.builder.BeanMetaDataBuilderFactory;
+import org.jboss.dependency.spi.ControllerState;
+
+/**
+ * Set Test Case.
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class SetAnnotationTestCase extends SetTestCase
+{
+   public static Test suite()
+   {
+      return suite(SetAnnotationTestCase.class);
+   }
+
+   public SetAnnotationTestCase(String name)
+   {
+      super(name);
+   }
+
+   public SimpleBean simpleSetFromObjects() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromObjectsSetSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean simpleSetFromStrings() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromStringsSetSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean customSetExplicit() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromCustomSetSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean customSetFromSignature() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromCustomSignatureSetSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean customSetPreInstantiated() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromPreinstSetSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected UnmodifiableGetterBean unmodifiableSetPreInstantiated() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", FromStringsSetUnmodifiableObject.class.getName());
+      return (UnmodifiableGetterBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean setWithValueTypeOverride() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", TypeOverrideSetSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   protected SimpleBean setInjectOnObject() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", OnObjectSetSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData());
+   }
+
+   public void testSetNotASet() throws Throwable
+   {
+      setNotASet();
+   }
+
+   protected SimpleBean setNotASet() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", NotASetSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData(), ControllerState.ERROR);
+   }
+
+   public void testSetIsInterface() throws Throwable
+   {
+      setIsInterface();
+   }
+
+   protected SimpleBean setIsInterface() throws Throwable
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilderFactory.createBuilder("SimpleBean", InterfaceSetSimpleBean.class.getName());
+      return (SimpleBean) instantiate(builder.getBeanMetaData(), ControllerState.ERROR);
+   }
+}




More information about the jboss-cvs-commits mailing list