Package repast.simphony.plugin
Class ExtendablePluginClassLoader
java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
org.java.plugin.PluginClassLoader
org.java.plugin.standard.StandardPluginClassLoader
repast.simphony.plugin.ExtendablePluginClassLoader
- All Implemented Interfaces:
Closeable,AutoCloseable
public class ExtendablePluginClassLoader
extends org.java.plugin.standard.StandardPluginClassLoader
Repast plugin ClassLoader implementation.
- Author:
- Nick Collier
-
Nested Class Summary
Nested classes/interfaces inherited from class org.java.plugin.standard.StandardPluginClassLoader
org.java.plugin.standard.StandardPluginClassLoader.PluginResourceLoader, org.java.plugin.standard.StandardPluginClassLoader.ResourceFilter -
Field Summary
Fields inherited from class org.java.plugin.standard.StandardPluginClassLoader
libraryCache, privateImports, probeParentLoaderLast, publicImports, resourceFilters, resourceLoader, reverseLookups -
Constructor Summary
ConstructorsConstructorDescriptionExtendablePluginClassLoader(org.java.plugin.PluginManager aManager, org.java.plugin.registry.PluginDescriptor descr, ClassLoader parent) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddDescriptor(org.java.plugin.registry.PluginDescriptor descriptor) voidappendPaths(String paths) protected voidprotected voidprotected PackagedefinePackage(String name, String specTitle, String specVersion, String specVendor, String implTitle, String implVersion, String implVendor, URL sealBase) Override java.langClassLoader package definition method to prevent null values in java.lang.Package attributes.Methods inherited from class org.java.plugin.standard.StandardPluginClassLoader
cacheLibrary, checkClassVisibility, dispose, findLibrary, findResource, findResource, findResources, findResources, getUrls, isResourceVisible, loadClass, loadClass, pluginsSetChanged, setProbeParentLoaderLastMethods inherited from class org.java.plugin.PluginClassLoader
getPluginDescriptor, getPluginManager, toStringMethods inherited from class java.net.URLClassLoader
addURL, close, definePackage, findClass, getPermissions, getResourceAsStream, getURLs, newInstance, newInstanceMethods inherited from class java.security.SecureClassLoader
defineClass, defineClassMethods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, 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
-
Constructor Details
-
ExtendablePluginClassLoader
public ExtendablePluginClassLoader(org.java.plugin.PluginManager aManager, org.java.plugin.registry.PluginDescriptor descr, ClassLoader parent)
-
-
Method Details
-
definePackage
protected Package definePackage(String name, String specTitle, String specVersion, String specVendor, String implTitle, String implVersion, String implVendor, URL sealBase) throws IllegalArgumentException Override java.langClassLoader package definition method to prevent null values in java.lang.Package attributes. The JPF classloader does not process the META-INF/MANIFEST.MF files inside Jars that contain metadata about the library. Null values can cause some libraries such as JAI to fail since they require non-null, but arbitrary, meta-data to instantiate properly.- Overrides:
definePackagein classClassLoader- Throws:
IllegalArgumentException- See Also:
-
java.lang.ClassLoader#defindPackage
-
addDescriptor
public void addDescriptor(org.java.plugin.registry.PluginDescriptor descriptor) -
collectFilters
protected void collectFilters()- Overrides:
collectFiltersin classorg.java.plugin.standard.StandardPluginClassLoader
-
appendPaths
- Throws:
IOException
-
collectImports
protected void collectImports()- Overrides:
collectImportsin classorg.java.plugin.standard.StandardPluginClassLoader
-