com.javageeks.classloader
Class CompositeClassLoader
java.lang.Object
|
+--java.lang.ClassLoader
|
+--com.javageeks.classloader.CompositeClassLoader
- All Implemented Interfaces:
- ClassLoaderStrategy, java.io.Serializable
- public class CompositeClassLoader
- extends java.lang.ClassLoader
- implements ClassLoaderStrategy
- See Also:
- Serialized Form
Method Summary |
void |
addLoader(ClassLoaderStrategy cls)
|
java.util.Enumeration |
enumLoaders()
|
protected java.lang.Class |
findClass(java.lang.String name)
Find the class bytecode; defers to the Strategy's
findClassBytes method. |
byte[] |
findClassBytes(java.lang.String className)
Return byte array (which will be turned into a Class instance
via ClassLoader.defineClass) for class |
java.lang.String |
findLibraryPath(java.lang.String libraryName)
Return full path to native library given by the name
libraryName. |
java.util.Enumeration |
findResourcesEnum(java.lang.String resourceName)
Return Enumeration of resources corresponding to
resourceName. |
java.net.URL |
findResourceURL(java.lang.String resourceName)
Return URL for resource given by resourceName |
static void |
main(java.lang.String[] args)
|
void |
removeLoader(ClassLoaderStrategy cls)
|
Methods inherited from class java.lang.ClassLoader |
defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, loadClass, resolveClass, setSigners |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CompositeClassLoader
public CompositeClassLoader()
CompositeClassLoader
public CompositeClassLoader(ClassLoaderStrategy[] loaders)
CompositeClassLoader
public CompositeClassLoader(java.lang.ClassLoader parent)
CompositeClassLoader
public CompositeClassLoader(java.lang.ClassLoader parent,
ClassLoaderStrategy[] loaders)
addLoader
public void addLoader(ClassLoaderStrategy cls)
enumLoaders
public java.util.Enumeration enumLoaders()
removeLoader
public void removeLoader(ClassLoaderStrategy cls)
findClassBytes
public byte[] findClassBytes(java.lang.String className)
- Return byte array (which will be turned into a Class instance
via ClassLoader.defineClass) for class
- Specified by:
findClassBytes
in interface ClassLoaderStrategy
findResourceURL
public java.net.URL findResourceURL(java.lang.String resourceName)
- Return URL for resource given by resourceName
- Specified by:
findResourceURL
in interface ClassLoaderStrategy
findResourcesEnum
public java.util.Enumeration findResourcesEnum(java.lang.String resourceName)
- Return Enumeration of resources corresponding to
resourceName.
- Specified by:
findResourcesEnum
in interface ClassLoaderStrategy
findLibraryPath
public java.lang.String findLibraryPath(java.lang.String libraryName)
- Return full path to native library given by the name
libraryName.
- Specified by:
findLibraryPath
in interface ClassLoaderStrategy
findClass
protected java.lang.Class findClass(java.lang.String name)
throws java.lang.ClassNotFoundException
- Find the class bytecode; defers to the Strategy's
findClassBytes
method.
- Overrides:
findClass
in class java.lang.ClassLoader
main
public static void main(java.lang.String[] args)
throws java.lang.Exception