X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=support%2Fgeneral%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Freflection%2FReflectionUtils.java;h=0da2d1f2ff31fb93e3518a031686b30aff34b239;hb=313c76d2f2ef7da225beaabbb7be8715d018ab4d;hp=4c706b15084ae9fff3edea70ee5af5173476440c;hpb=fa0390b1f4d5f90d6c9f5ff5bd23c5206d526553;p=utils diff --git a/support/general/src/main/java/org/wamblee/reflection/ReflectionUtils.java b/support/general/src/main/java/org/wamblee/reflection/ReflectionUtils.java index 4c706b15..0da2d1f2 100644 --- a/support/general/src/main/java/org/wamblee/reflection/ReflectionUtils.java +++ b/support/general/src/main/java/org/wamblee/reflection/ReflectionUtils.java @@ -23,7 +23,26 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +/** + * Some utilities for reflection. + * + * @author Erik Brakkee + */ public class ReflectionUtils { + + public static final List PRIMITIVE_WRAPPERS = + createPrimitiveWrappers(); + + private static final List createPrimitiveWrappers() { + Class[] vals = { + Boolean.class, Byte.class, Character.class, Short.class, Integer.class, Long.class, + Float.class, Double.class }; + return Arrays.asList(vals); + } + + + + /** * Wraps a type by the corresponding wrapper type if it is a primitive type. * @@ -136,4 +155,16 @@ public class ReflectionUtils { getAllFields(superClass, aFound, aExcludedClasses); } } + + /** + * Checks if a class is a primitive type or wrapper type. + * @param aClass + * @return + */ + public static boolean isPrimitive(Class aClass) { + if ( aClass.isPrimitive()) { + return true; + } + return PRIMITIVE_WRAPPERS.contains(aClass); + } }