Class ClassPathImpl

java.lang.Object
edu.umd.cs.findbugs.classfile.impl.ClassPathImpl
All Implemented Interfaces:
IClassPath, AutoCloseable

public class ClassPathImpl extends Object implements IClassPath
Implementation of IClassPath.
Author:
David Hovemeyer
  • Constructor Details

    • ClassPathImpl

      public ClassPathImpl()
  • Method Details

    • toString

      public String toString()
      Overrides:
      toString in class Object
    • addCodeBase

      public void addCodeBase(ICodeBase codeBase)
      Description copied from interface: IClassPath
      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.
      Specified by:
      addCodeBase in interface IClassPath
      Parameters:
      codeBase - the codebase to add
    • appCodeBaseIterator

      public Iterator<? extends ICodeBase> appCodeBaseIterator()
      Description copied from interface: IClassPath
      Return an iterator over the application codebases.
      Specified by:
      appCodeBaseIterator in interface IClassPath
      Returns:
      iterator over the application codebases
    • auxCodeBaseIterator

      public Iterator<? extends ICodeBase> auxCodeBaseIterator()
      Description copied from interface: IClassPath
      Return an iterator over the auxiliary codebases.
      Specified by:
      auxCodeBaseIterator in interface IClassPath
      Returns:
      iterator over the auxiliary codebases
    • close

      public void close()
      Description copied from interface: IClassPath
      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.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface IClassPath
    • getApplicationCodebaseEntries

      public Map<String,ICodeBaseEntry> getApplicationCodebaseEntries()
      Description copied from interface: IClassPath
      Returns all of the application code base entries that are part of this class path.
      Specified by:
      getApplicationCodebaseEntries in interface IClassPath
      Returns:
      map where the key is slashed (VM) class name with ".class" suffix
    • lookupResource

      public ICodeBaseEntry lookupResource(String resourceName) throws ResourceNotFoundException
      Description copied from interface: IClassPath
      Lookup a resource by name.
      Specified by:
      lookupResource in interface IClassPath
      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)
      Description copied from interface: IClassPath
      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.
      Specified by:
      mapResourceNameToCodeBaseEntry in interface IClassPath
      Parameters:
      resourceName - the resource name to map
      codeBaseEntry - the codebase entry to use for this resource