Class Repository

java.lang.Object
org.aspectj.apache.bcel.Repository

public abstract class Repository extends Object
The repository maintains informations about class interdependencies, e.g., whether a class is a sub-class of another. Delegates actual class loading to SyntheticRepository with current class path by default.
Version:
$Id: Repository.java,v 1.6 2009/09/09 22:18:20 aclement Exp $
Author:
M. Dahm
See Also:
Repository, SyntheticRepository
  • Constructor Details

    • Repository

      public Repository()
  • Method Details

    • getRepository

      public static Repository getRepository()
      Returns:
      currently used repository instance
    • setRepository

      public static void setRepository(Repository rep)
      Set repository instance to be used for class loading
    • lookupClass

      public static JavaClass lookupClass(String class_name)
      Lookup class somewhere found on your CLASSPATH, or whereever the repository instance looks for it.
      Returns:
      class object for given fully qualified class name, or null if the class could not be found or parsed correctly
    • lookupClassFile

      public static ClassPath.ClassFile lookupClassFile(String class_name)
      Returns:
      class file object for given Java class.
    • clearCache

      public static void clearCache()
      Clear the repository.
    • addClass

      public static JavaClass addClass(JavaClass clazz)
      Add clazz to repository if there isn't an equally named class already in there.
      Returns:
      old entry in repository
    • removeClass

      public static void removeClass(String clazz)
      Remove class with given (fully qualified) name from repository.
    • instanceOf

      public static boolean instanceOf(JavaClass clazz, JavaClass super_class)
      Equivalent to runtime "instanceof" operator.
      Returns:
      true, if clazz is an instance of super_class
    • instanceOf

      public static boolean instanceOf(String clazz, String super_class)
      Returns:
      true, if clazz is an instance of super_class
    • implementationOf

      public static boolean implementationOf(JavaClass clazz, JavaClass inter)
      Returns:
      true, if clazz is an implementation of interface inter
    • implementationOf

      public static boolean implementationOf(String clazz, String inter)
      Returns:
      true, if clazz is an implementation of interface inter