X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Fentityownership%2FEntityOwnershipStatistics.java;h=b09356dcc1c20c0964b222c8265fef3cc8360285;hb=3859df9beca8f13f1ff2b2744ed3470a1715bec3;hp=a96bbe355669ee9c060067b3cb97ec8e07eda0c9;hpb=20a32e6459fd1e27e7669bf1ebc7742b96787b94;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/entityownership/EntityOwnershipStatistics.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/entityownership/EntityOwnershipStatistics.java index a96bbe3556..b09356dcc1 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/entityownership/EntityOwnershipStatistics.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/entityownership/EntityOwnershipStatistics.java @@ -5,7 +5,6 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ - package org.opendaylight.controller.cluster.datastore.entityownership; import static org.opendaylight.controller.cluster.datastore.entityownership.EntityOwnersModel.entityTypeFromEntityPath; @@ -15,12 +14,11 @@ import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.Optional; -import javax.annotation.Nonnull; -import org.opendaylight.yangtools.triemap.TrieMap; import org.opendaylight.yangtools.yang.data.api.schema.LeafNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; +import tech.pantheon.triemap.TrieMap; /** * EntityOwnershipStatistics is a utility class that keeps track of ownership statistics for the candidates and @@ -37,7 +35,7 @@ class EntityOwnershipStatistics extends AbstractEntityOwnerChangeListener { } @Override - public void onDataTreeChanged(@Nonnull final Collection changes) { + public void onDataTreeChanged(final Collection changes) { for (DataTreeCandidate change : changes) { DataTreeCandidateNode changeRoot = change.getRootNode(); LeafNode ownerLeaf = (LeafNode) changeRoot.getDataAfter().get(); @@ -79,12 +77,7 @@ class EntityOwnershipStatistics extends AbstractEntityOwnerChangeListener { map.put(candidateName, count); statistics.put(entityType, map); } else { - Long candidateOwnedEntities = map.get(candidateName); - if (candidateOwnedEntities == null) { - map.put(candidateName, count); - } else { - map.put(candidateName, candidateOwnedEntities + count); - } + map.merge(candidateName, count, (ownedEntities, addedEntities) -> ownedEntities + addedEntities); } } }