+ small fix to reflection util to avoid accessibility calls

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@1709 50f2f4bb-b051-0410-bef5-90022cba6387
This commit is contained in:
Costin Leau 2009-08-06 22:44:04 +00:00
parent c8a037ce93
commit 0066aa5ecd
1 changed files with 6 additions and 3 deletions

View File

@ -423,7 +423,8 @@ public abstract class ReflectionUtils {
* @see java.lang.reflect.Field#setAccessible * @see java.lang.reflect.Field#setAccessible
*/ */
public static void makeAccessible(Field field) { public static void makeAccessible(Field field) {
if (!Modifier.isPublic(field.getModifiers()) || !Modifier.isPublic(field.getDeclaringClass().getModifiers())) { if ((!Modifier.isPublic(field.getModifiers()) || !Modifier.isPublic(field.getDeclaringClass().getModifiers()))
&& !field.isAccessible()) {
field.setAccessible(true); field.setAccessible(true);
} }
} }
@ -438,7 +439,8 @@ public abstract class ReflectionUtils {
* @see java.lang.reflect.Method#setAccessible * @see java.lang.reflect.Method#setAccessible
*/ */
public static void makeAccessible(Method method) { public static void makeAccessible(Method method) {
if (!Modifier.isPublic(method.getModifiers()) || !Modifier.isPublic(method.getDeclaringClass().getModifiers())) { if ((!Modifier.isPublic(method.getModifiers()) || !Modifier.isPublic(method.getDeclaringClass().getModifiers()))
&& !method.isAccessible()) {
method.setAccessible(true); method.setAccessible(true);
} }
} }
@ -453,7 +455,8 @@ public abstract class ReflectionUtils {
* @see java.lang.reflect.Constructor#setAccessible * @see java.lang.reflect.Constructor#setAccessible
*/ */
public static void makeAccessible(Constructor<?> ctor) { public static void makeAccessible(Constructor<?> ctor) {
if (!Modifier.isPublic(ctor.getModifiers()) || !Modifier.isPublic(ctor.getDeclaringClass().getModifiers())) { if ((!Modifier.isPublic(ctor.getModifiers()) || !Modifier.isPublic(ctor.getDeclaringClass().getModifiers()))
&& !ctor.isAccessible()) {
ctor.setAccessible(true); ctor.setAccessible(true);
} }
} }