This is an automated email from the ASF dual-hosted git repository. rombert pushed a commit to annotated tag org.apache.sling.jcr.classloader-2.0.6 in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-jcr-classloader.git
commit 31a142c3357c273ecf569dbe9070693c41d4d352 Author: Carsten Ziegeler <[email protected]> AuthorDate: Thu Jul 16 05:46:47 2009 +0000 Use provided parent class loader instead of own class loader git-svn-id: https://svn.apache.org/repos/asf/sling/trunk/bundles/jcr/classloader@794540 13f79535-47bb-0310-9956-ffa450edef68 --- .../internal/RepositoryClassLoaderProviderImpl.java | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/apache/sling/jcr/classloader/internal/RepositoryClassLoaderProviderImpl.java b/src/main/java/org/apache/sling/jcr/classloader/internal/RepositoryClassLoaderProviderImpl.java index c7f4fac..af5ee61 100644 --- a/src/main/java/org/apache/sling/jcr/classloader/internal/RepositoryClassLoaderProviderImpl.java +++ b/src/main/java/org/apache/sling/jcr/classloader/internal/RepositoryClassLoaderProviderImpl.java @@ -117,10 +117,23 @@ public class RepositoryClassLoaderProviderImpl } /** - * @see org.apache.sling.commons.classloader.DynamicClassLoaderProvider#getClassLoader() + * @see org.apache.sling.commons.classloader.DynamicClassLoaderProvider#getClassLoader(ClassLoader) */ - public ClassLoader getClassLoader() { - return this.getClassLoader(null); + public ClassLoader getClassLoader(final ClassLoader parent) { + // we just make up a unique identifier + final String classLoaderOwner = "DynamicClassLoaderProvider:" + parent.hashCode(); + RepositoryClassLoaderFacade loader = + (RepositoryClassLoaderFacade) this.loaders.get(classLoaderOwner); + if (loader == null) { + loader = new RepositoryClassLoaderFacade(this, parent, + OWNER_DEFAULT, this.classPath); + this.loaders.put(classLoaderOwner, loader); + } + + // extend reference counter + loader.ref(); + + return loader; } //---------- SCR Integration ---------------------------------------------- -- To stop receiving notification emails like this one, please contact "[email protected]" <[email protected]>.
