Incorrect FG version in vf-license-model.xml 83/28283/3
authoramitjai <amitjai@amdocs.com>
Tue, 16 Jan 2018 08:51:27 +0000 (14:21 +0530)
committerVitaly Emporopulo <Vitaliy.Emporopulo@amdocs.com>
Wed, 17 Jan 2018 06:40:20 +0000 (06:40 +0000)
vf-license-model.xml file should show the latest version of FG, which is currently linked with LA in VSP

Change-Id: Iafd14e2c964df5c4e276f96589e9ac95b8d64740
Issue-ID: SDC-935
Signed-off-by: amitjai <amitjai@amdocs.com>
openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/VendorSoftwareProductManagerImpl.java
openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/test/java/org/openecomp/sdc/vendorsoftwareproduct/impl/VendorSoftwareProductManagerImplTest.java

index a022fb6..d36f1bc 100644 (file)
@@ -100,6 +100,8 @@ import org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator.ComponentQu
 import org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator.SchemaTemplateContext;
 import org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator.SchemaTemplateInput;
 import org.openecomp.sdc.vendorsoftwareproduct.utils.ComponentDependencyTracker;
+import org.openecomp.sdc.versioning.VersioningManager;
+import org.openecomp.sdc.versioning.VersioningManagerFactory;
 import org.openecomp.sdc.versioning.VersioningUtil;
 import org.openecomp.sdc.versioning.dao.types.Version;
 
@@ -628,7 +630,9 @@ public class VendorSoftwareProductManagerImpl implements VendorSoftwareProductMa
     ToscaServiceModel toscaServiceModel = enrichedServiceModelDao.getServiceModel(vspId, version);
     VspDetails vspDetails = vspInfoDao.get(new VspDetails(vspId, version));
     Version vlmVersion = vspDetails.getVlmVersion();
-
+    if (vlmVersion != null) {
+      populateVersionsForVlm(vspDetails.getVendorId(), vlmVersion);
+    }
     PackageInfo packageInfo = createPackageInfo(vspDetails);
 
     ToscaFileOutputServiceCsarImpl toscaServiceTemplateServiceCsar =
@@ -646,6 +650,17 @@ public class VendorSoftwareProductManagerImpl implements VendorSoftwareProductMa
     return packageInfo;
   }
 
+  protected void populateVersionsForVlm(String vlmId, Version vlmVersion) {
+    VersioningManager versioningManager = VersioningManagerFactory.getInstance().createInterface();
+    versioningManager.list(vlmId).stream()
+        .filter(version -> version.getId().equalsIgnoreCase(vlmVersion.getId()))
+        .findAny()
+        .ifPresent(version -> {
+          vlmVersion.setMinor(vlmVersion.getMinor());
+          vlmVersion.setMajor(vlmVersion.getMajor());
+        });
+  }
+
   private PackageInfo createPackageInfo(VspDetails vspDetails) {
     PackageInfo packageInfo = new PackageInfo(vspDetails.getId(), vspDetails.getVersion());
     packageInfo.setVspName(vspDetails.getName());
index cc262ed..fd274d0 100644 (file)
@@ -456,7 +456,7 @@ public class VendorSoftwareProductManagerImplTest {
 
     doReturn(new ToscaServiceModel(new FileContentHandler(), new HashMap<>(), "")).when
         (enrichedServiceModelDaoMock).getServiceModel(VSP_ID, VERSION10);
-
+    doNothing().when(vendorSoftwareProductManager).populateVersionsForVlm(anyObject(), anyObject());
     VspDetails vsp = new VspDetails(VSP_ID, VERSION10);
     vsp.setVendorId("vendorId");
     vsp.setVlmVersion(VERSION10);