[jboss-cvs] JBossAS SVN: r86442 - projects/spring-int/trunk/weaving/src/main/java/org/jboss/instrument/classloading.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sat Mar 28 14:38:15 EDT 2009


Author: alesj
Date: 2009-03-28 14:38:15 -0400 (Sat, 28 Mar 2009)
New Revision: 86442

Modified:
   projects/spring-int/trunk/weaving/src/main/java/org/jboss/instrument/classloading/JBoss5ClassLoader.java
Log:
Set accessible to true.

Modified: projects/spring-int/trunk/weaving/src/main/java/org/jboss/instrument/classloading/JBoss5ClassLoader.java
===================================================================
--- projects/spring-int/trunk/weaving/src/main/java/org/jboss/instrument/classloading/JBoss5ClassLoader.java	2009-03-28 18:00:39 UTC (rev 86441)
+++ projects/spring-int/trunk/weaving/src/main/java/org/jboss/instrument/classloading/JBoss5ClassLoader.java	2009-03-28 18:38:15 UTC (rev 86442)
@@ -58,20 +58,20 @@
 
       try
       {
-         Method getPolicy = BaseClassLoader.class.getDeclaredMethod("getPolicy");
+         Method getPolicy = getMethod(BaseClassLoader.class, "getPolicy");
          policy = (ClassLoaderPolicy)getPolicy.invoke(classLoader);
          try
          {
             // let's check if we have a patched policy, with translator per policy
-            setTranslator = BaseClassLoaderPolicy.class.getDeclaredMethod("setTranslator");
+            setTranslator = getMethod(BaseClassLoaderPolicy.class, "setTranslator");
          }
          catch (Exception ignored)
          {
             log.info("Policy doesn't have setTranslator, falling back to ClassLoaderSystem.");
 
-            Method getClassLoaderDomain = BaseClassLoaderPolicy.class.getDeclaredMethod("getClassLoaderDomain");
+            Method getClassLoaderDomain = getMethod(BaseClassLoaderPolicy.class, "getClassLoaderDomain");
             BaseClassLoaderDomain domain = (BaseClassLoaderDomain)getClassLoaderDomain.invoke(policy);
-            Method getClassLoaderSystem = BaseClassLoaderDomain.class.getDeclaredMethod("getClassLoaderSystem");
+            Method getClassLoaderSystem = getMethod(BaseClassLoaderDomain.class, "getClassLoaderSystem");
             BaseClassLoaderSystem system = (BaseClassLoaderSystem)getClassLoaderSystem.invoke(domain);
             if (system instanceof ClassLoaderSystem)
             {
@@ -89,6 +89,21 @@
       }
    }
 
+   /**
+    * Get method from class.
+    *
+    * @param clazz the owner class
+    * @param name the method name
+    * @return declared method
+    * @throws Exception for any error
+    */
+   private Method getMethod(Class<?> clazz, String name) throws Exception
+   {
+      Method method = clazz.getDeclaredMethod(name);
+      method.setAccessible(true);
+      return method;
+   }
+
    public void addTransformer(ClassFileTransformer transformer)
    {
       Assert.notNull(transformer, "ClassFileTransformer must not be null");




More information about the jboss-cvs-commits mailing list