Author: awhite
Date: Thu Feb  1 08:40:26 2007
New Revision: 502277

URL: http://svn.apache.org/viewvc?view=rev&rev=502277
Log:
Clear bytecode Project of ProxyManagerImpl to save memory.


Modified:
    
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/ApplicationIdTool.java
    
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/PCEnhancer.java
    
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/InterfaceImplGenerator.java
    
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/util/ProxyManagerImpl.java

Modified: 
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/ApplicationIdTool.java
URL: 
http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/ApplicationIdTool.java?view=diff&rev=502277&r1=502276&r2=502277
==============================================================================
--- 
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/ApplicationIdTool.java
 (original)
+++ 
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/ApplicationIdTool.java
 Thu Feb  1 08:40:26 2007
@@ -1380,6 +1380,7 @@
             } else
                 log.info(_loc.get("appid-norun"));
         }
+        bc.getProject().clear();
         return true;
     }
 

Modified: 
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/PCEnhancer.java
URL: 
http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/PCEnhancer.java?view=diff&rev=502277&r1=502276&r2=502277
==============================================================================
--- 
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/PCEnhancer.java
 (original)
+++ 
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/PCEnhancer.java
 Thu Feb  1 08:40:26 2007
@@ -3517,7 +3517,6 @@
         return meta.getDescribedType();
     }
 
-
     /**
      * Move code-related attributes from one method to another.
      */

Modified: 
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/InterfaceImplGenerator.java
URL: 
http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/InterfaceImplGenerator.java?view=diff&rev=502277&r1=502276&r2=502277
==============================================================================
--- 
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/InterfaceImplGenerator.java
 (original)
+++ 
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/InterfaceImplGenerator.java
 Thu Feb  1 08:40:26 2007
@@ -22,7 +22,6 @@
 import java.util.Map;
 import java.util.WeakHashMap;
 
-
 import org.apache.commons.lang.StringUtils;
 import org.apache.openjpa.enhance.PCEnhancer;
 import org.apache.openjpa.util.InternalException;
@@ -34,7 +33,6 @@
 import serp.bytecode.Code;
 import serp.bytecode.Constants;
 import serp.bytecode.Project;
-
 
 /**
  * Creates implementations of managed interfaces.  Will throw exceptions

Modified: 
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/util/ProxyManagerImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/util/ProxyManagerImpl.java?view=diff&rev=502277&r1=502276&r2=502277
==============================================================================
--- 
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/util/ProxyManagerImpl.java
 (original)
+++ 
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/util/ProxyManagerImpl.java
 Thu Feb  1 08:40:26 2007
@@ -473,7 +473,9 @@
     private Class loadProxy(BCClass bc, ClassLoader loader) {
         BCClassLoader bcloader = new BCClassLoader(bc.getProject(), loader);
         try {
-            return Class.forName(bc.getName(), true, bcloader);
+            Class c = Class.forName(bc.getName(), true, bcloader);
+            bc.getProject().clear();
+            return c;
         } catch (Throwable t) {
             throw new GeneralException(bc.getName()).setCause(t);
         }


Reply via email to