class CachingBundleClassLoaderFactory extends java.lang.Object implements BundleClassLoaderFactory
BundleClassLoaderFactory.| Modifier and Type | Field and Description |
|---|---|
private java.util.Map<org.osgi.framework.Bundle,java.util.Map<java.lang.Object,java.lang.ref.WeakReference<java.lang.ClassLoader>>> |
cache
bundle -> map of class loaders (as a bundle can be refreshed)
|
private static java.lang.String |
DELIMITER |
| Constructor and Description |
|---|
CachingBundleClassLoaderFactory() |
| Modifier and Type | Method and Description |
|---|---|
private java.lang.ClassLoader |
createBundleClassLoader(org.osgi.framework.Bundle bundle) |
java.lang.ClassLoader |
createClassLoader(org.osgi.framework.Bundle bundle)
Creates a class loader for the given bundle.
|
private java.lang.Object |
createKeyFor(org.osgi.framework.Bundle bundle)
Creates a key for the given bundle.
|
private static final java.lang.String DELIMITER
private final java.util.Map<org.osgi.framework.Bundle,java.util.Map<java.lang.Object,java.lang.ref.WeakReference<java.lang.ClassLoader>>> cache
public java.lang.ClassLoader createClassLoader(org.osgi.framework.Bundle bundle)
BundleClassLoaderFactorycreateClassLoader in interface BundleClassLoaderFactorybundle - OSGi bundleprivate java.lang.Object createKeyFor(org.osgi.framework.Bundle bundle)
bundle - OSGi bundleprivate java.lang.ClassLoader createBundleClassLoader(org.osgi.framework.Bundle bundle)