aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorguochuyicmri <guochuyi@chinamobile.com>2018-10-24 17:38:22 +0800
committerguochuyicmri <guochuyi@chinamobile.com>2018-10-24 17:46:39 +0800
commit17c7c1bd3fbdb131f7a411b7923c6922471849ed (patch)
tree8e7b1734036a1399f6d8ad6d863a3aadab2c2176
parent1873741f068ceebd273177d33134876907091483 (diff)
support ns package query for vf-c
Change-Id: Ibcccea666c56b81e9fd687425af88ca1bc542780 Issue-ID: USECASEUI-159 Signed-off-by: guochuyicmri <guochuyi@chinamobile.com>
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/controller/lcm/PackageDistributionController.java23
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/service/lcm/PackageDistributionService.java10
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/service/lcm/domain/vfc/VfcService.java3
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/service/lcm/impl/DefaultPackageDistributionService.java80
4 files changed, 90 insertions, 26 deletions
diff --git a/server/src/main/java/org/onap/usecaseui/server/controller/lcm/PackageDistributionController.java b/server/src/main/java/org/onap/usecaseui/server/controller/lcm/PackageDistributionController.java
index bb6c06dc..350978be 100644
--- a/server/src/main/java/org/onap/usecaseui/server/controller/lcm/PackageDistributionController.java
+++ b/server/src/main/java/org/onap/usecaseui/server/controller/lcm/PackageDistributionController.java
@@ -17,6 +17,8 @@ package org.onap.usecaseui.server.controller.lcm;
import org.onap.usecaseui.server.bean.lcm.VfNsPackageInfo;
import org.onap.usecaseui.server.service.lcm.PackageDistributionService;
+import org.onap.usecaseui.server.service.lcm.domain.sdc.bean.SDCServiceTemplate;
+import org.onap.usecaseui.server.service.lcm.domain.sdc.bean.Vnf;
import org.onap.usecaseui.server.service.lcm.domain.vfc.beans.Csar;
import org.onap.usecaseui.server.service.lcm.domain.vfc.beans.DistributionResult;
import org.onap.usecaseui.server.service.lcm.domain.vfc.beans.Job;
@@ -27,6 +29,8 @@ import org.springframework.context.annotation.EnableAspectJAutoProxy;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
+import java.util.List;
+
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@@ -49,7 +53,19 @@ public class PackageDistributionController {
public VfNsPackageInfo retrievePackageInfo(){
return packageDistributionService.retrievePackageInfo();
}
-
+
+ @ResponseBody
+ @RequestMapping(value = {"/uui-lcm/sdc-ns-packages"}, method = RequestMethod.GET , produces = "application/json")
+ public List<SDCServiceTemplate> sdcNsPackageInfo(){
+ return packageDistributionService.sdcNsPackageInfo();
+ }
+
+ @ResponseBody
+ @RequestMapping(value = {"/uui-lcm/sdc-vf-packages"}, method = RequestMethod.GET , produces = "application/json")
+ public List<Vnf> sdcVfPackageInfo(){
+ return packageDistributionService.sdcVfPackageInfo();
+ }
+
@ResponseBody
@RequestMapping(value = {"/uui-lcm/ns-packages"}, method = RequestMethod.POST , produces = "application/json")
public DistributionResult distributeNsPackage(@RequestBody Csar csar){
@@ -181,6 +197,11 @@ public class PackageDistributionController {
return packageDistributionService.deleteNetworkServiceInstance(ns_instance_id);
}
+ @RequestMapping(value = {"/uui-lcm/instantiateNetworkServiceInstance}"}, method = RequestMethod.POST , produces = "application/json")
+ public String instantiateNetworkServiceInstance(HttpServletRequest request,@RequestParam String ns_instance_id){
+ return packageDistributionService.terminateNetworkServiceInstance(request,ns_instance_id);
+ }
+
@RequestMapping(value = {"/uui-lcm/terminateNetworkServiceInstance}"}, method = RequestMethod.POST , produces = "application/json")
public String terminateNetworkServiceInstance(HttpServletRequest request,@RequestParam String ns_instance_id){
return packageDistributionService.terminateNetworkServiceInstance(request,ns_instance_id);
diff --git a/server/src/main/java/org/onap/usecaseui/server/service/lcm/PackageDistributionService.java b/server/src/main/java/org/onap/usecaseui/server/service/lcm/PackageDistributionService.java
index 5f5ccc80..6a0d2d96 100644
--- a/server/src/main/java/org/onap/usecaseui/server/service/lcm/PackageDistributionService.java
+++ b/server/src/main/java/org/onap/usecaseui/server/service/lcm/PackageDistributionService.java
@@ -15,10 +15,14 @@
*/
package org.onap.usecaseui.server.service.lcm;
+import java.util.List;
+
import javax.servlet.http.HttpServletRequest;
import org.apache.http.HttpRequest;
import org.onap.usecaseui.server.bean.lcm.VfNsPackageInfo;
+import org.onap.usecaseui.server.service.lcm.domain.sdc.bean.SDCServiceTemplate;
+import org.onap.usecaseui.server.service.lcm.domain.sdc.bean.Vnf;
import org.onap.usecaseui.server.service.lcm.domain.vfc.beans.Csar;
import org.onap.usecaseui.server.service.lcm.domain.vfc.beans.DistributionResult;
import org.onap.usecaseui.server.service.lcm.domain.vfc.beans.Job;
@@ -27,6 +31,10 @@ import org.onap.usecaseui.server.service.lcm.domain.vfc.beans.JobStatus;
public interface PackageDistributionService {
VfNsPackageInfo retrievePackageInfo();
+
+ List<SDCServiceTemplate> sdcNsPackageInfo();
+
+ List<Vnf> sdcVfPackageInfo();
DistributionResult postNsPackage(Csar csar);
@@ -76,6 +84,8 @@ public interface PackageDistributionService {
String createNetworkServiceInstance(HttpServletRequest request);
+ String instantiateNetworkServiceInstance(HttpServletRequest request ,String serviceInstanceId);
+
String deleteNetworkServiceInstance(String nsInstanceId);
String terminateNetworkServiceInstance(HttpServletRequest request,String networkServiceInstanceId);
diff --git a/server/src/main/java/org/onap/usecaseui/server/service/lcm/domain/vfc/VfcService.java b/server/src/main/java/org/onap/usecaseui/server/service/lcm/domain/vfc/VfcService.java
index 0dd91a95..da0fabe3 100644
--- a/server/src/main/java/org/onap/usecaseui/server/service/lcm/domain/vfc/VfcService.java
+++ b/server/src/main/java/org/onap/usecaseui/server/service/lcm/domain/vfc/VfcService.java
@@ -54,6 +54,9 @@ public interface VfcService {
@POST("/api/nslcm/v1/ns")
Call<ResponseBody> createNetworkServiceInstance(@Body RequestBody body);
+ @POST("/api/nslcm/v1/ns/{ns_instance_id}/instantiate")
+ Call<ResponseBody> instantiateNetworkServiceInstance(@Body RequestBody body,@Path("ns_instance_id") String nsInstanceId);
+
@DELETE("/api/nslcm/v1/ns/{ns_instance_id}")
Call<ResponseBody> deleteNetworkServiceInstance(@Path("ns_instance_id") String nsInstanceId);
diff --git a/server/src/main/java/org/onap/usecaseui/server/service/lcm/impl/DefaultPackageDistributionService.java b/server/src/main/java/org/onap/usecaseui/server/service/lcm/impl/DefaultPackageDistributionService.java
index 4234e921..70b68663 100644
--- a/server/src/main/java/org/onap/usecaseui/server/service/lcm/impl/DefaultPackageDistributionService.java
+++ b/server/src/main/java/org/onap/usecaseui/server/service/lcm/impl/DefaultPackageDistributionService.java
@@ -69,35 +69,43 @@ public class DefaultPackageDistributionService implements PackageDistributionSer
@Override
public VfNsPackageInfo retrievePackageInfo() {
- try {
- List<SDCServiceTemplate> nsTemplate = getNsTemplate();
- List<Vnf> vnf = getVFResource();
+ List<SDCServiceTemplate> nsTemplate = sdcNsPackageInfo();
+ List<Vnf> vnf = sdcVfPackageInfo();
return new VfNsPackageInfo(nsTemplate, vnf);
- } catch (IOException e) {
- throw new SDCCatalogException("SDC Service is not available!", e);
- }
}
-
- private List<Vnf> getVFResource() throws IOException {
- Response<List<Vnf>> response = sdcCatalogService.listResources(RESOURCETYPE_VF).execute();
- if (response.isSuccessful()) {
- return response.body();
- } else {
- logger.info(String.format("Can not get VF resources[code=%s, message=%s]", response.code(), response.message()));
- return Collections.emptyList();
- }
+
+ @Override
+ public List<Vnf> sdcVfPackageInfo() {
+ try {
+ Response<List<Vnf>> response = sdcCatalogService.listResources(RESOURCETYPE_VF).execute();
+ if (response.isSuccessful()) {
+ return response.body();
+ } else {
+ logger.info(String.format("Can not get VF resources[code=%s, message=%s]", response.code(), response.message()));
+ return Collections.emptyList();
+ }
+ } catch (IOException e) {
+ logger.error("sdcVfPackageInfo occur exception.Details:"+e.getMessage());
+ }
+ return null;
}
-
- private List<SDCServiceTemplate> getNsTemplate() throws IOException {
- Response<List<SDCServiceTemplate>> response = sdcCatalogService.listServices(CATEGORY_NS, DISTRIBUTION_STATUS_DISTRIBUTED).execute();
- if (response.isSuccessful()) {
- return response.body();
- } else {
- logger.info(String.format("Can not get NS services[code=%s, message=%s]", response.code(), response.message()));
- return Collections.emptyList();
- }
+
+ @Override
+ public List<SDCServiceTemplate> sdcNsPackageInfo() {
+ try {
+ Response<List<SDCServiceTemplate>> response = sdcCatalogService.listServices(CATEGORY_NS, DISTRIBUTION_STATUS_DISTRIBUTED).execute();
+ if (response.isSuccessful()) {
+ return response.body();
+ } else {
+ logger.info(String.format("Can not get NS services[code=%s, message=%s]", response.code(), response.message()));
+ return Collections.emptyList();
+ }
+ } catch (IOException e) {
+ logger.error("sdcNsPackageInfo occur exception.Details:"+e.getMessage());
+ }
+ return null;
}
-
+
@Override
public DistributionResult postNsPackage(Csar csar) {
try {
@@ -668,4 +676,26 @@ public class DefaultPackageDistributionService implements PackageDistributionSer
}
return result;
}
+
+ @Override
+ public String instantiateNetworkServiceInstance(HttpServletRequest request, String serviceInstanceId) {
+ String result = "";
+ try {
+ logger.info("aai instantiateNetworkServiceInstance is starting");
+ RequestBody requestBody = extractBody(request);
+ Response<ResponseBody> response = vfcService.instantiateNetworkServiceInstance(requestBody,serviceInstanceId).execute();
+ logger.info("aai instantiateNetworkServiceInstance has finished");
+ if (response.isSuccessful()) {
+ result=new String(response.body().bytes());
+ } else {
+ result=Constant.CONSTANT_FAILED;
+ logger.error(String.format("Can not instantiateNetworkServiceInstance[code=%s, message=%s]", response.code(), response.message()));
+ }
+ } catch (Exception e) {
+ result=Constant.CONSTANT_FAILED;
+ logger.error("instantiateNetworkServiceInstance occur exception:"+e);
+ }
+ return result;
+ }
+
}