1 package org.openecomp.conflicts.dao.impl.zusammen;
4 import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementConflictInfo;
5 import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
6 import com.amdocs.zusammen.adaptor.inbound.api.types.item.ItemVersionConflict;
7 import com.amdocs.zusammen.datatypes.Id;
8 import com.amdocs.zusammen.datatypes.item.ItemVersion;
9 import com.amdocs.zusammen.datatypes.item.ItemVersionData;
10 import com.amdocs.zusammen.datatypes.item.ItemVersionDataConflict;
11 import org.openecomp.conflicts.types.Conflict;
12 import org.openecomp.conflicts.types.ConflictInfo;
13 import org.openecomp.sdc.datatypes.model.ElementType;
14 import org.openecomp.sdc.versioning.dao.impl.zusammen.convertor.ItemVersionToVersionConvertor;
15 import org.openecomp.sdc.versioning.dao.types.Version;
16 import org.openecomp.types.ElementPropertyName;
18 import java.util.stream.Collectors;
20 public class ItemVersionConflictConvertorFromZusammen {
21 public org.openecomp.conflicts.types.ItemVersionConflict convert(String itemId, Version version,
22 ItemVersionConflict source) {
23 org.openecomp.conflicts.types.ItemVersionConflict target =
24 new org.openecomp.conflicts.types.ItemVersionConflict();
26 target.setVersionConflict(
27 convertVersionDataConflict(itemId, version, source.getVersionDataConflict()));
28 target.setElementConflicts(source.getElementConflictInfos().stream()
29 .map(this::convertElementConflictInfo)
30 .collect(Collectors.toList()));
36 private Conflict<Version> convertVersionDataConflict(String itemId, Version version,
37 ItemVersionDataConflict versionDataConflict) {
38 if (versionDataConflict == null) {
42 Conflict<Version> conflict =
43 new Conflict<>(version.getId(), ElementType.itemVersion, null);
45 ItemVersionToVersionConvertor convertor = new ItemVersionToVersionConvertor();
46 conflict.setYours(convertor.convert(
47 getItemVersion(version.getId(), versionDataConflict.getLocalData())));
48 conflict.setTheirs(convertor.convert(
49 getItemVersion(version.getId(), versionDataConflict.getRemoteData())));
53 private ItemVersion getItemVersion(String versionId, ItemVersionData versionData) {
54 if (versionData == null) {
57 ItemVersion itemVersion = new ItemVersion();
58 itemVersion.setId(new Id(versionId));
59 itemVersion.setData(versionData);
63 private ConflictInfo convertElementConflictInfo(ElementConflictInfo elementConflictInfo) {
64 ElementInfo elementInfo = elementConflictInfo.getLocalElementInfo() == null
65 ? elementConflictInfo.getRemoteElementInfo()
66 : elementConflictInfo.getLocalElementInfo();
68 return new ConflictInfo(elementInfo.getId().getValue(),
70 .valueOf(elementInfo.getInfo().getProperty(ElementPropertyName.elementType.name())),
71 elementInfo.getInfo().getName());