com.aelitis.azureus.launcher.classloading
Class PrimaryClassloader
java.lang.Object
  
java.lang.ClassLoader
      
java.security.SecureClassLoader
          
java.net.URLClassLoader
              
com.aelitis.azureus.launcher.classloading.PrimaryClassloader
- All Implemented Interfaces: 
 - PeeringClassloader
 
public class PrimaryClassloader
- extends URLClassLoader
- implements PeeringClassloader
  
- Author:
 
  - Aaron Grunthal
 
 
| 
Method Summary | 
static ClassLoader | 
getBootstrappedLoader()
 
            | 
protected  Class | 
loadClass(String name,
          boolean resolve)
 
          altered class lookup
 
 follow normal delegation, circumventing the system classloader as we bootstraped it away
 OR delegate to the system classloader iff it is for classes from this package, this allows us to rebootstrap and discard other branches in the hierarchy
 check for loaded by peers
 try to load from peers
  | 
 
 
 
| Methods inherited from class java.lang.ClassLoader | 
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners | 
 
| Methods inherited from class java.lang.Object | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
PrimaryClassloader
public PrimaryClassloader(ClassLoader parent)
- Deprecated. DO NOT INVOKE MANUALLY
- initialization path when loaded via
 
-Djava.system.class.loader=com.aelitis.azureus.launcher.classloading.PrimaryClassloader
 instead of bootstrapping, has the advantage that this gets registered as system classloader
  
loadClass
protected Class loadClass(String name,
                          boolean resolve)
                   throws ClassNotFoundException
- altered class lookup
 
 - follow normal delegation, circumventing the system classloader as we bootstraped it away
 
 - OR delegate to the system classloader iff it is for classes from this package, this allows us to rebootstrap and discard other branches in the hierarchy
 
 - check for loaded by peers
 
 - try to load from peers
 
 
- Overrides:
 loadClass in class ClassLoader
 
- Throws:
 ClassNotFoundException
 
 
getBootstrappedLoader
public static ClassLoader getBootstrappedLoader()
 
- Parameters:
 toRun -