From: a.sreekumar Date: Thu, 20 Feb 2020 11:58:45 +0000 (+0000) Subject: Minor fix to avoid ConcurrentModificationException in policy-models X-Git-Tag: 2.2.1~67^2 X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=1eb4ca4ae59358034c34dade0995768d95d7abb9;p=policy%2Fmodels.git Minor fix to avoid ConcurrentModificationException in policy-models Change-Id: If737f6ae0bcb0f8c694711a67a3c879fee8c11c5 Issue-ID: POLICY-1402 Signed-off-by: a.sreekumar --- diff --git a/models-tosca/src/main/java/org/onap/policy/models/tosca/utils/ToscaUtils.java b/models-tosca/src/main/java/org/onap/policy/models/tosca/utils/ToscaUtils.java index 77633bd27..88591bd91 100644 --- a/models-tosca/src/main/java/org/onap/policy/models/tosca/utils/ToscaUtils.java +++ b/models-tosca/src/main/java/org/onap/policy/models/tosca/utils/ToscaUtils.java @@ -21,13 +21,11 @@ package org.onap.policy.models.tosca.utils; import java.util.Collection; +import java.util.HashSet; import java.util.Set; import java.util.function.Function; - import javax.ws.rs.core.Response; - import lombok.NonNull; - import org.apache.commons.collections4.CollectionUtils; import org.onap.policy.models.base.PfConcept; import org.onap.policy.models.base.PfConceptContainer; @@ -263,9 +261,11 @@ public final class ToscaUtils { @SuppressWarnings("unchecked") Set> filteredEntitySet = - (Set>) entityTypes.getAll(entityName, entityVersion); + (Set>) entityTypes.getAll(entityName, entityVersion); + Set> filteredEntitySetToReturn = new HashSet<>(filteredEntitySet); for (JpaToscaEntityType filteredEntityType : filteredEntitySet) { - filteredEntitySet.addAll(ToscaUtils.getEntityTypeAncestors(entityTypes, filteredEntityType, result)); + filteredEntitySetToReturn + .addAll(ToscaUtils.getEntityTypeAncestors(entityTypes, filteredEntityType, result)); } if (!result.isValid()) { @@ -273,6 +273,6 @@ public final class ToscaUtils { } entityTypes.getConceptMap().entrySet() - .removeIf(entityEntry -> !filteredEntitySet.contains(entityEntry.getValue())); + .removeIf(entityEntry -> !filteredEntitySetToReturn.contains(entityEntry.getValue())); } }