[jboss-cvs] JBossAS SVN: r64489 - in projects/microcontainer/trunk/container/src: main/org/jboss/reflect/plugins and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Aug 7 20:33:04 EDT 2007
Author: scott.stark at jboss.org
Date: 2007-08-07 20:33:04 -0400 (Tue, 07 Aug 2007)
New Revision: 64489
Modified:
projects/microcontainer/trunk/container/src/main/org/jboss/metadata/spi/signature/Signature.java
projects/microcontainer/trunk/container/src/main/org/jboss/reflect/plugins/ArrayInfoImpl.java
projects/microcontainer/trunk/container/src/main/org/jboss/reflect/plugins/javassist/JavassistArrayInfoImpl.java
projects/microcontainer/trunk/container/src/tests/org/jboss/test/classinfo/test/ClassInfoArrayTest.java
Log:
JBMICROCONT-202, change the ArrayInfoImpl name to match the standard reflection primative array names.
Modified: projects/microcontainer/trunk/container/src/main/org/jboss/metadata/spi/signature/Signature.java
===================================================================
--- projects/microcontainer/trunk/container/src/main/org/jboss/metadata/spi/signature/Signature.java 2007-08-07 20:54:21 UTC (rev 64488)
+++ projects/microcontainer/trunk/container/src/main/org/jboss/metadata/spi/signature/Signature.java 2007-08-08 00:33:04 UTC (rev 64489)
@@ -77,7 +77,12 @@
primitiveArrayTypes.put(Long.TYPE.getName(), "J");
primitiveArrayTypes.put(Short.TYPE.getName(), "S");
}
-
+
+ public static String getPrimativeArrayType(String name)
+ {
+ return primitiveArrayTypes.get(name);
+ }
+
/**
* Convert classes to string
*
Modified: projects/microcontainer/trunk/container/src/main/org/jboss/reflect/plugins/ArrayInfoImpl.java
===================================================================
--- projects/microcontainer/trunk/container/src/main/org/jboss/reflect/plugins/ArrayInfoImpl.java 2007-08-07 20:54:21 UTC (rev 64488)
+++ projects/microcontainer/trunk/container/src/main/org/jboss/reflect/plugins/ArrayInfoImpl.java 2007-08-08 00:33:04 UTC (rev 64489)
@@ -21,6 +21,7 @@
*/
package org.jboss.reflect.plugins;
+import org.jboss.metadata.spi.signature.Signature;
import org.jboss.reflect.spi.AnnotationValue;
import org.jboss.reflect.spi.ArrayInfo;
import org.jboss.reflect.spi.PrimitiveInfo;
@@ -68,7 +69,9 @@
}
if (temp.getClass().equals(PrimitiveInfo.class))
{
- builder.append(temp.getName());
+ //builder.append(temp.getName());
+ String encodedName = Signature.getPrimativeArrayType(temp.getName());
+ builder.append(encodedName);
}
else
{
Modified: projects/microcontainer/trunk/container/src/main/org/jboss/reflect/plugins/javassist/JavassistArrayInfoImpl.java
===================================================================
--- projects/microcontainer/trunk/container/src/main/org/jboss/reflect/plugins/javassist/JavassistArrayInfoImpl.java 2007-08-07 20:54:21 UTC (rev 64488)
+++ projects/microcontainer/trunk/container/src/main/org/jboss/reflect/plugins/javassist/JavassistArrayInfoImpl.java 2007-08-08 00:33:04 UTC (rev 64489)
@@ -23,6 +23,7 @@
import javassist.CtClass;
+import org.jboss.metadata.spi.signature.Signature;
import org.jboss.reflect.spi.AnnotationValue;
import org.jboss.reflect.spi.ArrayInfo;
import org.jboss.reflect.spi.TypeInfo;
@@ -57,7 +58,16 @@
builder.append("[");
temp = ((JavassistArrayInfoImpl) temp).componentType;
}
- builder.append("L").append(temp.getName()).append(";");
+ if (temp.isPrimitive())
+ {
+ // Use the signature encoded name for the primitive element type
+ String encodedName = Signature.getPrimativeArrayType(temp.getName());
+ builder.append(encodedName);
+ }
+ else
+ {
+ builder.append("L").append(temp.getName()).append(";");
+ }
return builder.toString();
}
Modified: projects/microcontainer/trunk/container/src/tests/org/jboss/test/classinfo/test/ClassInfoArrayTest.java
===================================================================
--- projects/microcontainer/trunk/container/src/tests/org/jboss/test/classinfo/test/ClassInfoArrayTest.java 2007-08-07 20:54:21 UTC (rev 64488)
+++ projects/microcontainer/trunk/container/src/tests/org/jboss/test/classinfo/test/ClassInfoArrayTest.java 2007-08-08 00:33:04 UTC (rev 64489)
@@ -45,12 +45,55 @@
String[] array = new String[0];
testArray(array);
}
+ public void testByteArray()
+ throws Throwable
+ {
+ byte[] array = {1, 2, 3, 4};
+ testArray(array);
+ }
+ public void test2DByteArray()
+ throws Throwable
+ {
+ byte[][] array = {{1, 2, 3, 4}, {5, 6, 7, 8}};
+ testArray(array);
+ }
public void testCharArray()
throws Throwable
{
char[] array = {'h', 'e', 'l', 'l', 'o'};
testArray(array);
}
+ public void testCharacterArray()
+ throws Throwable
+ {
+ Character[] array = {'h', 'e', 'l', 'l', 'o'};
+ testArray(array);
+ }
+ public void test2DCharacterArray()
+ throws Throwable
+ {
+ Character[][] array = {{'h', 'e', 'l', 'l', 'o'}, {'w', 'o', 'r', 'l', 'd'}};
+ testArray(array);
+ }
+ public void testfloatArray()
+ throws Throwable
+ {
+ float[] array = {1.0f, 2.0f, 3f, 4f};
+ testArray(array);
+ }
+ public void testFloatArray()
+ throws Throwable
+ {
+ Float[] array = {1.0f, 2.0f, 3f, 4f};
+ testArray(array);
+ }
+ public void testNumberArray()
+ throws Throwable
+ {
+ Number[] array = {1, 2, 3, 4};
+ testArray(array);
+ }
+
public void testArrayType()
{
String[] array = {"hello", "world"};
More information about the jboss-cvs-commits
mailing list