public Object run() { URL url = ucl.getResourceLocally(classRsrcName); ucl = null; classRsrcName = null; return url; } }
/** * Returns a string representation. */ public String toString() { return super.toString() + "{ url=" + getURL() + " }"; }
public void unregister() { super.unregister(); this.origURL = null; this.url = null; }
/** * Clear all blacklists */ public void clearBlacklists() { clearClassBlackList(); clearResourceBlackList(); }
public URL getResourceLocally(String name) { URL resURL = resourceCache.get(name); if (resURL != null) return resURL; if (isResourceBlackListed(name)) return null; resURL = super.getResource(name); if( log.isTraceEnabled() == true ) log.trace("getResourceLocally("+this+"), name="+name+", resURL:"+resURL); if (resURL == null) addToResourceBlackList(name); else resourceCache.put(name, resURL); return resURL; }
if( trace ) log.trace("findClass, name="+name); if (isClassBlackListed(name)) URL classUrl = getClassURL(name); byte[] rawcode = loadByteCode(classUrl); URL codeSourceUrl = getCodeSourceURL(name, classUrl); ProtectionDomain pd = getProtectionDomain(codeSourceUrl); byte[] bytecode = translator.transform(this, name, null, pd, rawcode); bytecode = rawcode; definePackage(name); return defineClass(name, bytecode, 0, bytecode.length, pd); try clazz = findClassLocally(name); addToClassBlackList(name); throw e;
cl.setRepository(this); URL url = cl.getURL(); boolean added = false; synchronized (classLoaders) cl.setAddedOrder(addedCount); updatePackageMap(cl);
try if (isClassBlackListed(name)) addToClassBlackList(name); removeFromClassBlackList(name); return result;
uclOrder = ucl.getAddedOrder(); url = ucl.getResourceLocally(classRsrcName);
public void unregister() { log.debug("Unregistering cl=" + this); if (repository != null) repository.removeClassLoader(this); clearBlacklists(); resourceCache.clear(); repository = null; this.unregisterTrace = new Exception(); }
while( t == null && ucl.attempt(1) == false )
if( trace ) log.trace("findClass, name="+name); if (isClassBlackListed(name)) URL classUrl = getClassURL(name); byte[] rawcode = loadByteCode(classUrl); URL codeSourceUrl = getCodeSourceURL(name, classUrl); ProtectionDomain pd = getProtectionDomain(codeSourceUrl); byte[] bytecode = translator.transform(this, name, null, pd, rawcode); bytecode = rawcode; definePackage(name); return defineClass(name, bytecode, 0, bytecode.length, pd); try clazz = findClassLocally(name); addToClassBlackList(name); throw e;
cl.setRepository(this); URL url = cl.getURL(); boolean added = false; synchronized (classLoaders) cl.setAddedOrder(addedCount); updatePackageMap(cl);
try if (isClassBlackListed(name)) addToClassBlackList(name); removeFromClassBlackList(name); return result;
uclOrder = ucl.getAddedOrder(); url = ucl.getResourceLocally(classRsrcName);
/** * Clear all blacklists */ public void clearBlacklists() { clearClassBlackList(); clearResourceBlackList(); }
/** * Provides the same functionality as {@link java.net.URLClassLoader#getResource}. */ public URL getResourceLocally(String name) { URL resURL = (URL) resourceCache.get(name); if (resURL != null) return resURL; if (isResourceBlackListed(name)) return null; resURL = super.getResource(name); if( log.isTraceEnabled() == true ) log.trace("getResourceLocally("+this+"), name="+name+", resURL:"+resURL); if (resURL == null) addToResourceBlackList(name); else resourceCache.put(name, resURL); return resURL; }
public void unregister() { log.debug("Unregistering cl=" + this); if (repository != null) repository.removeClassLoader(this); clearBlacklists(); resourceCache.clear(); repository = null; this.unregisterTrace = new Exception(); }
while( t == null && ucl.attempt(1) == false )
public Object run() { URL url = ucl.getResourceLocally(classRsrcName); ucl = null; classRsrcName = null; return url; } }