Author: davsclaus
Date: Thu Feb  7 18:30:56 2013
New Revision: 1443644

URL: http://svn.apache.org/r1443644
Log:
CAMEL-6051: Added more simple type converters to array types to default class 
resolver, so you can convert to Object[] etc.

Modified:
    camel/trunk/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java
    
camel/trunk/camel-core/src/test/java/org/apache/camel/impl/DefaultClassResolverTest.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java?rev=1443644&r1=1443643&r2=1443644&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java 
Thu Feb  7 18:30:56 2013
@@ -799,9 +799,15 @@ public final class ObjectHelper {
      * @return the class or <tt>null</tt> if it could not be loaded
      */
     public static Class<?> loadSimpleType(String name) {
-        // special for byte[] as its common to use
+        // special for byte[] or Object[] as its common to use
         if ("java.lang.byte[]".equals(name) || "byte[]".equals(name)) {
             return byte[].class;
+        } else if ("java.lang.Byte[]".equals(name) || "Byte[]".equals(name)) {
+            return Byte[].class;
+        } else if ("java.lang.Object[]".equals(name) || 
"Object[]".equals(name)) {
+            return Object[].class;
+        } else if ("java.lang.String[]".equals(name) || 
"String[]".equals(name)) {
+            return String[].class;
         // and these is common as well
         } else if ("java.lang.String".equals(name) || "String".equals(name)) {
             return String.class;

Modified: 
camel/trunk/camel-core/src/test/java/org/apache/camel/impl/DefaultClassResolverTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/impl/DefaultClassResolverTest.java?rev=1443644&r1=1443643&r2=1443644&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/test/java/org/apache/camel/impl/DefaultClassResolverTest.java
 (original)
+++ 
camel/trunk/camel-core/src/test/java/org/apache/camel/impl/DefaultClassResolverTest.java
 Thu Feb  7 18:30:56 2013
@@ -62,6 +62,40 @@ public class DefaultClassResolverTest ex
         assertNotNull(clazz);
     }
 
+    public void testResolveMandatorySimpleClassType()throws Exception {
+        DefaultClassResolver resolver = new DefaultClassResolver();
+
+        Class<Byte> clazz = resolver.resolveMandatoryClass("Byte", Byte.class);
+        assertNotNull(clazz);
+        clazz = resolver.resolveMandatoryClass("java.lang.Byte", Byte.class);
+        assertNotNull(clazz);
+
+        Class<Long> clazz2 = resolver.resolveMandatoryClass("Long", 
Long.class);
+        assertNotNull(clazz2);
+        clazz2 = resolver.resolveMandatoryClass("java.lang.Long", Long.class);
+        assertNotNull(clazz2);
+
+        Class<String> clazz3 = resolver.resolveMandatoryClass("String", 
String.class);
+        assertNotNull(clazz3);
+        clazz3 = resolver.resolveMandatoryClass("java.lang.String", 
String.class);
+        assertNotNull(clazz3);
+
+        Class<Byte[]> clazz4 = resolver.resolveMandatoryClass("Byte[]", 
Byte[].class);
+        assertNotNull(clazz4);
+        clazz4 = resolver.resolveMandatoryClass("java.lang.Byte[]", 
Byte[].class);
+        assertNotNull(clazz4);
+
+        Class<Object[]> clazz5 = resolver.resolveMandatoryClass("Object[]", 
Object[].class);
+        assertNotNull(clazz5);
+        clazz5 = resolver.resolveMandatoryClass("java.lang.Object[]", 
Object[].class);
+        assertNotNull(clazz5);
+
+        Class<String[]> clazz6 = resolver.resolveMandatoryClass("String[]", 
String[].class);
+        assertNotNull(clazz6);
+        clazz6 = resolver.resolveMandatoryClass("java.lang.String[]", 
String[].class);
+        assertNotNull(clazz6);
+    }
+
     public void testResolveMandatoryClassClassLoader() throws Exception {
         DefaultClassResolver resolver = new DefaultClassResolver();
         Class<?> clazz = resolver.resolveMandatoryClass("java.lang.Integer", 
DefaultClassResolverTest.class.getClassLoader());


Reply via email to