This is an automated email from the ASF dual-hosted git repository.

garydgregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git

commit 285cd2fc42a16de63f1ea518cfd7ea1851563c46
Author: Gary Gregory <[email protected]>
AuthorDate: Thu Jul 30 08:19:01 2026 -0400

    Simplify AbstractReflection.setAccessible(boolean, AccessibleObject)
    
    - Simplify AbstractReflection.setAccessibleTrue(AccessibleObject)
---
 .../commons/lang3/builder/AbstractReflection.java  | 39 +++++++++-------------
 1 file changed, 16 insertions(+), 23 deletions(-)

diff --git 
a/src/main/java/org/apache/commons/lang3/builder/AbstractReflection.java 
b/src/main/java/org/apache/commons/lang3/builder/AbstractReflection.java
index e422d56bf..3d6fd53b7 100644
--- a/src/main/java/org/apache/commons/lang3/builder/AbstractReflection.java
+++ b/src/main/java/org/apache/commons/lang3/builder/AbstractReflection.java
@@ -125,46 +125,39 @@ static void register(final Object lhs, final Object rhs, 
final Set<Pair<IDKey, I
     }
 
     /**
-     * If {@code forceAccessible} is true, makes {@code accessibleObject} 
accessible by calling
-     * {@link AccessibleObject#setAccessible(boolean) 
AccessibleObject#setAccessible(true)} but <em>only</em> if it is not already 
accessible.
+     * If {@code forceAccessible} is true, makes {@code accessibleObject} 
accessible by calling {@link AccessibleObject#setAccessible(boolean)
+     * AccessibleObject#setAccessible(true)} but <em>only</em> if it is not 
already accessible.
      *
-     * @param forceAccessible Whether to call {@link 
AccessibleObject#setAccessible(boolean)} if the object is not already 
accessible.
+     * @param forceAccessible  Whether to call {@link 
AccessibleObject#setAccessible(boolean)} if the object is not already 
accessible.
      * @param accessibleObject The accessible object to set; may be {@code 
null}.
-     * @return {@code true} if {@code accessibleObject} is non-null and 
accessible after this call; {@code false} otherwise
-     *         (including when {@code accessibleObject} is {@code null}, or 
when it is inaccessible and {@code forceAccessible} is {@code false}).
+     * @return {@code true} if {@code accessibleObject} is non-null and 
accessible after this call; {@code false} otherwise (including when
+     *         {@code accessibleObject} is {@code null}, or when it is 
inaccessible and {@code forceAccessible} is {@code false}).
      * @throws SecurityException Thrown if {@code forceAccessible} is true and 
the request is denied.
      * @see AccessibleObject#setAccessible(boolean)
      * @see SecurityManager#checkPermission
      */
     public static boolean setAccessible(final boolean forceAccessible, final 
AccessibleObject accessibleObject) {
-        if (accessibleObject == null) {
-            return false;
-        }
-        if (accessibleObject.isAccessible()) {
-            return true;
-        }
-        return forceAccessible && setAccessibleTrue(accessibleObject);
+        return accessibleObject != null && (accessibleObject.isAccessible() || 
forceAccessible && setAccessibleTrue(accessibleObject));
     }
 
     /**
-     * Sets the accessible object as accessible by calling {@link 
AccessibleObject#setAccessible(boolean) AccessibleObject#setAccessible(true)} 
but
-     * <em>only</em> if it is not already accessible.
+     * Sets the accessible object as accessible by calling {@link 
AccessibleObject#setAccessible(boolean) AccessibleObject#setAccessible(true)}.
+     * <p>
+     * Callers must ensure {@code accessibleObject} is non-null before calling 
this method.
+     * </p>
      *
-     * @param accessibleObject The accessible object to set, may be {@code 
null}.
-     * @return {@code true} if {@code accessibleObject} is non-null and 
accessible after this call; {@code false} otherwise.
+     * @param accessibleObject The accessible object to set; must be non-null.
+     * @return {@code true} if {@code accessibleObject} is accessible after 
this call; {@code false} otherwise.
      * @throws SecurityException Thrown if the request is denied.
      * @see AccessibleObject#setAccessible(boolean)
      * @see SecurityManager#checkPermission
      */
     private static boolean setAccessibleTrue(final AccessibleObject 
accessibleObject) {
-        if (accessibleObject != null) {
-            // Test isAccessible() to avoid the permission check.
-            if (!accessibleObject.isAccessible()) {
-                accessibleObject.setAccessible(true);
-            }
-            return accessibleObject.isAccessible();
+        // Test isAccessible() to avoid the permission check.
+        if (!accessibleObject.isAccessible()) {
+            accessibleObject.setAccessible(true);
         }
-        return false;
+        return accessibleObject.isAccessible();
     }
 
     /**

Reply via email to