[hibernate-commits] Hibernate SVN: r16722 - validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/util.
hibernate-commits at lists.jboss.org
hibernate-commits at lists.jboss.org
Tue Jun 9 10:26:07 EDT 2009
Author: hardy.ferentschik
Date: 2009-06-09 10:26:06 -0400 (Tue, 09 Jun 2009)
New Revision: 16722
Modified:
validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/util/ReflectionHelper.java
Log:
Added a new helper method to determine the autoboxed type of a primitive type.
Modified: validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/util/ReflectionHelper.java
===================================================================
--- validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/util/ReflectionHelper.java 2009-06-09 14:19:42 UTC (rev 16721)
+++ validator/trunk/hibernate-validator/src/main/java/org/hibernate/validation/util/ReflectionHelper.java 2009-06-09 14:26:06 UTC (rev 16722)
@@ -435,6 +435,47 @@
}
/**
+ * Returns the autoboxed type of a primitive type.
+ *
+ * @param primitiveType the primitive type
+ * @return the autoboxed type of a primitive type.
+ * @throws IllegalArgumentException in case the parameter {@code primitiveType} does not represent a primitive type.
+ */
+ public static Class<?> boxedTyp(Type primitiveType) {
+ if ( !( primitiveType instanceof Class ) && !( ( Class ) primitiveType ).isPrimitive() ) {
+ throw new IllegalArgumentException( primitiveType.getClass() + "has to be a primitive type" );
+ }
+
+ if ( primitiveType == boolean.class ) {
+ return Boolean.class;
+ }
+ else if ( primitiveType == char.class ) {
+ return Character.class;
+ }
+ else if ( primitiveType == double.class ) {
+ return Double.class;
+ }
+ else if ( primitiveType == float.class ) {
+ return Float.class;
+ }
+ else if ( primitiveType == long.class ) {
+ return Long.class;
+ }
+ else if ( primitiveType == int.class ) {
+ return Integer.class;
+ }
+ else if ( primitiveType == short.class ) {
+ return Short.class;
+ }
+ else if ( primitiveType == byte.class ) {
+ return Byte.class;
+ }
+ else {
+ throw new RuntimeException( "Unhandled primitive type." );
+ }
+ }
+
+ /**
* Get all superclasses and interfaces recursively.
*
* @param clazz The class to start the search with.
More information about the hibernate-commits
mailing list