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/11/30 16:00:36 UTC

[commons-configuration] branch master updated: Use Map API

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


The following commit(s) were added to refs/heads/master by this push:
     new b5af32c2 Use Map API
b5af32c2 is described below

commit b5af32c2f0f7d346c0ffe665e105b5c0e8e8466b
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Wed Nov 30 11:00:31 2022 -0500

    Use Map API
    
    Only lookup key once in a map
---
 .../apache/commons/configuration2/beanutils/XMLBeanDeclaration.java | 4 ++--
 .../commons/configuration2/builder/combined/MultiWrapDynaBean.java  | 4 +---
 .../java/org/apache/commons/configuration2/tree/MergeCombiner.java  | 6 +-----
 3 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/src/main/java/org/apache/commons/configuration2/beanutils/XMLBeanDeclaration.java b/src/main/java/org/apache/commons/configuration2/beanutils/XMLBeanDeclaration.java
index 003fba6c..2f8a93d7 100644
--- a/src/main/java/org/apache/commons/configuration2/beanutils/XMLBeanDeclaration.java
+++ b/src/main/java/org/apache/commons/configuration2/beanutils/XMLBeanDeclaration.java
@@ -308,8 +308,8 @@ public class XMLBeanDeclaration implements BeanDeclaration {
         final Map<String, Object> nested = new HashMap<>();
         getNode().getChildren().forEach(child -> {
             if (!isReservedChildName(child.nodeName())) {
-                if (nested.containsKey(child.nodeName())) {
-                    final Object obj = nested.get(child.nodeName());
+                final Object obj = nested.get(child.nodeName());
+                if (obj != null) {
                     final List<BeanDeclaration> list;
                     if (obj instanceof List) {
                         // Safe because we created the lists ourselves.
diff --git a/src/main/java/org/apache/commons/configuration2/builder/combined/MultiWrapDynaBean.java b/src/main/java/org/apache/commons/configuration2/builder/combined/MultiWrapDynaBean.java
index b0ee9653..2abf8004 100644
--- a/src/main/java/org/apache/commons/configuration2/builder/combined/MultiWrapDynaBean.java
+++ b/src/main/java/org/apache/commons/configuration2/builder/combined/MultiWrapDynaBean.java
@@ -62,9 +62,7 @@ class MultiWrapDynaBean implements DynaBean {
             final DynaClass beanClass = dynaBean.getDynaClass();
             for (final DynaProperty prop : beanClass.getDynaProperties()) {
                 // ensure an order of properties
-                if (!propsToBeans.containsKey(prop.getName())) {
-                    propsToBeans.put(prop.getName(), dynaBean);
-                }
+                propsToBeans.putIfAbsent(prop.getName(), dynaBean);
             }
             beanClasses.add(beanClass);
         });
diff --git a/src/main/java/org/apache/commons/configuration2/tree/MergeCombiner.java b/src/main/java/org/apache/commons/configuration2/tree/MergeCombiner.java
index 345a2c2e..f55069a9 100644
--- a/src/main/java/org/apache/commons/configuration2/tree/MergeCombiner.java
+++ b/src/main/java/org/apache/commons/configuration2/tree/MergeCombiner.java
@@ -83,11 +83,7 @@ public class MergeCombiner extends NodeCombiner {
      */
     protected void addAttributes(final ImmutableNode.Builder result, final ImmutableNode node1, final ImmutableNode node2) {
         final Map<String, Object> attributes = new HashMap<>(node1.getAttributes());
-        node2.getAttributes().forEach((k, v) -> {
-            if (!attributes.containsKey(k)) {
-                attributes.put(k, v);
-            }
-        });
+        node2.getAttributes().forEach(attributes::putIfAbsent);
         result.addAttributes(attributes);
     }