Package org.picocontainer.security
Class CustomPermissionsURLClassLoader
java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
org.picocontainer.security.CustomPermissionsURLClassLoader
- All Implemented Interfaces:
Closeable
,AutoCloseable
CustomPermissionsURLClassLoader extends URLClassLoader, adding the abilty to programatically add permissions easily.
To be effective for permission management, it should be run in conjunction with a policy that restricts
some of the classloaders, but not all.
It's not ordinarily used by PicoContainer, but is here because PicoContainer is common
to most classloader trees.
- Author:
- Paul Hammant
-
Constructor Summary
ConstructorsConstructorDescriptionCustomPermissionsURLClassLoader
(URL[] urls, Map<URL, Permissions> permissionsMap, ClassLoader parent) -
Method Summary
Modifier and TypeMethodDescriptionprotected Class
<?> getPermissions
(CodeSource codeSource) Class
<?> toString()
Methods inherited from class java.net.URLClassLoader
addURL, close, definePackage, findResource, findResources, 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, findLibrary, 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
-
CustomPermissionsURLClassLoader
public CustomPermissionsURLClassLoader(URL[] urls, Map<URL, Permissions> permissionsMap, ClassLoader parent)
-
-
Method Details
-
loadClass
- Overrides:
loadClass
in classClassLoader
- Throws:
ClassNotFoundException
-
findClass
- Overrides:
findClass
in classURLClassLoader
- Throws:
ClassNotFoundException
-
toString
-
getPermissions
- Overrides:
getPermissions
in classURLClassLoader
-