* 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;
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
}
@Override
- public void onDataTreeChanged(@Nonnull final Collection<DataTreeCandidate> changes) {
+ public void onDataTreeChanged(final Collection<DataTreeCandidate> changes) {
for (DataTreeCandidate change : changes) {
DataTreeCandidateNode changeRoot = change.getRootNode();
LeafNode<?> ownerLeaf = (LeafNode<?>) changeRoot.getDataAfter().get();
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);
}
}
}