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