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 2022/04/22 00:35:15 UTC

[commons-beanutils] 02/02: Fix SpotBugs error.

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-beanutils.git

commit 3c686324bc12cf5ebac836ece7b495b2e176fd48
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Thu Apr 21 20:35:07 2022 -0400

    Fix SpotBugs error.
    
    [ERROR] Medium:
    org.apache.commons.beanutils2.WrapDynaClass.getDynaProperties() may
    expose internal representation by returning WrapDynaClass.properties
    [org.apache.commons.beanutils2.WrapDynaClass] At
    WrapDynaClass.java:[line 172] EI_EXPOSE_REP
---
 src/changes/changes.xml                                        | 3 +++
 src/main/java/org/apache/commons/beanutils2/WrapDynaClass.java | 7 ++-----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index c2a534ad..43c25a6f 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -104,6 +104,9 @@
       <action dev="ggregory" type="fix" due-to="Gary Gregory">
         Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.converters.DateTimeConverter.getPatterns() may expose internal representation by returning DateTimeConverter.patterns [org.apache.commons.beanutils2.converters.DateTimeConverter] At DateTimeConverter.java:[line 189] EI_EXPOSE_REP.
       </action>
+      <action dev="ggregory" type="fix" due-to="Gary Gregory">
+        Fix SpotBugs [ERROR] Medium: org.apache.commons.beanutils2.WrapDynaClass.getDynaProperties() may expose internal representation by returning WrapDynaClass.properties [org.apache.commons.beanutils2.WrapDynaClass] At WrapDynaClass.java:[line 172] EI_EXPOSE_REP.
+      </action>
       <!--  UPDATES -->
       <action dev="ggregory" type="update" due-to="Dependabot, Gary Gregory">
         Bump actions/cache from 2 to 3.0.2 #77, #89, #103, #111.
diff --git a/src/main/java/org/apache/commons/beanutils2/WrapDynaClass.java b/src/main/java/org/apache/commons/beanutils2/WrapDynaClass.java
index d08ac38e..877c4b86 100644
--- a/src/main/java/org/apache/commons/beanutils2/WrapDynaClass.java
+++ b/src/main/java/org/apache/commons/beanutils2/WrapDynaClass.java
@@ -52,10 +52,9 @@ public class WrapDynaClass implements DynaClass {
      * @param propUtils the {@code PropertyUtilsBean} associated with this class
      */
     private WrapDynaClass(final Class<?> beanClass, final PropertyUtilsBean propUtils) {
-
         this.beanClassRef = new SoftReference<>(beanClass);
         this.beanClassName = beanClass.getName();
-        propertyUtilsBean = propUtils;
+        this.propertyUtilsBean = propUtils;
         introspect();
     }
 
@@ -168,9 +167,7 @@ public class WrapDynaClass implements DynaClass {
      */
     @Override
     public DynaProperty[] getDynaProperties() {
-
-        return properties;
-
+        return properties.clone();
     }
 
     /**