sun.misc
Class MIDPImplementationClassLoader

java.lang.Object
  extended by java.lang.ClassLoader
      extended by java.security.SecureClassLoader
          extended by java.net.URLClassLoader
              extended by sun.misc.MIDPImplementationClassLoader

public class MIDPImplementationClassLoader
extends URLClassLoader


Constructor Summary
MIDPImplementationClassLoader(URL[] base, PermissionCollection pc, ClassLoader parent)
           
 
Method Summary
protected  PermissionCollection getPermissions(CodeSource cs)
          Returns the permissions for the given codesource object.
 Class loadClass(String classname, boolean resolve)
          Loads the class with the specified name.
 
Methods inherited from class java.net.URLClassLoader
addURL, definePackage, findClass, findResource, findResources, getURLs, newInstance, newInstance
 
Methods inherited from class java.security.SecureClassLoader
defineClass
 
Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, 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
 

Constructor Detail

MIDPImplementationClassLoader

public MIDPImplementationClassLoader(URL[] base,
                                     PermissionCollection pc,
                                     ClassLoader parent)
Method Detail

getPermissions

protected PermissionCollection getPermissions(CodeSource cs)
Description copied from class: URLClassLoader
Returns the permissions for the given codesource object. The implementation of this method first calls super.getPermissions and then adds permissions based on the URL of the codesource.

If the protocol is "file" and the path specifies a file, then permission to read that file is granted. If protocol is "file" and the path is a directory, permission is granted to read all files and (recursively) all files and subdirectories contained in that directory.

If the protocol is not "file", then to connect to and accept connections from the URL's host is granted.

Overrides:
getPermissions in class URLClassLoader
Parameters:
cs - the codesource
Returns:
the permissions granted to the codesource

loadClass

public Class loadClass(String classname,
                       boolean resolve)
                throws ClassNotFoundException
Description copied from class: ClassLoader
Loads the class with the specified name. The default implementation of this method searches for classes in the following order:

  1. Invoke ClassLoader.findLoadedClass(String) to check if the class has already been loaded.

  2. Invoke the loadClass method on the parent class loader. If the parent is null the class loader built-in to the virtual machine is used, instead.

  3. Invoke the ClassLoader.findClass(String) method to find the class.

If the class was found using the above steps, and the resolve flag is true, this method will then invoke the ClassLoader.resolveClass(Class) method on the resulting Class object.

Subclasses of ClassLoader are encouraged to override ClassLoader.findClass(String), rather than this method.

Overrides:
loadClass in class ClassLoader
Parameters:
classname - The name of the class
resolve - If true then resolve the class
Returns:
The resulting Class object
Throws:
ClassNotFoundException - If the class could not be found