Class StandardPluginClassLoader

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable

    public class StandardPluginClassLoader
    extends PluginClassLoader
    Standard implementation of plug-in class loader.
    Version:
    $Id: StandardPluginClassLoader.java,v 1.8 2007/04/07 12:39:50 ddimon Exp $
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected java.io.File cacheLibrary​(java.net.URL libUrl, java.lang.String libname)  
      protected void checkClassVisibility​(java.lang.Class<?> cls, StandardPluginClassLoader requestor)  
      protected void collectFilters()  
      protected void collectImports()  
      protected void dispose()
      Should release all resources acquired by this class loader instance.
      protected java.lang.String findLibrary​(java.lang.String name)  
      java.net.URL findResource​(java.lang.String name)  
      protected java.net.URL findResource​(java.lang.String name, StandardPluginClassLoader requestor, java.util.Set<java.lang.String> seenPlugins)  
      java.util.Enumeration<java.net.URL> findResources​(java.lang.String name)  
      protected void findResources​(java.util.List<java.net.URL> result, java.lang.String name, StandardPluginClassLoader requestor, java.util.Set<java.lang.String> seenPlugins)  
      protected boolean isResourceVisible​(java.lang.String name, java.net.URL url, StandardPluginClassLoader requestor)  
      protected java.lang.Class<?> loadClass​(java.lang.String name, boolean resolve)  
      protected void pluginsSetChanged()
      Registry data change notification.
      protected void setForeignClassLoadingOptimization​(boolean value)  
      protected void setLocalClassLoadingOptimization​(boolean value)  
      protected void setProbeParentLoaderLast​(boolean value)  
      protected void setStickySynchronizing​(boolean value)  
      • Methods inherited from class java.net.URLClassLoader

        addURL, close, definePackage, findClass, getPermissions, getResourceAsStream, getURLs, newInstance, newInstance
      • Methods inherited from class java.security.SecureClassLoader

        defineClass, defineClass
      • Methods inherited from class java.lang.ClassLoader

        clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLoadedClass, findResource, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getResource, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • StandardPluginClassLoader

        public StandardPluginClassLoader​(PluginManager aManager,
                                         PluginDescriptor descr,
                                         java.lang.ClassLoader parent)
        Creates class instance configured to load classes and resources for given plug-in.
        Parameters:
        aManager - plug-in manager instance
        descr - plug-in descriptor
        parent - parent class loader, usually this is JPF "host" application class loader
    • Method Detail

      • collectImports

        protected void collectImports()
      • collectFilters

        protected void collectFilters()
      • setProbeParentLoaderLast

        protected void setProbeParentLoaderLast​(boolean value)
      • setStickySynchronizing

        protected void setStickySynchronizing​(boolean value)
      • setLocalClassLoadingOptimization

        protected void setLocalClassLoadingOptimization​(boolean value)
      • setForeignClassLoadingOptimization

        protected void setForeignClassLoadingOptimization​(boolean value)
      • loadClass

        protected java.lang.Class<?> loadClass​(java.lang.String name,
                                               boolean resolve)
                                        throws java.lang.ClassNotFoundException
        Overrides:
        loadClass in class java.lang.ClassLoader
        Throws:
        java.lang.ClassNotFoundException
        See Also:
        ClassLoader.loadClass(java.lang.String, boolean)
      • checkClassVisibility

        protected void checkClassVisibility​(java.lang.Class<?> cls,
                                            StandardPluginClassLoader requestor)
                                     throws java.lang.ClassNotFoundException
        Throws:
        java.lang.ClassNotFoundException
      • findLibrary

        protected java.lang.String findLibrary​(java.lang.String name)
        Overrides:
        findLibrary in class java.lang.ClassLoader
        See Also:
        ClassLoader.findLibrary(java.lang.String)
      • cacheLibrary

        protected java.io.File cacheLibrary​(java.net.URL libUrl,
                                            java.lang.String libname)
      • findResource

        public java.net.URL findResource​(java.lang.String name)
        Overrides:
        findResource in class java.net.URLClassLoader
        See Also:
        ClassLoader.findResource(java.lang.String)
      • findResources

        public java.util.Enumeration<java.net.URL> findResources​(java.lang.String name)
                                                          throws java.io.IOException
        Overrides:
        findResources in class java.net.URLClassLoader
        Throws:
        java.io.IOException
        See Also:
        ClassLoader.findResources(java.lang.String)
      • findResource

        protected java.net.URL findResource​(java.lang.String name,
                                            StandardPluginClassLoader requestor,
                                            java.util.Set<java.lang.String> seenPlugins)
      • findResources

        protected void findResources​(java.util.List<java.net.URL> result,
                                     java.lang.String name,
                                     StandardPluginClassLoader requestor,
                                     java.util.Set<java.lang.String> seenPlugins)
                              throws java.io.IOException
        Throws:
        java.io.IOException
      • isResourceVisible

        protected boolean isResourceVisible​(java.lang.String name,
                                            java.net.URL url,
                                            StandardPluginClassLoader requestor)