Package org.drools.util
Class ClassUtils
- java.lang.Object
-
- org.drools.util.ClassUtils
-
public final class ClassUtils extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description ClassUtils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.util.Map<java.lang.String,java.lang.Integer>accessorPriorityMap(java.lang.String field)static voidaddImportStylePatterns(java.util.Map<java.lang.String,java.lang.Object> patterns, java.lang.String str)Populates the import style pattern map from give comma delimited stringstatic java.lang.StringcanonicalName(java.lang.Class clazz)static java.lang.Class<?>classFromType(java.lang.reflect.Type t)static java.lang.StringconvertClassToResourcePath(java.lang.Class cls)Please do not use - internal org.my.Class -> org/my/Class.classstatic java.lang.StringconvertClassToResourcePath(java.lang.String pName)static java.lang.Class<?>convertFromPrimitiveType(java.lang.Class<?> type)static java.lang.Class<?>convertPrimitiveNameToType(java.lang.String typeName)static java.lang.StringconvertResourceToClassName(java.lang.String pResourceName)Please do not use - internal org/my/Class.xxx -> org.my.Classstatic java.lang.Class<?>convertToPrimitiveType(java.lang.Class<?> type)static java.lang.ClassextractGenericType(java.lang.Class<?> clazz, java.lang.String methodName)static java.lang.Class<?>findClass(java.lang.String className, java.lang.ClassLoader cl)static java.lang.Class<?>findClass(java.lang.String name, java.util.Collection<java.lang.String> availableImports, java.lang.ClassLoader cl)static java.lang.Class<?>findCommonSuperClass(java.lang.Class<?> c1, java.lang.Class<?> c2)static java.lang.ClassLoaderfindParentClassLoader(java.lang.Class<?> invokingClass)static java.lang.reflect.MethodgetAccessor(java.lang.Class<?> clazz, java.lang.String field)static java.lang.reflect.MethodgetAccessor(java.lang.Class<?> clazz, java.lang.String field, boolean exceptionIfIncompatible)static java.util.Set<java.lang.Class<?>>getAllImplementedInterfaceNames(java.lang.Class<?> klass)static java.lang.StringgetCanonicalSimpleName(java.lang.Class<?> c)static java.lang.StringgetCanonicalSimpleName(java.lang.Class<?> c, char separator)static java.lang.Class<?>getClassFromName(java.lang.String className)static java.lang.Class<?>getClassFromName(java.lang.String className, boolean initialize, java.lang.ClassLoader classLoader)static java.lang.reflect.FieldgetField(java.lang.Class<?> clazz, java.lang.String field)static java.lang.reflect.MembergetFieldOrAccessor(java.lang.Class clazz, java.lang.String property)static java.lang.reflect.MethodgetGetterMethod(java.lang.Class clazz, java.lang.String property)static java.lang.StringgetGetterMethod(java.lang.String s)static java.util.Set<java.lang.Class<?>>getMinimalImplementedInterfaceNames(java.lang.Class<?> klass)static java.lang.StringgetPackage(java.lang.Class<?> cls)Extracts the package name from the given class objectstatic java.lang.reflect.MethodgetSetter(java.lang.Class<?> clazz, java.lang.String field, java.lang.Class<?> parameterType)static java.lang.StringgetSimpleName(java.lang.Class<?> c)static java.lang.Stringgetter2property(java.lang.String methodName)static java.lang.reflect.TypegetTypeArgument(java.lang.reflect.Type genericType, int index)static java.lang.ObjectinstantiateObject(java.lang.String className)static java.lang.ObjectinstantiateObject(java.lang.String className, java.lang.ClassLoader classLoader)This method will attempt to create an instance of the specified Class.static java.lang.ObjectinstantiateObject(java.lang.String className, java.lang.ClassLoader classLoader, java.lang.Object... args)This method will attempt to create an instance of the specified Class.static java.lang.ObjectinstantiateObject(java.lang.String className, java.lang.Object... args)This method will attempt to create an instance of the specified Class.static booleanisAssignable(java.lang.Class<?> type, java.lang.Object obj)static booleanisAssignableFrom(java.lang.reflect.Type from, java.lang.reflect.Type to)static booleanisCaseSenstiveOS()static booleanisCollection(java.lang.reflect.Type t)static booleanisConvertible(java.lang.Class<?> srcPrimitive, java.lang.Class<?> tgtPrimitive)static booleanisFinal(java.lang.Class<?> clazz)static booleanisGetter(java.lang.String methodName)static booleanisInterface(java.lang.Class<?> clazz)static booleanisJboss()static booleanisMatched(java.util.Map<java.lang.String,java.lang.Object> patterns, java.lang.String className)Determines if a given full qualified class name matches any import style patterns.static booleanisNumericClass(java.lang.Class<?> clazz)static booleanisOSX()static booleanisReadableProperty(java.lang.Class clazz, java.lang.String property)static booleanisSetter(java.lang.String methodName)static booleanisTypeCompatibleWithArgumentType(java.lang.Class<?> actual, java.lang.Class<?> formal)static booleanisWindows()static java.lang.Class<?>loadClass(java.lang.String className, java.lang.ClassLoader classLoader)This method will attempt to load the specified Class.static java.lang.Class<?>rawType(java.lang.reflect.Type type)static java.lang.Stringrelative(java.io.File base, java.io.File file)static java.lang.Class<?>safeLoadClass(java.lang.ClassLoader cl, java.lang.String name)static java.lang.Stringsetter2property(java.lang.String methodName)static java.lang.StringstripExtension(java.lang.String pResourceName)Please do not use - internal org/my/Class.xxx -> org/my/Classstatic java.lang.Class<?>toNonPrimitiveType(java.lang.Class<?> c)static java.lang.Class<?>toRawClass(java.lang.reflect.Type type)
-
-
-
Method Detail
-
toNonPrimitiveType
public static java.lang.Class<?> toNonPrimitiveType(java.lang.Class<?> c)
-
convertResourceToClassName
public static java.lang.String convertResourceToClassName(java.lang.String pResourceName)
Please do not use - internal org/my/Class.xxx -> org.my.Class
-
convertClassToResourcePath
public static java.lang.String convertClassToResourcePath(java.lang.Class cls)
Please do not use - internal org.my.Class -> org/my/Class.class
-
convertClassToResourcePath
public static java.lang.String convertClassToResourcePath(java.lang.String pName)
-
stripExtension
public static java.lang.String stripExtension(java.lang.String pResourceName)
Please do not use - internal org/my/Class.xxx -> org/my/Class
-
relative
public static java.lang.String relative(java.io.File base, java.io.File file)
-
canonicalName
public static java.lang.String canonicalName(java.lang.Class clazz)
-
loadClass
public static java.lang.Class<?> loadClass(java.lang.String className, java.lang.ClassLoader classLoader)This method will attempt to load the specified Class. It uses a syncrhonized HashMap to cache the reflection Class lookup.
-
instantiateObject
public static java.lang.Object instantiateObject(java.lang.String className)
-
instantiateObject
public static java.lang.Object instantiateObject(java.lang.String className, java.lang.ClassLoader classLoader)This method will attempt to create an instance of the specified Class. It uses a syncrhonized HashMap to cache the reflection Class lookup.
-
instantiateObject
public static java.lang.Object instantiateObject(java.lang.String className, java.lang.ClassLoader classLoader, java.lang.Object... args)This method will attempt to create an instance of the specified Class. It uses a synchronized HashMap to cache the reflection Class lookup. It will execute the default constructor with the passed in arguments- Parameters:
className- the name of the classargs- arguments to default constructor
-
instantiateObject
public static java.lang.Object instantiateObject(java.lang.String className, java.lang.Object... args)This method will attempt to create an instance of the specified Class. It uses a synchronized HashMap to cache the reflection Class lookup. It will execute the default constructor with the passed in arguments- Parameters:
className- teh name of the classargs- arguments to default constructor
-
addImportStylePatterns
public static void addImportStylePatterns(java.util.Map<java.lang.String,java.lang.Object> patterns, java.lang.String str)Populates the import style pattern map from give comma delimited string
-
isMatched
public static boolean isMatched(java.util.Map<java.lang.String,java.lang.Object> patterns, java.lang.String className)Determines if a given full qualified class name matches any import style patterns.
-
getPackage
public static java.lang.String getPackage(java.lang.Class<?> cls)
Extracts the package name from the given class object
-
findClass
public static java.lang.Class<?> findClass(java.lang.String name, java.util.Collection<java.lang.String> availableImports, java.lang.ClassLoader cl)
-
findClass
public static java.lang.Class<?> findClass(java.lang.String className, java.lang.ClassLoader cl)
-
getField
public static java.lang.reflect.Field getField(java.lang.Class<?> clazz, java.lang.String field)
-
getAccessor
public static java.lang.reflect.Method getAccessor(java.lang.Class<?> clazz, java.lang.String field)
-
getAccessor
public static java.lang.reflect.Method getAccessor(java.lang.Class<?> clazz, java.lang.String field, boolean exceptionIfIncompatible)
-
accessorPriorityMap
public static java.util.Map<java.lang.String,java.lang.Integer> accessorPriorityMap(java.lang.String field)
-
getSetter
public static java.lang.reflect.Method getSetter(java.lang.Class<?> clazz, java.lang.String field, java.lang.Class<?> parameterType)
-
isReadableProperty
public static boolean isReadableProperty(java.lang.Class clazz, java.lang.String property)
-
getFieldOrAccessor
public static java.lang.reflect.Member getFieldOrAccessor(java.lang.Class clazz, java.lang.String property)
-
getGetterMethod
public static java.lang.reflect.Method getGetterMethod(java.lang.Class clazz, java.lang.String property)
-
getGetterMethod
public static java.lang.String getGetterMethod(java.lang.String s)
-
extractGenericType
public static java.lang.Class extractGenericType(java.lang.Class<?> clazz, java.lang.String methodName)
-
getTypeArgument
public static java.lang.reflect.Type getTypeArgument(java.lang.reflect.Type genericType, int index)
-
isAssignableFrom
public static boolean isAssignableFrom(java.lang.reflect.Type from, java.lang.reflect.Type to)
-
isCollection
public static boolean isCollection(java.lang.reflect.Type t)
-
classFromType
public static java.lang.Class<?> classFromType(java.lang.reflect.Type t)
-
toRawClass
public static java.lang.Class<?> toRawClass(java.lang.reflect.Type type)
-
rawType
public static java.lang.Class<?> rawType(java.lang.reflect.Type type)
-
isTypeCompatibleWithArgumentType
public static boolean isTypeCompatibleWithArgumentType(java.lang.Class<?> actual, java.lang.Class<?> formal)
-
isAssignable
public static boolean isAssignable(java.lang.Class<?> type, java.lang.Object obj)
-
isConvertible
public static boolean isConvertible(java.lang.Class<?> srcPrimitive, java.lang.Class<?> tgtPrimitive)
-
isFinal
public static boolean isFinal(java.lang.Class<?> clazz)
-
isInterface
public static boolean isInterface(java.lang.Class<?> clazz)
-
getter2property
public static java.lang.String getter2property(java.lang.String methodName)
-
setter2property
public static java.lang.String setter2property(java.lang.String methodName)
-
isGetter
public static boolean isGetter(java.lang.String methodName)
-
isSetter
public static boolean isSetter(java.lang.String methodName)
-
convertFromPrimitiveType
public static java.lang.Class<?> convertFromPrimitiveType(java.lang.Class<?> type)
-
convertToPrimitiveType
public static java.lang.Class<?> convertToPrimitiveType(java.lang.Class<?> type)
-
convertPrimitiveNameToType
public static java.lang.Class<?> convertPrimitiveNameToType(java.lang.String typeName)
-
getAllImplementedInterfaceNames
public static java.util.Set<java.lang.Class<?>> getAllImplementedInterfaceNames(java.lang.Class<?> klass)
-
getMinimalImplementedInterfaceNames
public static java.util.Set<java.lang.Class<?>> getMinimalImplementedInterfaceNames(java.lang.Class<?> klass)
-
isCaseSenstiveOS
public static boolean isCaseSenstiveOS()
-
isWindows
public static boolean isWindows()
-
isOSX
public static boolean isOSX()
-
isJboss
public static boolean isJboss()
-
findCommonSuperClass
public static java.lang.Class<?> findCommonSuperClass(java.lang.Class<?> c1, java.lang.Class<?> c2)
-
getClassFromName
public static java.lang.Class<?> getClassFromName(java.lang.String className) throws java.lang.ClassNotFoundException- Throws:
java.lang.ClassNotFoundException
-
getClassFromName
public static java.lang.Class<?> getClassFromName(java.lang.String className, boolean initialize, java.lang.ClassLoader classLoader) throws java.lang.ClassNotFoundException- Throws:
java.lang.ClassNotFoundException
-
safeLoadClass
public static java.lang.Class<?> safeLoadClass(java.lang.ClassLoader cl, java.lang.String name)
-
getSimpleName
public static java.lang.String getSimpleName(java.lang.Class<?> c)
-
getCanonicalSimpleName
public static java.lang.String getCanonicalSimpleName(java.lang.Class<?> c)
-
getCanonicalSimpleName
public static java.lang.String getCanonicalSimpleName(java.lang.Class<?> c, char separator)
-
findParentClassLoader
public static java.lang.ClassLoader findParentClassLoader(java.lang.Class<?> invokingClass)
-
isNumericClass
public static boolean isNumericClass(java.lang.Class<?> clazz)
-
-