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(); } /**
