Class ClassLoaderFactoryImpl
java.lang.Object
com.ibm.wala.classLoader.ClassLoaderFactoryImpl
- All Implemented Interfaces:
ClassLoaderFactory
- Direct Known Subclasses:
ECJClassLoaderFactory
,HybridClassLoaderFactory
,JDTClassLoaderFactory
An implementation of the class loader factory that produces ClassLoaderImpls
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetLoader
(ClassLoaderReference classLoaderReference, IClassHierarchy cha, AnalysisScope scope) Return a class loader corresponding to a given class loader identifier.protected IClassLoader
makeNewClassLoader
(ClassLoaderReference classLoaderReference, IClassHierarchy cha, IClassLoader parent, AnalysisScope scope) Create a new class loader for a given key
-
Constructor Details
-
ClassLoaderFactoryImpl
- Parameters:
exclusions
- A set of classes that class loaders should pretend don't exist.
-
-
Method Details
-
getLoader
public IClassLoader getLoader(ClassLoaderReference classLoaderReference, IClassHierarchy cha, AnalysisScope scope) throws IOException Return a class loader corresponding to a given class loader identifier. Create one if necessary.- Specified by:
getLoader
in interfaceClassLoaderFactory
- Parameters:
classLoaderReference
- identifier for the desired class loader- Returns:
- IClassLoader
- Throws:
IOException
-
makeNewClassLoader
protected IClassLoader makeNewClassLoader(ClassLoaderReference classLoaderReference, IClassHierarchy cha, IClassLoader parent, AnalysisScope scope) throws IOException Create a new class loader for a given key- Parameters:
classLoaderReference
- the keyparent
- parent classloader to be used for delegation- Returns:
- a new ClassLoaderImpl
- Throws:
IOException
- if the desired loader cannot be instantiated, usually because the specified module can't be found.
-
getExclusions
- Returns:
- the set of classes that will be ignored.
-