You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2012/05/01 13:01:54 UTC

svn commit: r1332616 - /tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/java/impl/ClassLoaderModelResolver.java

Author: antelder
Date: Tue May  1 11:01:53 2012
New Revision: 1332616

URL: http://svn.apache.org/viewvc?rev=1332616&view=rev
Log:
TUSCANY-4034: Add a way to null out the fields in a ClassLoaderModelResolver

Modified:
    tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/java/impl/ClassLoaderModelResolver.java

Modified: tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/java/impl/ClassLoaderModelResolver.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/java/impl/ClassLoaderModelResolver.java?rev=1332616&r1=1332615&r2=1332616&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/java/impl/ClassLoaderModelResolver.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/java/impl/ClassLoaderModelResolver.java Tue May  1 11:01:53 2012
@@ -21,6 +21,7 @@ package org.apache.tuscany.sca.contribut
 
 import java.io.IOException;
 import java.lang.ref.WeakReference;
+import java.lang.reflect.Field;
 import java.net.URL;
 import java.net.URLClassLoader;
 import java.util.ArrayList;
@@ -29,6 +30,7 @@ import java.util.Enumeration;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Vector;
 
 import org.apache.tuscany.sca.contribution.Contribution;
 import org.apache.tuscany.sca.contribution.Import;
@@ -123,6 +125,8 @@ public class ClassLoaderModelResolver ex
 
         } catch (ClassNotFoundException e) {
             return unresolved;
+        } finally {
+            contributionContainingClass = null;
         }
     }
 
@@ -178,5 +182,12 @@ public class ClassLoaderModelResolver ex
         Class<?> clazz = super.findClass(name);
         return clazz;
     }
+    
+    public void clear() {
+    	contribution = null;
+    	contributionContainingClass = null;
+    	context = null;
+    	importResolvers = null;
+    }
 
 }