Update nf_type for PNF in AAI
[so.git] / bpmn / MSOCommonBPMN / src / main / java / org / onap / so / bpmn / servicedecomposition / tasks / BBInputSetupMapperLayer.java
index 573925f..759c9ec 100644 (file)
 
 package org.onap.so.bpmn.servicedecomposition.tasks;
 
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
 import org.modelmapper.ModelMapper;
 import org.modelmapper.convention.MatchingStrategies;
+import org.onap.so.bpmn.servicedecomposition.bbobjects.AggregateRoute;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.AllottedResource;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.CloudRegion;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.Collection;
@@ -57,6 +52,7 @@ import org.onap.so.bpmn.servicedecomposition.bbobjects.Subnet;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.Tenant;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.VfModule;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.Vnfc;
+import org.onap.so.bpmn.servicedecomposition.bbobjects.Pnf;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.VolumeGroup;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.VpnBinding;
 import org.onap.so.bpmn.servicedecomposition.entities.ResourceKey;
@@ -69,6 +65,7 @@ import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoConfiguration;
 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoGenericVnf;
 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoInstanceGroup;
 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoNetwork;
+import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoPnf;
 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoServiceInstance;
 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoServiceProxy;
 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoVfModule;
@@ -83,6 +80,7 @@ import org.onap.so.db.catalog.beans.InstanceGroupType;
 import org.onap.so.db.catalog.beans.NetworkResourceCustomization;
 import org.onap.so.db.catalog.beans.OrchestrationStatus;
 import org.onap.so.db.catalog.beans.Service;
+import org.onap.so.db.catalog.beans.PnfResourceCustomization;
 import org.onap.so.db.catalog.beans.ServiceProxyResourceCustomization;
 import org.onap.so.db.catalog.beans.VfModuleCustomization;
 import org.onap.so.db.catalog.beans.VnfResourceCustomization;
@@ -91,6 +89,12 @@ import org.onap.so.serviceinstancebeans.RequestDetails;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Component;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
 
 @Component("BBInputSetupMapperLayer")
 public class BBInputSetupMapperLayer {
@@ -131,6 +135,10 @@ public class BBInputSetupMapperLayer {
         return modelMapper.map(aaiSegmentationAssignment, SegmentationAssignment.class);
     }
 
+    protected AggregateRoute mapAAIAggregateRoute(org.onap.aai.domain.yang.AggregateRoute aaiAggregateRoute) {
+        return modelMapper.map(aaiAggregateRoute, AggregateRoute.class);
+    }
+
     protected CtagAssignment mapAAICtagAssignment(org.onap.aai.domain.yang.CtagAssignment aaiCtagAssignment) {
         return modelMapper.map(aaiCtagAssignment, CtagAssignment.class);
     }
@@ -181,6 +189,9 @@ public class BBInputSetupMapperLayer {
 
     protected VolumeGroup mapAAIVolumeGroup(org.onap.aai.domain.yang.VolumeGroup aaiVolumeGroup) {
         VolumeGroup volumeGroup = modelMapper.map(aaiVolumeGroup, VolumeGroup.class);
+        ModelInfoVfModule modelInfo = new ModelInfoVfModule();
+        modelInfo.setModelCustomizationUUID(aaiVolumeGroup.getModelCustomizationId());
+        volumeGroup.setModelInfoVfModule(modelInfo);
         volumeGroup.setOrchestrationStatus(this.mapOrchestrationStatusFromAAI(aaiVolumeGroup.getOrchestrationStatus()));
         return volumeGroup;
     }
@@ -262,10 +273,21 @@ public class BBInputSetupMapperLayer {
         mapAllSubnetsIntoL3Network(aaiL3Network, network);
         mapAllCtagAssignmentsIntoL3Network(aaiL3Network, network);
         mapAllSegmentationAssignmentsIntoL3Network(aaiL3Network, network);
+        mapAllAggregateRoutesIntoL3Network(aaiL3Network, network);
         network.setOrchestrationStatus(this.mapOrchestrationStatusFromAAI(aaiL3Network.getOrchestrationStatus()));
         return network;
     }
 
+    protected void mapAllAggregateRoutesIntoL3Network(org.onap.aai.domain.yang.L3Network aaiL3Network,
+            L3Network network) {
+        if (aaiL3Network.getAggregateRoutes() != null) {
+            for (org.onap.aai.domain.yang.AggregateRoute aaiAggregateRoute : aaiL3Network.getAggregateRoutes()
+                    .getAggregateRoute()) {
+                network.getAggregateRoutes().add(mapAAIAggregateRoute(aaiAggregateRoute));
+            }
+        }
+    }
+
     protected void mapAllSegmentationAssignmentsIntoL3Network(org.onap.aai.domain.yang.L3Network aaiL3Network,
             L3Network network) {
         if (aaiL3Network.getSegmentationAssignments() != null) {
@@ -304,6 +326,10 @@ public class BBInputSetupMapperLayer {
         return genericVnf;
     }
 
+    protected Pnf mapAAIPnfIntoPnf(org.onap.aai.domain.yang.Pnf aaiPnf) {
+        return modelMapper.map(aaiPnf, Pnf.class);
+    }
+
     protected void mapAllLicensesIntoGenericVnf(org.onap.aai.domain.yang.GenericVnf aaiGenericVnf,
             GenericVnf genericVnf) {
         if (aaiGenericVnf.getLicenses() != null) {
@@ -456,6 +482,12 @@ public class BBInputSetupMapperLayer {
         return modelInfoVnf;
     }
 
+    protected ModelInfoPnf mapCatalogPnfToPnf(PnfResourceCustomization pnfResourceCustomization) {
+        ModelInfoPnf modelInfoPnf = modelMapper.map(pnfResourceCustomization, ModelInfoPnf.class);
+        modelMapper.map(pnfResourceCustomization.getPnfResources(), modelInfoPnf);
+        return modelInfoPnf;
+    }
+
     protected ModelInfoVfModule mapCatalogVfModuleToVfModule(VfModuleCustomization vfResourceCustomization) {
         ModelInfoVfModule modelInfoVfModule = modelMapper.map(vfResourceCustomization, ModelInfoVfModule.class);
         modelMapper.map(vfResourceCustomization.getVfModule(), modelInfoVfModule);