[Mc4j-cvs] SF.net SVN: mc4j:[619] trunk/mc4j/modules/ems
Brought to you by:
ghinkl
From: <jma...@us...> - 2010-07-31 15:21:29
|
Revision: 619 http://mc4j.svn.sourceforge.net/mc4j/?rev=619&view=rev Author: jmazzitelli Date: 2010-07-31 15:21:22 +0000 (Sat, 31 Jul 2010) Log Message: ----------- this provides a public API that allows consumers of EMS to ask the ClassLoaderFactory to clear all its caches of jar files, temp files and classloaders. When consumers know they are finished with EMS, they can call this public API to help free up things within perm gen. this fix also nulls out login context within the JBoss connection provider to help the GC. Modified Paths: -------------- trunk/mc4j/modules/ems/build.xml trunk/mc4j/modules/ems/src/ems/org/mc4j/ems/connection/support/classloader/ClassLoaderFactory.java trunk/mc4j/modules/ems/src/ems-impl/org/mc4j/ems/impl/jmx/connection/support/providers/JBossConnectionProvider.java Modified: trunk/mc4j/modules/ems/build.xml =================================================================== --- trunk/mc4j/modules/ems/build.xml 2010-07-30 21:53:43 UTC (rev 618) +++ trunk/mc4j/modules/ems/build.xml 2010-07-31 15:21:22 UTC (rev 619) @@ -30,7 +30,7 @@ <property name="module.jar" value="org-mc4j-ems.jar"/> - <property name="release.version" value="1.2.12"/> + <property name="release.version" value="1.2.13"/> <target Modified: trunk/mc4j/modules/ems/src/ems/org/mc4j/ems/connection/support/classloader/ClassLoaderFactory.java =================================================================== --- trunk/mc4j/modules/ems/src/ems/org/mc4j/ems/connection/support/classloader/ClassLoaderFactory.java 2010-07-30 21:53:43 UTC (rev 618) +++ trunk/mc4j/modules/ems/src/ems/org/mc4j/ems/connection/support/classloader/ClassLoaderFactory.java 2010-07-31 15:21:22 UTC (rev 619) @@ -79,6 +79,16 @@ } /** + * Clears this factory's caches. You usually only call this when you need + * help cleaning out the classloaders created by this factory. + */ + public static void clearCaches() { + jarCache.clear(); + tempJarCache.clear(); + classLoaderCache.clear(); + } + + /** * TODO GH: Implement a special classloader that can load classes from * within a jar inside another jar or perhaps just ship the impl jar separately... */ Modified: trunk/mc4j/modules/ems/src/ems-impl/org/mc4j/ems/impl/jmx/connection/support/providers/JBossConnectionProvider.java =================================================================== --- trunk/mc4j/modules/ems/src/ems-impl/org/mc4j/ems/impl/jmx/connection/support/providers/JBossConnectionProvider.java 2010-07-30 21:53:43 UTC (rev 618) +++ trunk/mc4j/modules/ems/src/ems-impl/org/mc4j/ems/impl/jmx/connection/support/providers/JBossConnectionProvider.java 2010-07-31 15:21:22 UTC (rev 619) @@ -141,7 +141,7 @@ public void doDisconnect() { - + this.loginContext = null; } /* public Object getMEJB() { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |