public class LruCacheClassPathRepository extends Object
JavaClass
with maximum size cacheSize
.
This repository supports a class path consisting of too many JAR files to handle in ClassPathRepository
or
MemorySensitiveClassPathRepository
without causing OutOfMemoryError
.
Constructor and Description |
---|
LruCacheClassPathRepository(ClassPath path,
int cacheSize) |
Modifier and Type | Method and Description |
---|---|
void |
clear()
Clears all entries from cache.
|
JavaClass |
findClass(String className)
Finds the class with the name provided, if the class isn't there, return NULL.
|
ClassPath |
getClassPath()
Gets the ClassPath associated with this Repository
|
JavaClass |
loadClass(Class<?> clazz)
Finds the JavaClass object for a runtime Class object.
|
JavaClass |
loadClass(String className)
Finds a JavaClass object by name.
|
void |
removeClass(JavaClass javaClass)
Removes class from repository
|
void |
storeClass(JavaClass javaClass)
Stores the provided class under "clazz.getClassName()"
|
public LruCacheClassPathRepository(ClassPath path, int cacheSize)
public JavaClass findClass(String className)
Repository
findClass
in interface Repository
public void storeClass(JavaClass javaClass)
Repository
storeClass
in interface Repository
public void removeClass(JavaClass javaClass)
Repository
removeClass
in interface Repository
public void clear()
Repository
clear
in interface Repository
public JavaClass loadClass(String className) throws ClassNotFoundException
loadClass
in interface Repository
className
- the name of the classClassNotFoundException
- if the class is not in the Repository, and could not be found on the classpathpublic JavaClass loadClass(Class<?> clazz) throws ClassNotFoundException
loadClass
in interface Repository
clazz
- the runtime Class objectClassNotFoundException
- if the class is not in the Repository, and its representation could not be foundClass
public ClassPath getClassPath()
Repository
getClassPath
in interface Repository
Copyright © 2004–2019 The Apache Software Foundation. All rights reserved.