public interface ClassLoadingHook
ClasspathManager
class.Modifier and Type | Method and Description |
---|---|
boolean |
addClassPathEntry(ArrayList<ClasspathEntry> cpEntries,
String cp,
ClasspathManager hostmanager,
BaseData sourcedata,
ProtectionDomain sourcedomain)
Gets called by a classpath manager when looking for ClasspathEntry objects.
|
BaseClassLoader |
createClassLoader(ClassLoader parent,
ClassLoaderDelegate delegate,
BundleProtectionDomain domain,
BaseData data,
String[] bundleclasspath)
Gets called by a base data during
BundleData.createClassLoader(ClassLoaderDelegate, BundleProtectionDomain, String[]) . |
String |
findLibrary(BaseData data,
String libName)
Gets called by a base data during
BundleData.findLibrary(String) . |
ClassLoader |
getBundleClassLoaderParent()
Gets called by the adaptor during
FrameworkAdaptor.getBundleClassLoaderParent() . |
void |
initializedClassLoader(BaseClassLoader baseClassLoader,
BaseData data)
Gets called by a classpath manager at the end of
ClasspathManager.initialize() . |
byte[] |
processClass(String name,
byte[] classbytes,
ClasspathEntry classpathEntry,
BundleEntry entry,
ClasspathManager manager)
Gets called by a classpath manager before defining a class.
|
byte[] processClass(String name, byte[] classbytes, ClasspathEntry classpathEntry, BundleEntry entry, ClasspathManager manager)
name
- the name of the class being definedclassbytes
- the bytes of the class being definedclasspathEntry
- the ClasspathEntry where the class bytes have been read from.entry
- the BundleEntry source of the class bytesmanager
- the class path manager used to define the requested classboolean addClassPathEntry(ArrayList<ClasspathEntry> cpEntries, String cp, ClasspathManager hostmanager, BaseData sourcedata, ProtectionDomain sourcedomain)
cpEntries
- the list of ClasspathEntry objects currently available for the requested classpathcp
- the name of the requested classpathhostmanager
- the classpath manager the requested ClasspathEntry is forsourcedata
- the source bundle data of the requested ClasspathEntrysourcedomain
- the source domain of the requested ClasspathEntryString findLibrary(BaseData data, String libName)
BundleData.findLibrary(String)
.
A base data will call this method for each configured class loading hook until one
class loading hook returns a non-null value. If no class loading hook returns
a non-null value then the base data will return null.data
- the base data to find a native library for.libName
- the name of the native library.ClassLoader getBundleClassLoaderParent()
FrameworkAdaptor.getBundleClassLoaderParent()
.
The adaptor will call this method for each configured class loading hook until one
class loading hook returns a non-null value. If no class loading hook returns
a non-null value then the adaptor will perform the default behavior.BaseClassLoader createClassLoader(ClassLoader parent, ClassLoaderDelegate delegate, BundleProtectionDomain domain, BaseData data, String[] bundleclasspath)
BundleData.createClassLoader(ClassLoaderDelegate, BundleProtectionDomain, String[])
.
The BaseData will call this method for each configured class loading hook until one data
hook returns a non-null value. If no class loading hook returns a non-null value then a
default implemenation of BundleClassLoader will be created.parent
- the parent classloader for the BundleClassLoaderdelegate
- the delegate for the bundle classloaderdomain
- the domian for the bundle classloaderdata
- the BundleData for the BundleClassLoaderbundleclasspath
- the classpath for the bundle classloadervoid initializedClassLoader(BaseClassLoader baseClassLoader, BaseData data)
ClasspathManager.initialize()
.
The classpath manager will call this method for each configured class loading hook after it
has been initialized.baseClassLoader
- the newly created bundle classloaderdata
- the BundleData associated with the bundle classloaderCopyright © 2007–2018 The Apache Software Foundation. All rights reserved.