You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2021/11/15 19:21:25 UTC
[commons-lang] 03/03: Internal refactoring.
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git
commit 38533393ba9922cd2c98fb7fafcd4f9b108f978c
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Mon Nov 15 14:21:18 2021 -0500
Internal refactoring.
---
.../org/apache/commons/lang3/reflect/FieldUtils.java | 2 +-
.../org/apache/commons/lang3/reflect/MemberUtils.java | 19 ++++++++++++++-----
2 files changed, 15 insertions(+), 6 deletions(-)
diff --git a/src/main/java/org/apache/commons/lang3/reflect/FieldUtils.java b/src/main/java/org/apache/commons/lang3/reflect/FieldUtils.java
index f2900a2..205f4af 100644
--- a/src/main/java/org/apache/commons/lang3/reflect/FieldUtils.java
+++ b/src/main/java/org/apache/commons/lang3/reflect/FieldUtils.java
@@ -107,7 +107,7 @@ public class FieldUtils {
final Field field = acls.getDeclaredField(fieldName);
// getDeclaredField checks for non-public scopes as well
// and it returns accurate results
- if (!Modifier.isPublic(field.getModifiers())) {
+ if (!MemberUtils.isPublic(field)) {
if (!forceAccess) {
continue;
}
diff --git a/src/main/java/org/apache/commons/lang3/reflect/MemberUtils.java b/src/main/java/org/apache/commons/lang3/reflect/MemberUtils.java
index 703df26..7f72f58 100644
--- a/src/main/java/org/apache/commons/lang3/reflect/MemberUtils.java
+++ b/src/main/java/org/apache/commons/lang3/reflect/MemberUtils.java
@@ -30,7 +30,7 @@ import org.apache.commons.lang3.ClassUtils;
*
* @since 2.5
*/
-abstract class MemberUtils {
+final class MemberUtils {
// TODO extract an interface to implement compareParameterSets(...)?
private static final int ACCESS_TEST = Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE;
@@ -57,7 +57,7 @@ abstract class MemberUtils {
return false;
}
final Member m = (Member) obj;
- if (!obj.isAccessible() && Modifier.isPublic(m.getModifiers()) && isPackageAccess(m.getDeclaringClass().getModifiers())) {
+ if (!obj.isAccessible() && isPublic(m) && isPackageAccess(m.getDeclaringClass().getModifiers())) {
try {
obj.setAccessible(true);
return true;
@@ -78,8 +78,17 @@ abstract class MemberUtils {
}
/**
+ * Tests whether a {@link Member} is public.
+ * @param member Member to test
+ * @return {@code true} if {@code m} is public
+ */
+ static boolean isPublic(final Member member) {
+ return member != null && Modifier.isPublic(member.getModifiers());
+ }
+
+ /**
* Tests whether a {@link Member} is static.
- * @param member Member to check
+ * @param member Member to test
* @return {@code true} if {@code m} is static
*/
static boolean isStatic(final Member member) {
@@ -88,11 +97,11 @@ abstract class MemberUtils {
/**
* Tests whether a {@link Member} is accessible.
- * @param member Member to check
+ * @param member Member to test
* @return {@code true} if {@code m} is accessible
*/
static boolean isAccessible(final Member member) {
- return member != null && Modifier.isPublic(member.getModifiers()) && !member.isSynthetic();
+ return member != null && isPublic(member) && !member.isSynthetic();
}
/**