org.apache.bcel.util

Class ClassPath

Implemented Interfaces:
Serializable

public class ClassPath
extends java.lang.Object
implements Serializable

Responsible for loading (class) files from the CLASSPATH. Inspired by sun.tools.ClassPath.
Version:
$Id: ClassPath.java,v 1.7 2002/11/10 18:30:05 mdahm Exp $
Author:
M. Dahm

Nested Class Summary

static interface
ClassPath.ClassFile
Contains information about file/ZIP entry of the Java class.

Field Summary

static ClassPath
SYSTEM_CLASS_PATH

Constructor Summary

ClassPath()
Deprecated. Use SYSTEM_CLASS_PATH constant
ClassPath(String class_path)
Search for classes in given path.

Method Summary

boolean
equals(Object o)
byte[]
getBytes(String name)
byte[]
getBytes(String name, String suffix)
ClassPath.ClassFile
getClassFile(String name)
ClassPath.ClassFile
getClassFile(String name, String suffix)
static String
getClassPath()
Checks for class path components in the following properties: "java.class.path", "sun.boot.class.path", "java.ext.dirs"
InputStream
getInputStream(String name)
InputStream
getInputStream(String name, String suffix)
Return stream for class or resource on CLASSPATH.
String
getPath(String name)
String
getPath(String name, String suffix)
int
hashCode()
String
toString()

Field Details

SYSTEM_CLASS_PATH

public static final ClassPath SYSTEM_CLASS_PATH

Constructor Details

ClassPath

public ClassPath()

Deprecated. Use SYSTEM_CLASS_PATH constant

Search for classes in CLASSPATH.

ClassPath

public ClassPath(String class_path)
Search for classes in given path.

Method Details

equals

public boolean equals(Object o)

getBytes

public byte[] getBytes(String name)
            throws IOException
Returns:
byte array for class

getBytes

public byte[] getBytes(String name,
                       String suffix)
            throws IOException
Parameters:
name - fully qualified file name, e.g. java/lang/String
suffix - file name ends with suffix, e.g. .java
Returns:
byte array for file on class path

getClassFile

public ClassPath.ClassFile getClassFile(String name)
            throws IOException
Parameters:
name - fully qualified class name, e.g. java.lang.String
Returns:
input stream for class

getClassFile

public ClassPath.ClassFile getClassFile(String name,
                                        String suffix)
            throws IOException
Parameters:
name - fully qualified file name, e.g. java/lang/String
suffix - file name ends with suff, e.g. .java
Returns:
class file for the java class

getClassPath

public static final String getClassPath()
Checks for class path components in the following properties: "java.class.path", "sun.boot.class.path", "java.ext.dirs"
Returns:
class path as used by default by BCEL

getInputStream

public InputStream getInputStream(String name)
            throws IOException
Parameters:
name - fully qualified class name, e.g. java.lang.String
Returns:
input stream for class

getInputStream

public InputStream getInputStream(String name,
                                  String suffix)
            throws IOException
Return stream for class or resource on CLASSPATH.
Parameters:
name - fully qualified file name, e.g. java/lang/String
suffix - file name ends with suff, e.g. .java
Returns:
input stream for file on class path

getPath

public String getPath(String name)
            throws IOException
Parameters:
name - name of file to search for, e.g. java/lang/String.java
Returns:
full (canonical) path for file

getPath

public String getPath(String name,
                      String suffix)
            throws IOException
Parameters:
name - name of file to search for, e.g. java/lang/String
suffix - file name suffix, e.g. .java
Returns:
full (canonical) path for file, if it exists

hashCode

public int hashCode()

toString

public String toString()
Returns:
used class path string