You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by su...@apache.org on 2019/05/10 14:53:29 UTC
[groovy] 01/03: GROOVY-9112: Clean bad smell in
`GroovyClassLoader`(closes #926)
This is an automated email from the ASF dual-hosted git repository.
sunlan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git
commit 5e0cef8b89d4ebc5c4f0f2e3cdc394e555225cfa
Author: Daniel Sun <su...@apache.org>
AuthorDate: Fri May 10 21:52:42 2019 +0800
GROOVY-9112: Clean bad smell in `GroovyClassLoader`(closes #926)
---
src/main/groovy/groovy/lang/GroovyClassLoader.java | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/main/groovy/groovy/lang/GroovyClassLoader.java b/src/main/groovy/groovy/lang/GroovyClassLoader.java
index b270978..ac3b75f 100644
--- a/src/main/groovy/groovy/lang/GroovyClassLoader.java
+++ b/src/main/groovy/groovy/lang/GroovyClassLoader.java
@@ -93,13 +93,13 @@ public class GroovyClassLoader extends URLClassLoader {
/**
* this cache contains the loaded classes or PARSING, if the class is currently parsed
*/
- protected final Map<String, Class> classCache = new UnlimitedConcurrentCache<String, Class>();
+ protected final EvictableCache<String, Class> classCache = new UnlimitedConcurrentCache<String, Class>();
/**
* This cache contains mappings of file name to class. It is used
* to bypass compilation.
*/
- protected final Map<String, Class> sourceCache = new StampedCommonCache<String, Class>();
+ protected final StampedCommonCache<String, Class> sourceCache = new StampedCommonCache<String, Class>();
private final CompilerConfiguration config;
private String sourceEncoding;
@@ -322,7 +322,7 @@ public class GroovyClassLoader extends URLClassLoader {
// and avoid occupying Permanent Area/Metaspace repeatedly
String cacheKey = genSourceCacheKey(codeSource);
- return ((StampedCommonCache<String, Class>) sourceCache).getAndPut(
+ return sourceCache.getAndPut(
cacheKey,
new EvictableCache.ValueProvider<String, Class>() {
@Override
@@ -1157,7 +1157,7 @@ public class GroovyClassLoader extends URLClassLoader {
* @see #removeClassCacheEntry(String)
*/
public void clearCache() {
- Map<String, Class> clearedClasses = ((EvictableCache<String, Class>)classCache).clearAll();
+ Map<String, Class> clearedClasses = classCache.clearAll();
sourceCache.clear();