| org.jpox.ClassLoaderResolver
All known Subclasses: org.jpox.JDOClassLoaderResolver,
ClassLoaderResolver | public interface ClassLoaderResolver (Code) | | Class to allow resolution and loading of classes in a persistence framework.
Implementations are to define the rules for resolving the classes. For example
JDO (used outside a J2EE container) would likely differ from EJB3 (used within
a J2EE container).
The search class path order is:
- the primary classloader argument
- the primary classloader (set using setPrimary and kept in ThreadLocal variable).
- the current thread context classloader.
- the pm classloader.
- the registered classloader.
- the user registered classloader.
version: $Revision: 1.10 $ |
Method Summary | |
public Class | classForName(String name, ClassLoader primary) Class loading method, allowing specification of a primary loader. | public Class | classForName(String name, ClassLoader primary, boolean initialize) Class loading method, allowing specification of a primary loader
and whether the class should be initialised or not.
Parameters: name - Name of the Class to be loaded Parameters: primary - the primary ClassLoader to use (or null) Parameters: initialize - whether to initialize the class or not. | public Class | classForName(String name) Class loading method. | public Class | classForName(String name, boolean initialize) Class loading method, allowing for initialisation of the class.
Parameters: name - Name of the Class to be loaded Parameters: initialize - whether to initialize the class or not. | public URL | getResource(String resourceName, ClassLoader primary) Finds the resource with the given name.
Parameters: resourceName - the path to resource name relative to the classloader root path. | public Enumeration | getResources(String resourceName, ClassLoader primary) Finds all the resources with the given name.
Parameters: resourceName - the resource name. | public boolean | isAssignableFrom(String class_name_1, Class class_2) Method to test whether the type represented by the specified class_2
parameter can be converted to the type represented by class_name_1 parameter. | public boolean | isAssignableFrom(Class class_1, String class_name_2) Method to test whether the type represented by the specified class_name_2
parameter can be converted to the type represented by class_1 parameter. | public boolean | isAssignableFrom(String class_name_1, String class_name_2) Method to test whether the type represented by the specified class_name_2
parameter can be converted to the type represented by class_name_1 parameter. | public void | registerClassLoader(ClassLoader loader) ClassLoader registered to load classes created at runtime. | public void | registerUserClassLoader(ClassLoader loader) ClassLoader registered by users to load classes. | void | setPrimary(ClassLoader primary) Sets the primary classloader for the current thread. | void | unsetPrimary() |
classForName | public Class classForName(String name, ClassLoader primary)(Code) | | Class loading method, allowing specification of a primary loader. This method does not initialize the class
Parameters: name - Name of the Class to be loaded Parameters: primary - the primary ClassLoader to use (or null) The Class given the name, using the specified ClassLoader throws: ClassNotResolvedException - if the class can't be found in the classpath |
classForName | public Class classForName(String name, ClassLoader primary, boolean initialize)(Code) | | Class loading method, allowing specification of a primary loader
and whether the class should be initialised or not.
Parameters: name - Name of the Class to be loaded Parameters: primary - the primary ClassLoader to use (or null) Parameters: initialize - whether to initialize the class or not. The Class given the name, using the specified ClassLoader throws: ClassNotResolvedException - if the class can't be found in the classpath |
classForName | public Class classForName(String name)(Code) | | Class loading method. This method does not initialize the class
Parameters: name - Name of the Class to be loaded The Class given the name, using the specified ClassLoader |
classForName | public Class classForName(String name, boolean initialize)(Code) | | Class loading method, allowing for initialisation of the class.
Parameters: name - Name of the Class to be loaded Parameters: initialize - whether to initialize the class or not. The Class given the name, using the specified ClassLoader |
getResource | public URL getResource(String resourceName, ClassLoader primary)(Code) | | Finds the resource with the given name.
Parameters: resourceName - the path to resource name relative to the classloader root path. If resourceName starts with "/", remove it. Parameters: primary - the primary ClassLoader to use (or null) A URL object for reading the resource, or null if the resource could not be found or the invoker doesn't have adequate privileges to get the resource. throws: IOException - If I/O errors occur See Also: ClassLoader.getResource(java.lang.String) |
getResources | public Enumeration getResources(String resourceName, ClassLoader primary) throws IOException(Code) | | Finds all the resources with the given name.
Parameters: resourceName - the resource name. If resourceName starts with "/", remove it before searching. Parameters: primary - the primary ClassLoader to use (or null) An enumeration of URL objects for the resource. If no resources could be found, the enumeration will be empty. Resources that the class loader doesn't have access to will not be in the enumeration. throws: IOException - If I/O errors occur See Also: ClassLoader.getResources(java.lang.String) |
isAssignableFrom | public boolean isAssignableFrom(String class_name_1, Class class_2)(Code) | | Method to test whether the type represented by the specified class_2
parameter can be converted to the type represented by class_name_1 parameter.
Parameters: class_name_1 - Class name Parameters: class_2 - Class to compare against Whether they are assignable |
isAssignableFrom | public boolean isAssignableFrom(Class class_1, String class_name_2)(Code) | | Method to test whether the type represented by the specified class_name_2
parameter can be converted to the type represented by class_1 parameter.
Parameters: class_1 - First class Parameters: class_name_2 - Class name to compare against Whether they are assignable |
isAssignableFrom | public boolean isAssignableFrom(String class_name_1, String class_name_2)(Code) | | Method to test whether the type represented by the specified class_name_2
parameter can be converted to the type represented by class_name_1 parameter.
Parameters: class_name_1 - Class name Parameters: class_name_2 - Class name to compare against Whether they are assignable |
registerClassLoader | public void registerClassLoader(ClassLoader loader)(Code) | | ClassLoader registered to load classes created at runtime. One ClassLoader can
be registered, and if one ClassLoader is already registered, the registered ClassLoader
is replaced by loader .
Parameters: loader - The ClassLoader in which classes are defined |
registerUserClassLoader | public void registerUserClassLoader(ClassLoader loader)(Code) | | ClassLoader registered by users to load classes. One ClassLoader can
be registered, and if one ClassLoader is already registered, the registered ClassLoader
is replaced by loader .
Parameters: loader - The ClassLoader in which classes are loaded |
setPrimary | void setPrimary(ClassLoader primary)(Code) | | Sets the primary classloader for the current thread.
The primary should be kept in a ThreadLocal variable.
Parameters: primary - the primary classloader |
unsetPrimary | void unsetPrimary()(Code) | | Unsets the primary classloader for the current thread
|
|
|