Author: struberg
Date: Wed Jul 21 16:18:06 2010
New Revision: 966296
URL: http://svn.apache.org/viewvc?rev=966296&view=rev
Log:
OWB-413 cache methods of java.lang.Object
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/ClassUtil.java
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/ClassUtil.java
URL:
http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/ClassUtil.java?rev=966296&r1=966295&r2=966296&view=diff
==============================================================================
---
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/ClassUtil.java
(original)
+++
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/ClassUtil.java
Wed Jul 21 16:18:06 2010
@@ -563,17 +563,25 @@ public final class ClassUtil
public static List<String> getObjectMethodNames()
{
- List<String> list = new ArrayList<String>();
- Class<?> clazz = Object.class;
-
- Method[] methods = SecurityUtil.doPrivilegedGetDeclaredMethods(clazz);
- for (Method method : methods)
+ if (objectMethodNames == null)
{
- list.add(method.getName());
+ // not much syncronisation needed...
+ List<String> list = new ArrayList<String>();
+ Class<?> clazz = Object.class;
+
+ Method[] methods =
SecurityUtil.doPrivilegedGetDeclaredMethods(clazz);
+ for (Method method : methods)
+ {
+ list.add(method.getName());
+ }
+ objectMethodNames = list;
}
- return list;
+ return objectMethodNames;
}
+ private static List objectMethodNames= null;
+
+
public static boolean isObjectMethod(String methodName)
{