diff options
author | Thomas Watson | 2016-03-30 19:44:24 +0000 |
---|---|---|
committer | Thomas Watson | 2016-03-30 19:44:24 +0000 |
commit | 0d1bc52ab3116a67eef315923687e70a6e8a057d (patch) | |
tree | 7f3d9ef8d6fb9634b94eebc4ec82827d3800b2c5 | |
parent | 16785826eacbec5b188ae385374ae16a6a995bc1 (diff) | |
download | rt.equinox.framework-0d1bc52ab3116a67eef315923687e70a6e8a057d.tar.gz rt.equinox.framework-0d1bc52ab3116a67eef315923687e70a6e8a057d.tar.xz rt.equinox.framework-0d1bc52ab3116a67eef315923687e70a6e8a057d.zip |
Bug 478310 - improve ClasspathManager internal javadocY20160331-1000
Change-Id: Ibcec86e9938a9283b78f7a887583b1d1e9d645a7
Signed-off-by: Thomas Watson <tjwatson@us.ibm.com>
-rw-r--r-- | bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/loader/classpath/ClasspathManager.java | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/loader/classpath/ClasspathManager.java b/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/loader/classpath/ClasspathManager.java index 0d3896607..b41fcc1cd 100644 --- a/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/loader/classpath/ClasspathManager.java +++ b/bundles/org.eclipse.osgi/container/src/org/eclipse/osgi/internal/loader/classpath/ClasspathManager.java @@ -36,11 +36,11 @@ import org.osgi.framework.BundleException; import org.osgi.framework.namespace.HostNamespace; /** - * A helper class for <code>BaseClassLoader</code> implementations. This class will keep track of - * <code>ClasspathEntry</code> objects for the host bundle and any attached fragment bundles. This - * class takes care of searching the <code>ClasspathEntry</code> objects for a base class loader - * implementation. Additional behavior may be added to a classpath manager by configuring - * <code>ClassLoadingHook</code> and <code>ClassLoadingStatsHook</code>. + * A helper class for {@link ModuleClassLoader} implementations. This class will keep track of + * {@link ClasspathEntry} objects for the host bundle and any attached fragment bundles. This + * class takes care of searching the {@link ClasspathEntry} objects for a module class loader + * implementation. Additional behavior may be added to a classpath manager by configuring a + * {@link ClassLoaderHook}. * @see ModuleClassLoader * @see ClassLoaderHook * @since 3.2 @@ -66,9 +66,9 @@ public class ClasspathManager { private ThreadLocal<Collection<String>> currentlyDefining = new ThreadLocal<Collection<String>>(); /** - * Constructs a classpath manager for the given host base data, classpath and base class loader + * Constructs a classpath manager for the given generation and module class loader * @param generation the host generation for this classpath manager - * @param classloader the BaseClassLoader for this classpath manager + * @param classloader the ModuleClassLoader for this classpath manager */ public ClasspathManager(Generation generation, ModuleClassLoader classloader) { EquinoxConfiguration configuration = generation.getBundleInfo().getStorage().getConfiguration(); @@ -334,9 +334,9 @@ public class ClasspathManager { /** * Finds a local resource by searching the ClasspathEntry objects of the classpath manager. - * This method will first call all the configured class loading stats hooks + * This method will first call all the configured class loading hooks * {@link ClassLoaderHook#preFindLocalResource(String, ClasspathManager)} methods. Then it - * will search for the resource. Finally it will call all the configured class loading stats hooks + * will search for the resource. Finally it will call all the configured class loading hooks * {@link ClassLoaderHook#postFindLocalResource(String, URL, ClasspathManager)} methods. * @param resource the requested resource name. * @return the requested resource URL or null if the resource does not exist @@ -506,7 +506,7 @@ public class ClasspathManager { * stats hooks {@link ClassLoaderHook#recordClassDefine(String, Class, byte[], ClasspathEntry, BundleEntry, ClasspathManager)} * methods are called.</li> * </ol> - * Finally all the configured class loading stats hooks + * Finally all the configured class loading hooks * {@link ClassLoaderHook#postFindLocalClass(String, Class, ClasspathManager)} methods are called. * @param classname the requested class name. * @return the requested class @@ -596,9 +596,11 @@ public class ClasspathManager { /** * Defines the specified class. This method will first call all the configured class loader hooks * {@link ClassLoadingHook#processClass(String, byte[], ClasspathEntry, BundleEntry, ClasspathManager)} - * methods. Then it will call the {@link ModuleClassLoader#defineClass(String, byte[], ClasspathEntry, BundleEntry)} + * methods. If any hook modifies the bytes the all configured hook + * {@link ClassLoaderHook#rejectTransformation(String, byte[], ClasspathEntry, BundleEntry, ClasspathManager)} + * methods are called. Then it will call the {@link ModuleClassLoader#defineClass(String, byte[], ClasspathEntry, BundleEntry)} * method to define the class. After that, the class loader hooks are called to announce the class - * definition. + * definition by calling {@link ClassLoaderHook#recordClassDefine(String, Class, byte[], ClasspathEntry, BundleEntry, ClasspathManager)}. * @param name the name of the class to define * @param classbytes the class bytes * @param classpathEntry the classpath entry used to load the class bytes @@ -688,7 +690,7 @@ public class ClasspathManager { } /** - * Finds a library for the bundle represented by this class path managert + * Finds a library for the bundle represented by this class path manager * @param libname the library name * @return The absolution path to the library or null if not found */ |