You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2013/02/07 19:32:43 UTC
svn commit: r1443646 - in /camel/branches/camel-2.9.x: ./
camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java
camel-core/src/test/java/org/apache/camel/impl/DefaultClassResolverTest.java
Author: davsclaus
Date: Thu Feb 7 18:32:42 2013
New Revision: 1443646
URL: http://svn.apache.org/r1443646
Log:
CAMEL-6051: Added more simple type converters to array types to default class resolver, so you can convert to Object[] etc.
Modified:
camel/branches/camel-2.9.x/ (props changed)
camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java
camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/impl/DefaultClassResolverTest.java
Propchange: camel/branches/camel-2.9.x/
------------------------------------------------------------------------------
Merged /camel/trunk:r1443644
Merged /camel/branches/camel-2.10.x:r1443645
Propchange: camel/branches/camel-2.9.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.
Modified: camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java?rev=1443646&r1=1443645&r2=1443646&view=diff
==============================================================================
--- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java (original)
+++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java Thu Feb 7 18:32:42 2013
@@ -787,9 +787,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/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/impl/DefaultClassResolverTest.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/impl/DefaultClassResolverTest.java?rev=1443646&r1=1443645&r2=1443646&view=diff
==============================================================================
--- camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/impl/DefaultClassResolverTest.java (original)
+++ camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/impl/DefaultClassResolverTest.java Thu Feb 7 18:32:42 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());