org.eclipse.birt.core.framework
Class URLClassLoader
java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
org.eclipse.birt.core.framework.URLClassLoader
- Direct Known Subclasses:
- OSGILauncher.ChildFirstURLClassLoader
public class URLClassLoader
- extends java.net.URLClassLoader
A URL class loader with close API.
Java's URL class loader locks the JAR file it loaded until the JVM exit. It
may cause some problem when we need remove the JARs if the class loader are
not used any more.
BIRT's URL class loader add a new close() method to close the JAR files
explicitly. Once the close() is called, the user can't use the class and the
loaded classes any more.
Method Summary |
void |
addURL(java.net.URL url)
|
void |
close()
|
static java.lang.String |
decode(java.lang.String s)
|
protected void |
definePackage(java.lang.String className,
org.eclipse.birt.core.framework.URLClassLoader.Resource resource)
|
protected java.lang.Class<?> |
findClass(java.lang.String name)
|
protected java.lang.Class<?> |
findClass1(java.lang.String name)
|
java.net.URL |
findResource(java.lang.String name)
|
protected java.net.URL |
findResource1(java.lang.String name)
|
java.util.Enumeration<java.net.URL> |
findResources(java.lang.String name)
|
protected java.util.Enumeration<java.net.URL> |
findResources1(java.lang.String name)
|
java.net.URL[] |
getURLs()
|
Methods inherited from class java.net.URLClassLoader |
definePackage, getPermissions, newInstance, newInstance |
Methods inherited from class java.security.SecureClassLoader |
defineClass, defineClass |
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, loadClass, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
URLClassLoader
public URLClassLoader(java.net.URL[] urls)
URLClassLoader
public URLClassLoader(java.net.URL[] urls,
java.lang.ClassLoader parent)
close
public void close()
addURL
public void addURL(java.net.URL url)
- Overrides:
addURL
in class java.net.URLClassLoader
getURLs
public java.net.URL[] getURLs()
- Overrides:
getURLs
in class java.net.URLClassLoader
findClass
protected java.lang.Class<?> findClass(java.lang.String name)
throws java.lang.ClassNotFoundException
- Overrides:
findClass
in class java.net.URLClassLoader
- Throws:
java.lang.ClassNotFoundException
findClass1
protected java.lang.Class<?> findClass1(java.lang.String name)
throws java.lang.ClassNotFoundException
- Throws:
java.lang.ClassNotFoundException
definePackage
protected void definePackage(java.lang.String className,
org.eclipse.birt.core.framework.URLClassLoader.Resource resource)
findResource
public java.net.URL findResource(java.lang.String name)
- Overrides:
findResource
in class java.net.URLClassLoader
findResource1
protected java.net.URL findResource1(java.lang.String name)
findResources
public java.util.Enumeration<java.net.URL> findResources(java.lang.String name)
- Overrides:
findResources
in class java.net.URLClassLoader
findResources1
protected java.util.Enumeration<java.net.URL> findResources1(java.lang.String name)
decode
public static java.lang.String decode(java.lang.String s)
Copyright © 2008 Actuate Corp. All rights reserved.