aboutsummaryrefslogtreecommitdiffstats
path: root/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest
diff options
context:
space:
mode:
authorandre.schmid <andre.schmid@est.tech>2021-09-17 15:48:43 +0100
committerandre.schmid <andre.schmid@est.tech>2021-09-17 16:19:57 +0100
commitd6b83fce723703f4dea0bce3675ecbf6996aaf9a (patch)
tree4c8e463a3f24cefdd18e3bb28a8573f7fae4f15b /openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest
parentb3fca719b446b6ad72d723e0043219b249ab5752 (diff)
Fix Update VSP when no version id is provided
Issue-ID: SDC-3730 Change-Id: Ic5a5a6ecf3b6775e022be649145e44b0907cbecf Signed-off-by: andre.schmid <andre.schmid@est.tech>
Diffstat (limited to 'openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest')
-rw-r--r--openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest/vendor-software-products-rest-services/src/main/java/org/openecomp/sdcrests/vsp/rest/VendorSoftwareProducts.java6
-rw-r--r--openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest/vendor-software-products-rest-services/src/main/java/org/openecomp/sdcrests/vsp/rest/services/VendorSoftwareProductsImpl.java9
2 files changed, 15 insertions, 0 deletions
diff --git a/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest/vendor-software-products-rest-services/src/main/java/org/openecomp/sdcrests/vsp/rest/VendorSoftwareProducts.java b/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest/vendor-software-products-rest-services/src/main/java/org/openecomp/sdcrests/vsp/rest/VendorSoftwareProducts.java
index 328c96254f..fbe7d371ca 100644
--- a/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest/vendor-software-products-rest-services/src/main/java/org/openecomp/sdcrests/vsp/rest/VendorSoftwareProducts.java
+++ b/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest/vendor-software-products-rest-services/src/main/java/org/openecomp/sdcrests/vsp/rest/VendorSoftwareProducts.java
@@ -76,6 +76,12 @@ public interface VendorSoftwareProducts extends VspEntities {
@NotNull(message = USER_MISSING_ERROR_MSG) @HeaderParam(USER_ID_HEADER_PARAM) String user);
@GET
+ @Path("/{vspId}")
+ @Parameter(description = "Get details of the latest certified vendor software product")
+ Response getLatestVsp(@PathParam("vspId") String vspId,
+ @NotNull(message = USER_MISSING_ERROR_MSG) @HeaderParam(USER_ID_HEADER_PARAM) String user);
+
+ @GET
@Path("/{vspId}/versions/{versionId}")
@Parameter(description = "Get details of a vendor software product")
Response getVsp(@PathParam("vspId") String vspId, @PathParam("versionId") String versionId,
diff --git a/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest/vendor-software-products-rest-services/src/main/java/org/openecomp/sdcrests/vsp/rest/services/VendorSoftwareProductsImpl.java b/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest/vendor-software-products-rest-services/src/main/java/org/openecomp/sdcrests/vsp/rest/services/VendorSoftwareProductsImpl.java
index 5367e1ea75..76e3f674dd 100644
--- a/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest/vendor-software-products-rest-services/src/main/java/org/openecomp/sdcrests/vsp/rest/services/VendorSoftwareProductsImpl.java
+++ b/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest/vendor-software-products-rest-services/src/main/java/org/openecomp/sdcrests/vsp/rest/services/VendorSoftwareProductsImpl.java
@@ -208,6 +208,15 @@ public class VendorSoftwareProductsImpl implements VendorSoftwareProducts {
return Response.ok(vspDetailsDto).build();
}
+ @Override
+ public Response getLatestVsp(final String vspId, final String user) {
+ final List<Version> versions = versioningManager.list(vspId);
+ final Version version = versions.stream().filter(ver -> VersionStatus.Certified == ver.getStatus())
+ .max(Comparator.comparingDouble(o -> Double.parseDouble(o.getName())))
+ .orElseThrow(() -> new CoreException(new PackageNotFoundErrorBuilder(vspId).build()));
+ return getVsp(vspId, version.getId(), user);
+ }
+
private void submitHealedVersion(VspDetails vspDetails, String baseVersionId, String user) {
try {
if (vspDetails.getVlmVersion() != null) {