package org.openecomp.sdc.be.datatypes.elements; import java.util.List; import java.util.Map; import java.util.stream.Collectors; import org.codehaus.jackson.annotate.JsonCreator; import org.codehaus.jackson.annotate.JsonValue; public class ListCapabilityDataDefinition extends ListDataDefinition { public ListCapabilityDataDefinition(ListCapabilityDataDefinition cdt) { super(cdt); } @JsonCreator public ListCapabilityDataDefinition(List< CapabilityDataDefinition > listToscaDataDefinition) { super(listToscaDataDefinition); } public ListCapabilityDataDefinition() { super(); } @JsonValue @Override public List getListToscaDataDefinition() { return listToscaDataDefinition; } public void setListToscaDataDefinition(List listToscaDataDefinition) { this.listToscaDataDefinition = listToscaDataDefinition; } public ListCapabilityDataDefinition mergeListItemsByName(ListCapabilityDataDefinition other){ Map mapByName = listToMapByName(); Map mapOtherByName = other.listToMapByName(); mapByName.putAll(mapOtherByName); return new ListCapabilityDataDefinition(mapByName.values().stream().collect(Collectors.toList())); } }