public class DefaultCacheKeyResolver extends java.lang.Object implements CacheKeyResolver
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
GENERATED_SUFFIX |
static java.lang.String |
WEAVED_SUFFIX |
Constructor and Description |
---|
DefaultCacheKeyResolver() |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
createClassLoaderScope(java.lang.ClassLoader cl,
java.util.List<java.lang.String> aspects)
Create a scope from a set of urls and aspect urls.
|
CachedClassReference |
generatedKey(java.lang.String className)
Create a key for the given className from a class generated by
the weaver such that:
|
java.lang.String |
getGeneratedRegex()
Return a regex which matches all generated keys
|
java.lang.String |
getWeavedRegex()
Return a regex which matches all weaved keys;
|
java.lang.String |
keyToClass(java.lang.String key)
Converts a cache key back to a className
|
CachedClassReference |
weavedKey(java.lang.String className,
byte[] original_bytes)
Create a key for the given class name and byte array from the pre-weaved
class such that
|
public static final java.lang.String GENERATED_SUFFIX
public static final java.lang.String WEAVED_SUFFIX
public java.lang.String createClassLoaderScope(java.lang.ClassLoader cl, java.util.List<java.lang.String> aspects)
createClassLoaderScope
in interface CacheKeyResolver
cl
- the classloader which uses the cache, can be nullaspects
- the aspectspublic java.lang.String getGeneratedRegex()
CacheKeyResolver
getGeneratedRegex
in interface CacheKeyResolver
public java.lang.String getWeavedRegex()
CacheKeyResolver
getWeavedRegex
in interface CacheKeyResolver
public java.lang.String keyToClass(java.lang.String key)
keyToClass
in interface CacheKeyResolver
key
- to convertpublic CachedClassReference weavedKey(java.lang.String className, byte[] original_bytes)
CacheKeyResolver
className == keyToClass(weavedKey(className, various_bytes)) holds and weavedKey(className, various_bytes).matches(getWeavedRegex()) == true
weavedKey
in interface CacheKeyResolver
className
- class to create a key fororiginal_bytes
- bytes of the pre-weaved classpublic CachedClassReference generatedKey(java.lang.String className)
CacheKeyResolver
className == keyToClass(generatedKey(className)) holds and generatedKey(className).matches(getGeneratedRegex()) == true
generatedKey
in interface CacheKeyResolver
className
- class to create a key for