You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ga...@apache.org on 2006/03/16 23:22:54 UTC
svn commit: r386474 - in /webservices/axis/trunk/java/src/org/apache/axis:
AxisProperties.java description/TypeDesc.java utils/JavaUtils.java
utils/cache/JavaClass.java utils/cache/MethodCache.java
Author: gawor
Date: Thu Mar 16 14:22:52 2006
New Revision: 386474
URL: http://svn.apache.org/viewcvs?rev=386474&view=rev
Log:
method to explicitely clear caches
Modified:
webservices/axis/trunk/java/src/org/apache/axis/AxisProperties.java
webservices/axis/trunk/java/src/org/apache/axis/description/TypeDesc.java
webservices/axis/trunk/java/src/org/apache/axis/utils/JavaUtils.java
webservices/axis/trunk/java/src/org/apache/axis/utils/cache/JavaClass.java
webservices/axis/trunk/java/src/org/apache/axis/utils/cache/MethodCache.java
Modified: webservices/axis/trunk/java/src/org/apache/axis/AxisProperties.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/src/org/apache/axis/AxisProperties.java?rev=386474&r1=386473&r2=386474&view=diff
==============================================================================
--- webservices/axis/trunk/java/src/org/apache/axis/AxisProperties.java (original)
+++ webservices/axis/trunk/java/src/org/apache/axis/AxisProperties.java Thu Mar 16 14:22:52 2006
@@ -135,6 +135,11 @@
return altNameDiscoverer;
}
+ public static synchronized void reset() {
+ loaders = null;
+ nameDiscoverer = null;
+ }
+
/**
* Create a new instance of a service provider class.
*
Modified: webservices/axis/trunk/java/src/org/apache/axis/description/TypeDesc.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/src/org/apache/axis/description/TypeDesc.java?rev=386474&r1=386473&r2=386474&view=diff
==============================================================================
--- webservices/axis/trunk/java/src/org/apache/axis/description/TypeDesc.java (original)
+++ webservices/axis/trunk/java/src/org/apache/axis/description/TypeDesc.java Thu Mar 16 14:22:52 2006
@@ -134,6 +134,14 @@
return result;
}
+ /**
+ * Clears the TypeDesc cache.
+ */
+ public static void clearCache()
+ {
+ classMap.clear();
+ }
+
/** WeakReference to the Java class for this type */
private WeakReference javaClassRef = null;
Modified: webservices/axis/trunk/java/src/org/apache/axis/utils/JavaUtils.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/src/org/apache/axis/utils/JavaUtils.java?rev=386474&r1=386473&r2=386474&view=diff
==============================================================================
--- webservices/axis/trunk/java/src/org/apache/axis/utils/JavaUtils.java (original)
+++ webservices/axis/trunk/java/src/org/apache/axis/utils/JavaUtils.java Thu Mar 16 14:22:52 2006
@@ -1067,7 +1067,16 @@
}
return b.booleanValue();
}
-
+
+ /**
+ * Explicitely clear enum lookup cache.
+ */
+ public static void clearEnumCache() {
+ synchronized (enumMap) {
+ enumMap.clear();
+ }
+ }
+
private static boolean isEnumClassSub(Class cls) {
try {
java.lang.reflect.Method[] methods = cls.getMethods();
Modified: webservices/axis/trunk/java/src/org/apache/axis/utils/cache/JavaClass.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/src/org/apache/axis/utils/cache/JavaClass.java?rev=386474&r1=386473&r2=386474&view=diff
==============================================================================
--- webservices/axis/trunk/java/src/org/apache/axis/utils/cache/JavaClass.java (original)
+++ webservices/axis/trunk/java/src/org/apache/axis/utils/cache/JavaClass.java Thu Mar 16 14:22:52 2006
@@ -48,6 +48,13 @@
}
/**
+ * Clears the class cache.
+ */
+ public static synchronized void clearCache() {
+ classes.clear();
+ }
+
+ /**
* Create a cache entry for this java.lang.Class
*/
public JavaClass(Class jc) {
Modified: webservices/axis/trunk/java/src/org/apache/axis/utils/cache/MethodCache.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/src/org/apache/axis/utils/cache/MethodCache.java?rev=386474&r1=386473&r2=386474&view=diff
==============================================================================
--- webservices/axis/trunk/java/src/org/apache/axis/utils/cache/MethodCache.java (original)
+++ webservices/axis/trunk/java/src/org/apache/axis/utils/cache/MethodCache.java Thu Mar 16 14:22:52 2006
@@ -75,6 +75,16 @@
}
/**
+ * Clears the method cache.
+ */
+ public void clearCache() {
+ Map map = (Map) cache.get();
+ if (map != null) {
+ map.clear();
+ }
+ }
+
+ /**
* Class used as the key for the method cache table.
*
*/