Package org.aspectj.apache.bcel.util
Class ClassLoaderRepository
java.lang.Object
org.aspectj.apache.bcel.util.ClassLoaderRepository
- All Implemented Interfaces:
Repository
The repository maintains information about which classes have been loaded.
It loads its data from the ClassLoader implementation passed into its constructor.
- Version:
- $Id: ClassLoaderRepository.java,v 1.13 2009/09/09 19:56:20 aclement Exp $
- Author:
- M. Dahm, David Dixon-Peugh
- See Also:
Repository
-
Nested Class Summary
-
Field Summary
-
Constructor Summary
ConstructorDescriptionClassLoaderRepository(ClassLoader loader)
ClassLoaderRepository(ClassLoaderReference loaderRef)
-
Method Summary
Modifier and TypeMethodDescriptionvoid
clear()
Clear all entries from the local cacheFind an already defined JavaClass in the local cache.Find the JavaClass instance for the given run-time class objectLookup a JavaClass object from the Class Name provided.void
removeClass(JavaClass clazz)
Remove class from repositoryreport()
Produce a report on cache usage.long[]
Returns an array of the stats, for testing, the order is fixed: 0=time spent loading (static) 1=time spent manipulating URLs (static) 2=classes loaded (static) 3=cache hits shared (static) 4=misses in shared due to eviction (static) 5=cache hits local 6=misses in local due to eviction 7=shared cache sizevoid
reset()
Reset statistics and clear all cachesvoid
storeClass(JavaClass clazz)
Store a new JavaClass into this Repository.
-
Field Details
-
Constructor Details
-
ClassLoaderRepository
-
ClassLoaderRepository
-
-
Method Details
-
storeClass
Store a new JavaClass into this Repository.- Specified by:
storeClass
in interfaceRepository
-
removeClass
Remove class from repository- Specified by:
removeClass
in interfaceRepository
-
findClass
Find an already defined JavaClass in the local cache.- Specified by:
findClass
in interfaceRepository
-
loadClass
Lookup a JavaClass object from the Class Name provided.- Specified by:
loadClass
in interfaceRepository
- Throws:
ClassNotFoundException
-
report
Produce a report on cache usage. -
reportStats
public long[] reportStats()Returns an array of the stats, for testing, the order is fixed: 0=time spent loading (static) 1=time spent manipulating URLs (static) 2=classes loaded (static) 3=cache hits shared (static) 4=misses in shared due to eviction (static) 5=cache hits local 6=misses in local due to eviction 7=shared cache size -
reset
public void reset()Reset statistics and clear all caches -
loadClass
Description copied from interface:Repository
Find the JavaClass instance for the given run-time class object- Specified by:
loadClass
in interfaceRepository
- Throws:
ClassNotFoundException
-
clear
public void clear()Clear all entries from the local cache- Specified by:
clear
in interfaceRepository
-