/** * Return the <code>ClassLoader</code> instance associated with this module. * Only designated public interfaces will be loaded and returned by * this classloader. * * @return the public <code>ClassLoader</code> */ public ClassLoaderFacade getClassLoader() { ClassLoaderFacade r=null; if (publicCL!=null) r = publicCL.get(); if (r!=null) return r; ClassLoaderFacade facade = AccessController.doPrivileged(new PrivilegedAction<ClassLoaderFacade>() { public ClassLoaderFacade run() { return new ClassLoaderFacade(getPrivateClassLoader()); } }); facade.setPublicPkgs(moduleDef.getPublicInterfaces()); publicCL = new WeakReference<ClassLoaderFacade>(facade); return facade; }
/** * Return the <code>ClassLoader</code> instance associated with this module. * Only designated public interfaces will be loaded and returned by * this classloader. * * @return the public <code>ClassLoader</code> */ public ClassLoaderFacade getClassLoader() { ClassLoaderFacade r=null; if (publicCL!=null) r = publicCL.get(); if (r!=null) return r; ClassLoaderFacade facade = AccessController.doPrivileged(new PrivilegedAction<ClassLoaderFacade>() { public ClassLoaderFacade run() { return new ClassLoaderFacade(getPrivateClassLoader()); } }); facade.setPublicPkgs(moduleDef.getPublicInterfaces()); publicCL = new WeakReference<ClassLoaderFacade>(facade); return facade; }