org.mule.module.launcher
Class FineGrainedControlClassLoader

java.lang.Object
  extended by java.lang.ClassLoader
      extended by java.security.SecureClassLoader
          extended by java.net.URLClassLoader
              extended by org.mule.module.launcher.GoodCitizenClassLoader
                  extended by org.mule.module.launcher.FineGrainedControlClassLoader
All Implemented Interfaces:
Closeable
Direct Known Subclasses:
MuleApplicationClassLoader, MulePluginsClassLoader

public class FineGrainedControlClassLoader
extends GoodCitizenClassLoader

TODO document overrides, blocked, systemPackages and syntax for specifying those.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.mule.module.launcher.GoodCitizenClassLoader
GoodCitizenClassLoader.NonCachingURLStreamHandlerFactory
 
Field Summary
protected  String appName
           
protected  Set<String> blocked
           
protected  Set<String> overrides
           
protected  String[] systemPackages
           
 
Constructor Summary
FineGrainedControlClassLoader(URL[] urls, ClassLoader parent)
           
FineGrainedControlClassLoader(URL[] urls, ClassLoader parent, Set<String> overrides)
           
 
Method Summary
protected  Class<?> findClass(String name)
           
protected  Class<?> findParentClass(String name)
           
 boolean isBlocked(String name)
           
 boolean isOverridden(String name)
           
protected  Class<?> loadClass(String name, boolean resolve)
           
protected  void processOverrides(Set<String> overrides)
           
 
Methods inherited from class org.mule.module.launcher.GoodCitizenClassLoader
close
 
Methods inherited from class java.net.URLClassLoader
addURL, definePackage, findResource, findResources, getPermissions, 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, findLibrary, findLoadedClass, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

appName

protected String appName

systemPackages

protected String[] systemPackages

overrides

protected Set<String> overrides

blocked

protected Set<String> blocked
Constructor Detail

FineGrainedControlClassLoader

public FineGrainedControlClassLoader(URL[] urls,
                                     ClassLoader parent)

FineGrainedControlClassLoader

public FineGrainedControlClassLoader(URL[] urls,
                                     ClassLoader parent,
                                     Set<String> overrides)
Method Detail

processOverrides

protected void processOverrides(Set<String> overrides)

loadClass

protected Class<?> loadClass(String name,
                             boolean resolve)
                      throws ClassNotFoundException
Overrides:
loadClass in class ClassLoader
Throws:
ClassNotFoundException

isOverridden

public boolean isOverridden(String name)

isBlocked

public boolean isBlocked(String name)

findParentClass

protected Class<?> findParentClass(String name)
                            throws ClassNotFoundException
Throws:
ClassNotFoundException

findClass

protected Class<?> findClass(String name)
                      throws ClassNotFoundException
Overrides:
findClass in class URLClassLoader
Throws:
ClassNotFoundException


Copyright © 2003-2014 MuleSoft, Inc.. All Rights Reserved.