00001 00025 package org.objectweb.jonas_lib.loader; 00026 00027 import java.io.InputStream; 00028 import java.net.URL; 00029 00034 public class ThreadContextClassLoader extends ClassLoader { 00035 00039 public ThreadContextClassLoader() { 00040 super(); 00041 } 00042 00046 public synchronized void clearAssertionStatus() { 00047 getContextClassLoader().clearAssertionStatus(); 00048 } 00049 00053 public URL getResource(String name) { 00054 return getContextClassLoader().getResource(name); 00055 } 00056 00060 public InputStream getResourceAsStream(String name) { 00061 return getContextClassLoader().getResourceAsStream(name); 00062 } 00063 00067 public Class loadClass(String name) throws ClassNotFoundException { 00068 return getContextClassLoader().loadClass(name); 00069 } 00070 00075 public synchronized void setClassAssertionStatus(String className, boolean enabled) { 00076 getContextClassLoader().setClassAssertionStatus(className, enabled); 00077 } 00078 00082 public synchronized void setDefaultAssertionStatus(boolean enabled) { 00083 getContextClassLoader().setDefaultAssertionStatus(enabled); 00084 } 00085 00090 public synchronized void setPackageAssertionStatus(String packageName, boolean enabled) { 00091 getContextClassLoader().setPackageAssertionStatus(packageName, enabled); 00092 } 00093 00097 private ClassLoader getContextClassLoader() { 00098 return Thread.currentThread().getContextClassLoader(); 00099 } 00100 }