public class ClassTools
extends java.lang.Object
| Modifier and Type | Method and Description |
|---|---|
static java.util.List |
collectClasses(java.lang.String classPath)
Create a list of all classes that are available from classPath.
|
static java.util.List |
collectClassNames(java.lang.String classPath)
Create a list of class names in dot notation that can be found in the
classPath.
|
static <T> java.lang.Class<T> |
createClass(java.lang.String className,
java.lang.Class<T> expectedClass,
java.lang.ClassLoader classLoader) |
static java.lang.ClassLoader |
createClassLoader(java.lang.String classPath)
Create a new ClassLoader on the specified classpath
|
protected static void |
extractClassNamesFromDir(java.util.List result,
java.io.File currentFile,
java.lang.String relativePath)
Create a list of all classes "current" and its subdirectories.
|
protected static void |
extractClassNamesFromJar(java.util.List result,
java.io.File file)
Create a list of all ".class" entries in the jar file.
|
static java.lang.String |
getPackageName(java.lang.Class clazz) |
static java.lang.String |
getUnqualifiedName(java.lang.Class clazz) |
public static java.util.List collectClasses(java.lang.String classPath)
throws java.io.IOException
Be aware that the classes are loaded and so any static code is executed.
classPath - The classpath to inspectjava.io.IOExceptionpublic static java.util.List collectClassNames(java.lang.String classPath)
throws java.io.IOException
classPath - The classpath to inspectjava.io.IOExceptionpublic static <T> java.lang.Class<T> createClass(java.lang.String className,
java.lang.Class<T> expectedClass,
java.lang.ClassLoader classLoader)
throws ObjectCreationException
ObjectCreationExceptionpublic static java.lang.ClassLoader createClassLoader(java.lang.String classPath)
classPath - The classpath we want to load from.protected static void extractClassNamesFromDir(java.util.List result,
java.io.File currentFile,
java.lang.String relativePath)
throws java.io.IOException
result - The collection that is filled with new classnamescurrentFile - The directory/file under inspectionrelativePath - The path extending from the initial root we are currently
inspecting.java.io.IOExceptionprotected static void extractClassNamesFromJar(java.util.List result,
java.io.File file)
throws java.io.IOException
result - The collection that is filled with new classnamesfile - The jar file we are inspecting.java.io.IOExceptionpublic static java.lang.String getPackageName(java.lang.Class clazz)
public static java.lang.String getUnqualifiedName(java.lang.Class clazz)