Package edu.umd.cs.findbugs.ba
Class URLClassPathRepository
java.lang.Object
edu.umd.cs.findbugs.ba.URLClassPathRepository
- All Implemented Interfaces:
org.apache.bcel.util.Repository
BCEL Repository implementation that uses an URLClassPath to find classes.
This class has two specific improvements over BCEL's SyntheticRepository
class:
- Classpath elements may be added at any time, not just when the object is created.
- Classpath elements can be URLs. This allows repository lookups to find classes via http URLs, jar URLs, etc.
- Author:
- David Hovemeyer
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Add a filename or URL to the classpath.void
clear()
void
destroy()
Clear the repository and close all underlying resources.org.apache.bcel.classfile.JavaClass
org.apache.bcel.util.ClassPath
org.apache.bcel.classfile.JavaClass
org.apache.bcel.classfile.JavaClass
void
removeClass
(org.apache.bcel.classfile.JavaClass javaClass) void
storeClass
(org.apache.bcel.classfile.JavaClass javaClass)
-
Field Details
-
DEBUG
public static final boolean DEBUG
-
-
Constructor Details
-
URLClassPathRepository
public URLClassPathRepository()
-
-
Method Details
-
destroy
public void destroy()Clear the repository and close all underlying resources. -
addURL
Add a filename or URL to the classpath.- Parameters:
fileName
- filename or URL of classpath entry to add- Throws:
IOException
-
storeClass
public void storeClass(org.apache.bcel.classfile.JavaClass javaClass) - Specified by:
storeClass
in interfaceorg.apache.bcel.util.Repository
-
removeClass
public void removeClass(org.apache.bcel.classfile.JavaClass javaClass) - Specified by:
removeClass
in interfaceorg.apache.bcel.util.Repository
-
findClass
- Specified by:
findClass
in interfaceorg.apache.bcel.util.Repository
-
loadClass
public org.apache.bcel.classfile.JavaClass loadClass(String className) throws ClassNotFoundException - Specified by:
loadClass
in interfaceorg.apache.bcel.util.Repository
- Throws:
ClassNotFoundException
-
loadClass
- Specified by:
loadClass
in interfaceorg.apache.bcel.util.Repository
- Throws:
ClassNotFoundException
-
clear
public void clear()- Specified by:
clear
in interfaceorg.apache.bcel.util.Repository
-
getClassPath
public org.apache.bcel.util.ClassPath getClassPath()- Specified by:
getClassPath
in interfaceorg.apache.bcel.util.Repository
-