|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.hibernate.search.util.impl.ClassLoaderHelper
public class ClassLoaderHelper
Utility class to load instances of other classes by using a fully qualified name, or from a class type. Uses reflection and throws SearchException(s) with proper descriptions of the error, like the target class is missing a proper constructor, is an interface, is not found...
Method Summary | ||
---|---|---|
static org.apache.lucene.analysis.Analyzer |
analyzerInstanceFromClass(Class<?> classToInstantiate,
org.apache.lucene.util.Version luceneMatchVersion)
|
|
static Class |
classForName(String name)
Perform resolution of a class name. |
|
static Class |
classForName(String name,
ClassLoader classLoader)
Perform resolution of a class name. |
|
static Class<?> |
classForName(String classNameToLoad,
ClassLoader classLoader,
String componentDescription)
|
|
static Enumeration<URL> |
getResources(String resourceName,
Class<?> caller)
Load all resources matching a specific name |
|
static
|
instanceFromClass(Class<T> targetSuperType,
Class<?> classToLoad,
String componentDescription)
Creates an instance of target class |
|
static
|
instanceFromName(Class<T> targetSuperType,
String classNameToLoad,
Class<?> caller,
String componentDescription)
Creates an instance of a target class designed by fully qualified name |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public static Enumeration<URL> getResources(String resourceName, Class<?> caller)
resourceName
- the resource namecaller
- the caller
public static <T> T instanceFromName(Class<T> targetSuperType, String classNameToLoad, Class<?> caller, String componentDescription)
T
- matches the type of targetSuperType: defines the return typetargetSuperType
- the return type of the function, the classNameToLoad will be checked
to be assignable to this type.classNameToLoad
- a fully qualified class name, whose type is assignable to targetSuperTypecaller
- the class of the caller, needed for classloading purposescomponentDescription
- a meaningful description of the role the instance will have,
used to enrich error messages to describe the context of the error
SearchException
- wrapping other error types with a proper error message for all kind of problems, like
classNotFound, missing proper constructor, wrong type, security errors.public static <T> T instanceFromClass(Class<T> targetSuperType, Class<?> classToLoad, String componentDescription)
T
- the type of targetSuperType: defines the return typetargetSuperType
- the created instance will be checked to be assignable to this typeclassToLoad
- the class to be instantiatedcomponentDescription
- a role name/description to contextualize error messages
SearchException
- wrapping other error types with a proper error message for all kind of problems, like
missing proper constructor, wrong type, security errors.public static org.apache.lucene.analysis.Analyzer analyzerInstanceFromClass(Class<?> classToInstantiate, org.apache.lucene.util.Version luceneMatchVersion)
public static Class<?> classForName(String classNameToLoad, ClassLoader classLoader, String componentDescription)
public static Class classForName(String name, ClassLoader classLoader) throws ClassNotFoundException
Class.forName(String, boolean, ClassLoader)
using the caller's classloader
name
- The class nameclassLoader
- The classloader from which this call originated.
ClassNotFoundException
- From Class.forName(String, boolean, ClassLoader)
.public static Class classForName(String name) throws ClassNotFoundException
classForName(String, ClassLoader)
except that here we delegate to
Class.forName(String)
if the context classloader lookup is unsuccessful.
name
- The class name
ClassNotFoundException
- From Class.forName(String)
.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |