edu.umd.cs.findbugs.classfile

Interface IClassPath

public interface IClassPath

A classpath from which resources (classes and other files) may be loaded. Essentially, this is just a list of codebases.

Author: David Hovemeyer

Method Summary
voidaddCodeBase(ICodeBase codeBase)
Add a codebase.
Iterator<? extends ICodeBase>appCodeBaseIterator()
Return an iterator over the application codebases.
Iterator<? extends ICodeBase>auxCodeBaseIterator()
Return an iterator over the auxiliary codebases.
voidclose()
Close all of the code bases that are part of this class path.
ICodeBaseEntrylookupResource(String resourceName)
Lookup a resource by name.
voidmapResourceNameToCodeBaseEntry(String resourceName, ICodeBaseEntry codeBaseEntry)
Add a resource name to codebase entry mapping.

Method Detail

addCodeBase

public void addCodeBase(ICodeBase codeBase)
Add a codebase. The object will be interrogated to determine whether it is an application codebase or an auxiliary codebase. Application codebases must be scannable.

Parameters: codeBase the codebase to add

appCodeBaseIterator

public Iterator<? extends ICodeBase> appCodeBaseIterator()
Return an iterator over the application codebases.

Returns: iterator over the application codebases

auxCodeBaseIterator

public Iterator<? extends ICodeBase> auxCodeBaseIterator()
Return an iterator over the auxiliary codebases.

Returns: iterator over the auxiliary codebases

close

public void close()
Close all of the code bases that are part of this class path. This should be done once the client is finished with the classpath.

lookupResource

public ICodeBaseEntry lookupResource(String resourceName)
Lookup a resource by name.

Parameters: resourceName name of the resource to look up

Returns: ICodeBaseEntry representing the resource

Throws: ResourceNotFoundException if the resource is not found

mapResourceNameToCodeBaseEntry

public void mapResourceNameToCodeBaseEntry(String resourceName, ICodeBaseEntry codeBaseEntry)
Add a resource name to codebase entry mapping. Once this is done, future lookups of this resource will automatically resolve to the given codebase entry.

Parameters: resourceName the resource name to map codeBaseEntry the codebase entry to use for this resource

FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.