FindBugs™ 1.3.9

edu.umd.cs.findbugs.classfile
Interface ICodeBase

All Known Subinterfaces:
IScannableCodeBase
All Known Implementing Classes:
AbstractScannableCodeBase, DirectoryCodeBase, NestedZipFileCodeBase, SingleFileCodeBase, ZipFileCodeBase, ZipInputStreamCodeBase

public interface ICodeBase

Interface for a basic code base in which we can look up resources but not necessarily scan for the list of all resources.

Author:
David Hovemeyer

Field Summary
static int IN_JAR_MANIFEST
          Codebase was referenced in the Class-Path attribute of a Jar manifest of another codebase.
static int IN_SYSTEM_CLASSPATH
          Codebase was discovered in the system classpath.
static int NESTED
          Codebase was discovered as a nested archive in another codebase.
static int SPECIFIED
          Codebase was explicitly specified.
 
Method Summary
 void close()
          This method should be called when done using the code base.
 boolean containsSourceFiles()
          Return whether or not this code base contains any source files.
 ICodeBaseLocator getCodeBaseLocator()
          Get the codebase locator describing the location of this codebase.
 int getHowDiscovered()
          Return how this codebase was discovered.
 long getLastModifiedTime()
          Get timestamp indicating the most recent time when any of the files in the codebase were modified.
 java.lang.String getPathName()
          Get the filesystem pathname of this codebase.
 boolean isApplicationCodeBase()
          Return whether or not this codebase is an application codebase.
 ICodeBaseEntry lookupResource(java.lang.String resourceName)
          Look up a resource in this code base.
 void setApplicationCodeBase(boolean isAppCodeBase)
          Designate this code base as an application codebase.
 void setHowDiscovered(int howDiscovered)
          Set how this codebase was discovered.
 void setLastModifiedTime(long lastModifiedTime)
          Set timestamp indicating the most recent time when any of the files in the codebase were modified.
 

Field Detail

SPECIFIED

static final int SPECIFIED
Codebase was explicitly specified.

See Also:
Constant Field Values

NESTED

static final int NESTED
Codebase was discovered as a nested archive in another codebase.

See Also:
Constant Field Values

IN_JAR_MANIFEST

static final int IN_JAR_MANIFEST
Codebase was referenced in the Class-Path attribute of a Jar manifest of another codebase.

See Also:
Constant Field Values

IN_SYSTEM_CLASSPATH

static final int IN_SYSTEM_CLASSPATH
Codebase was discovered in the system classpath.

See Also:
Constant Field Values
Method Detail

getCodeBaseLocator

ICodeBaseLocator getCodeBaseLocator()
Get the codebase locator describing the location of this codebase.

Returns:
the ICodeBaseLocator

lookupResource

ICodeBaseEntry lookupResource(java.lang.String resourceName)
Look up a resource in this code base.

Parameters:
resourceName - name of the resource to look up
Returns:
ICodeBaseEntry representing the resource or null if the resource cannot be found in this code base

setApplicationCodeBase

void setApplicationCodeBase(boolean isAppCodeBase)
Designate this code base as an application codebase.

Parameters:
isAppCodeBase - true if this is an application codebase, false if not

isApplicationCodeBase

boolean isApplicationCodeBase()
Return whether or not this codebase is an application codebase.

Returns:
true if this is an application codebase, false if not

setHowDiscovered

void setHowDiscovered(int howDiscovered)
Set how this codebase was discovered.

Parameters:
howDiscovered - one of the constants SPECIFIED, NESTED, IN_JAR_MANIFEST, or IN_SYSTEM_CLASSPATH

getHowDiscovered

int getHowDiscovered()
Return how this codebase was discovered.

Returns:
one of the constants SPECIFIED, NESTED, IN_JAR_MANIFEST, or IN_SYSTEM_CLASSPATH

containsSourceFiles

boolean containsSourceFiles()
                            throws java.lang.InterruptedException
Return whether or not this code base contains any source files.

Returns:
true if the code base contains source file(s), false if it does not contain source files
Throws:
java.lang.InterruptedException

getPathName

java.lang.String getPathName()
Get the filesystem pathname of this codebase.

Returns:
the filesystem pathname of this codebase, or null if this codebase is not accessible via the filesystem

setLastModifiedTime

void setLastModifiedTime(long lastModifiedTime)
Set timestamp indicating the most recent time when any of the files in the codebase were modified.

Parameters:
lastModifiedTime - timestamp when any codebase files were most-recently modified

getLastModifiedTime

long getLastModifiedTime()
Get timestamp indicating the most recent time when any of the files in the codebase were modified. This information is only likely to be accurate if an ICodeBaseIterator has been used to scan the resources in the codebase (scannable codebases only, obviously).

Returns:
timestamp when any codebase files were most-recently modified, -1 if unknown

close

void close()
This method should be called when done using the code base.


FindBugs™ 1.3.9

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