diff options
Diffstat (limited to 'org.aspectj.matcher/src')
-rw-r--r-- | org.aspectj.matcher/src/org/aspectj/weaver/reflect/ReflectionWorld.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/reflect/ReflectionWorld.java b/org.aspectj.matcher/src/org/aspectj/weaver/reflect/ReflectionWorld.java index d06db52d1..c784ff288 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/reflect/ReflectionWorld.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/reflect/ReflectionWorld.java @@ -43,6 +43,14 @@ public class ReflectionWorld extends World implements IReflectionWorld { private Map<String,Class<?>> inProgressResolutionClasses = new HashMap<String,Class<?>>(); public static ReflectionWorld getReflectionWorldFor(WeakClassLoaderReference classLoaderReference) { + + // Temporarily do as before. Although the cache makes things faster it needs a bit more thought because + // if the world has pointcutdesignators registered then someone may inadvertently register additional + // ones on reusing a world (when they would be expecting a clean world). We can't automatically + // clear them because we don't know when they are finished with. + return new ReflectionWorld(classLoaderReference); + + /* synchronized (rworlds) { // Tidyup any no longer relevant entries... for (Iterator<Map.Entry<WeakClassLoaderReference, ReflectionWorld>> it = rworlds.entrySet().iterator(); @@ -62,6 +70,7 @@ public class ReflectionWorld extends World implements IReflectionWorld { } return rworld; } + */ } public static void cleanUpWorlds() { |