Package org.drools.wiring.api.util
Class ClassUtils
- java.lang.Object
-
- org.drools.wiring.api.util.ClassUtils
-
public abstract class ClassUtils extends Object
-
-
Field Summary
Fields Modifier and Type Field Description static booleanIS_ANDROID
-
Constructor Summary
Constructors Modifier Constructor Description protectedClassUtils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static voidaddImportStylePatterns(Map<String,Object> patterns, String str)Populates the import style pattern map from give comma delimited stringstatic booleanareNullSafeEquals(Object obj1, Object obj2)static StringcanonicalName(Class clazz)static StringconvertClassToResourcePath(Class cls)Please do not use - internal org.my.Class -> org/my/Class.classstatic StringconvertClassToResourcePath(String pName)static Class<?>convertFromPrimitiveType(Class<?> type)static Class<?>convertPrimitiveNameToType(String typeName)static StringconvertResourceToClassName(String pResourceName)Please do not use - internal org/my/Class.xxx -> org.my.Classstatic Class<?>convertToPrimitiveType(Class<?> type)static ClassextractGenericType(Class<?> clazz, String methodName)static Class<?>findClass(String className, ClassLoader cl)static Class<?>findClass(String name, Collection<String> availableImports, ClassLoader cl)static Class<?>findCommonSuperClass(Class<?> c1, Class<?> c2)static List<String>getAccessibleProperties(Class<?> clazz)static MethodgetAccessor(Class<?> clazz, String field)static Set<Class<?>>getAllImplementedInterfaceNames(Class<?> klass)static StringgetCanonicalSimpleName(Class<?> c)static StringgetCanonicalSimpleName(Class<?> c, char separator)static Class<?>getClassFromName(String className)static Class<?>getClassFromName(String className, boolean initialize, ClassLoader classLoader)static FieldgetField(Class<?> clazz, String field)static Set<Class<?>>getMinimalImplementedInterfaceNames(Class<?> klass)static StringgetPackage(Class<?> cls)Extracts the package name from the given class objectstatic MethodgetSetter(Class<?> clazz, String field, Class<?>... parameterTypes)static StringgetSimpleName(Class<?> c)static Stringgetter2property(String methodName)static ObjectinstantiateObject(String className)static ObjectinstantiateObject(String className, ClassLoader classLoader)This method will attempt to create an instance of the specified Class.static ObjectinstantiateObject(String className, ClassLoader classLoader, Object... args)This method will attempt to create an instance of the specified Class.static ObjectinstantiateObject(String className, Object... args)This method will attempt to create an instance of the specified Class.static booleanisAndroid()Checks if running on Android operating systemstatic booleanisAssignable(Class<?> type, Object obj)static booleanisCaseSenstiveOS()static booleanisConvertible(Class<?> srcPrimitive, Class<?> tgtPrimitive)static booleanisFinal(Class<?> clazz)static booleanisInterface(Class<?> clazz)static booleanisIterable(Class<?> clazz)static booleanisJboss()static booleanisMatched(Map<String,Object> patterns, String className)Determines if a given full qualified class name matches any import style patterns.static booleanisOSX()static booleanisTypeCompatibleWithArgumentType(Class<?> actual, Class<?> formal)static booleanisWindows()static Class<?>loadClass(String className, ClassLoader classLoader)This method will attempt to load the specified Class.static Stringrelative(File base, File file)static Class<?>safeLoadClass(ClassLoader cl, String name)static Stringsetter2property(String methodName)static StringstripExtension(String pResourceName)Please do not use - internal org/my/Class.xxx -> org/my/Classstatic StringucFirst(String s)
-
-
-
Method Detail
-
convertResourceToClassName
public static String convertResourceToClassName(String pResourceName)
Please do not use - internal org/my/Class.xxx -> org.my.Class
-
convertClassToResourcePath
public static String convertClassToResourcePath(Class cls)
Please do not use - internal org.my.Class -> org/my/Class.class
-
stripExtension
public static String stripExtension(String pResourceName)
Please do not use - internal org/my/Class.xxx -> org/my/Class
-
loadClass
public static Class<?> loadClass(String className, 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 Object instantiateObject(String className, 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 Object instantiateObject(String className, ClassLoader classLoader, 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 Object instantiateObject(String className, 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(Map<String,Object> patterns, String str)
Populates the import style pattern map from give comma delimited string
-
isMatched
public static boolean isMatched(Map<String,Object> patterns, String className)
Determines if a given full qualified class name matches any import style patterns.
-
getPackage
public static String getPackage(Class<?> cls)
Extracts the package name from the given class object
-
findClass
public static Class<?> findClass(String name, Collection<String> availableImports, ClassLoader cl)
-
findClass
public static Class<?> findClass(String className, ClassLoader cl)
-
isTypeCompatibleWithArgumentType
public static boolean isTypeCompatibleWithArgumentType(Class<?> actual, Class<?> formal)
-
isIterable
public static boolean isIterable(Class<?> clazz)
-
isFinal
public static boolean isFinal(Class<?> clazz)
-
isInterface
public static boolean isInterface(Class<?> clazz)
-
getAllImplementedInterfaceNames
public static Set<Class<?>> getAllImplementedInterfaceNames(Class<?> klass)
-
getMinimalImplementedInterfaceNames
public static Set<Class<?>> getMinimalImplementedInterfaceNames(Class<?> klass)
-
isCaseSenstiveOS
public static boolean isCaseSenstiveOS()
-
isWindows
public static boolean isWindows()
-
isOSX
public static boolean isOSX()
-
isJboss
public static boolean isJboss()
-
isAndroid
public static boolean isAndroid()
Checks if running on Android operating system
-
getClassFromName
public static Class<?> getClassFromName(String className) throws ClassNotFoundException
- Throws:
ClassNotFoundException
-
getClassFromName
public static Class<?> getClassFromName(String className, boolean initialize, ClassLoader classLoader) throws ClassNotFoundException
- Throws:
ClassNotFoundException
-
safeLoadClass
public static Class<?> safeLoadClass(ClassLoader cl, String name)
-
-