org.apache.openejb
Class ClassLoaderUtil
java.lang.Object
org.apache.openejb.ClassLoaderUtil
public class ClassLoaderUtil
- extends Object
- Version:
- $Revision$ $Date$
|
Method Summary |
static void |
cleanOpenJPACache(ClassLoader classLoader)
|
static void |
clearClassLoaderCaches()
Cleans well known class loader leaks in VMs and libraries. |
static void |
clearSunJarFileFactoryCache(String jarLocation)
|
static void |
clearSunSoftCache(Class clazz,
String fieldName)
Clears the caches maintained by the SunVM object stream implementation. |
static ClassLoaderConfigurer |
configurer(String rawId)
|
static URLClassLoader |
createClassLoader(String appId,
URL[] urls,
ClassLoader parent)
|
static URLClassLoader |
createClassLoaderFirst(String appId,
URL[] urls,
ClassLoader parent)
|
static URLClassLoader |
createTempClassLoader(ClassLoader parent)
|
static URLClassLoader |
createTempClassLoader(String appId,
URL[] rawUrls,
ClassLoader parent)
|
static void |
destroyClassLoader(ClassLoader classLoader)
Destroy a classloader as forcefully as possible. |
static void |
destroyClassLoader(String appId)
|
static void |
destroyClassLoader(String appId,
String appPath)
|
boolean |
finalizeNativeLibs(ClassLoader cl)
|
static ClassLoader |
getContextClassLoader()
|
static File |
getUrlCachedName(String appId,
URL url)
|
static URL |
getUrlKeyCached(String appId,
File file)
|
static boolean |
isUrlCached(String appId,
URL url)
|
static String |
resourceName(String s)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ClassLoaderUtil
public ClassLoaderUtil()
destroyClassLoader
public static void destroyClassLoader(String appId,
String appPath)
getContextClassLoader
public static ClassLoader getContextClassLoader()
getUrlCachedName
public static File getUrlCachedName(String appId,
URL url)
isUrlCached
public static boolean isUrlCached(String appId,
URL url)
getUrlKeyCached
public static URL getUrlKeyCached(String appId,
File file)
createClassLoaderFirst
public static URLClassLoader createClassLoaderFirst(String appId,
URL[] urls,
ClassLoader parent)
createClassLoader
public static URLClassLoader createClassLoader(String appId,
URL[] urls,
ClassLoader parent)
destroyClassLoader
public static void destroyClassLoader(ClassLoader classLoader)
- Destroy a classloader as forcefully as possible.
- Parameters:
classLoader - ClassLoader to destroy.
finalizeNativeLibs
public boolean finalizeNativeLibs(ClassLoader cl)
destroyClassLoader
public static void destroyClassLoader(String appId)
createTempClassLoader
public static URLClassLoader createTempClassLoader(ClassLoader parent)
createTempClassLoader
public static URLClassLoader createTempClassLoader(String appId,
URL[] rawUrls,
ClassLoader parent)
clearClassLoaderCaches
public static void clearClassLoaderCaches()
- Cleans well known class loader leaks in VMs and libraries. There is a lot of bad code out there and this method
will clear up the know problems. This method should only be called when the class loader will no longer be used.
It this method is called two often it can have a serious impact on preformance.
clearSunJarFileFactoryCache
public static void clearSunJarFileFactoryCache(String jarLocation)
clearSunSoftCache
public static void clearSunSoftCache(Class clazz,
String fieldName)
- Clears the caches maintained by the SunVM object stream implementation.
This method uses reflection and setAccessable to obtain access to the Sun cache.
The cache Class synchronizes upon itself for access to the cache Map.
This method completely clears the class loader cache which will impact preformance of object serialization.
- Parameters:
clazz - the name of the class containing the cache fieldfieldName - the name of the cache field
cleanOpenJPACache
public static void cleanOpenJPACache(ClassLoader classLoader)
resourceName
public static String resourceName(String s)
configurer
public static ClassLoaderConfigurer configurer(String rawId)
Copyright © 1999–2015 The Apache Software Foundation. All rights reserved.