[SDC] Onboarding 1710 rebase.
[sdc.git] / openecomp-be / tools / migration / 1702_to_1707_zusammen / src / main / java / org / openecomp / core / migration / convertors / MibConvertor.java
1 package org.openecomp.core.migration.convertors;
2
3 import com.amdocs.zusammen.datatypes.item.ElementContext;
4 import com.amdocs.zusammen.datatypes.item.Info;
5 import com.amdocs.zusammen.plugin.statestore.cassandra.dao.types.ElementEntityContext;
6 import com.amdocs.zusammen.sdk.collaboration.types.CollaborationElement;
7 import org.openecomp.core.migration.MigrationMain;
8 import org.openecomp.core.migration.store.ElementHandler;
9 import org.openecomp.sdc.logging.api.Logger;
10 import org.openecomp.sdc.logging.api.LoggerFactory;
11 import org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen.StructureElement;
12 import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentMonitoringUploadEntity;
13
14 import java.util.HashSet;
15 import java.util.List;
16 import java.util.Set;
17
18 public class MibConvertor {
19   private static Logger logger = LoggerFactory.getLogger(MigrationMain.class);
20
21   private static Set<String> compMibLoaded = new HashSet<>();
22
23
24   public static CollaborationElement[] convertMibToElement(
25       ComponentMonitoringUploadEntity componentMonitoringUploadEntity) {
26     CollaborationElement[] elements;
27     List<String> mibNamespace = getMibNamespace(componentMonitoringUploadEntity);
28
29     int index = 0;
30     String mibsEntityId =
31         StructureElement.Mibs.name() + "_" + componentMonitoringUploadEntity.getComponentId();
32     if (compMibLoaded.contains(mibsEntityId)) {
33       elements = new CollaborationElement[1];
34     } else {
35       compMibLoaded.add(mibsEntityId);
36       elements = new CollaborationElement[2];
37       elements[index++] = ElementHandler.getElementEntity(
38           componentMonitoringUploadEntity.getVspId(),
39           componentMonitoringUploadEntity.getVersion().toString(), mibsEntityId, mibNamespace,
40           ElementHandler.getStructuralElementInfo(StructureElement.Mibs.name()), null, null, null);
41     }
42
43     mibNamespace.add(mibsEntityId);
44     elements[index] = ElementHandler.getElementEntity(
45         componentMonitoringUploadEntity.getVspId(),
46         componentMonitoringUploadEntity.getVersion().toString(), componentMonitoringUploadEntity
47             .getId(), mibNamespace,
48         getMibInfo(componentMonitoringUploadEntity), null, null, componentMonitoringUploadEntity
49             .getArtifact().array());
50
51     return elements;
52   }
53
54   private static Info getMibInfo(
55       ComponentMonitoringUploadEntity componentMonitoringUploadEntity) {
56     Info info = new Info();
57     info.setName(componentMonitoringUploadEntity.getType().toString());
58     info.getProperties().put("name", componentMonitoringUploadEntity.getArtifactName());
59     return info;
60   }
61
62   private static List<String> getMibNamespace(
63       ComponentMonitoringUploadEntity componentMonitoringUploadEntity) {
64     return ElementHandler
65         .getElementPath(StructureElement.Components.name(), componentMonitoringUploadEntity
66         .getComponentId());
67   }
68
69   public static ElementEntityContext convertMibToElementContext(
70       ComponentMonitoringUploadEntity componentMonitoringUploadEntity) {
71
72     return new ElementEntityContext("GLOBAL_USER", new
73         ElementContext(componentMonitoringUploadEntity.getVspId(),
74         componentMonitoringUploadEntity
75             .getVersion().toString()));
76   }
77 }