Class ClassPath

java.lang.Object
org.apache.bcel.util.ClassPath
All Implemented Interfaces:
Serializable

public class ClassPath extends Object implements Serializable
Responsible for loading (class) files from the CLASSPATH. Inspired by sun.tools.ClassPath.
Version:
$Id: ClassPath.java 516730 2007-03-10 15:21:34Z tcurdt $
Author:
M. Dahm
See Also:
  • Field Details

    • SYSTEM_CLASS_PATH

      public static final ClassPath SYSTEM_CLASS_PATH
  • Constructor Details

    • ClassPath

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

      public ClassPath()
      Deprecated.
      Use SYSTEM_CLASS_PATH constant
      Search for classes in CLASSPATH.
  • Method Details

    • toString

      public String toString()
      Overrides:
      toString in class Object
      Returns:
      used class path string
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • 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
      Throws:
      IOException
    • 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
      Throws:
      IOException
    • getResourceAsStream

      public InputStream getResourceAsStream(String name)
      Parameters:
      name - fully qualified resource name, e.g. java/lang/String.class
      Returns:
      InputStream supplying the resource, or null if no resource with that name.
    • getResource

      public URL getResource(String name)
      Parameters:
      name - fully qualified resource name, e.g. java/lang/String.class
      Returns:
      URL supplying the resource, or null if no resource with that name.
    • getResources

      public Enumeration getResources(String name)
      Parameters:
      name - fully qualified resource name, e.g. java/lang/String.class
      Returns:
      An Enumeration of URLs supplying the resource, or an empty Enumeration if no resource with that name.
    • 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
      Throws:
      IOException
    • 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
      Throws:
      IOException
    • 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
      Throws:
      IOException
    • getBytes

      public byte[] getBytes(String name) throws IOException
      Returns:
      byte array for class
      Throws:
      IOException
    • 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
      Throws:
      IOException
    • 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
      Throws:
      IOException