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;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
+import java.util.List;
+
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
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){
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);
*/
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;
public interface PackageDistributionService {
VfNsPackageInfo retrievePackageInfo();
+
+ List<SDCServiceTemplate> sdcNsPackageInfo();
+
+ List<Vnf> sdcVfPackageInfo();
DistributionResult postNsPackage(Csar csar);
String createNetworkServiceInstance(HttpServletRequest request);
+ String instantiateNetworkServiceInstance(HttpServletRequest request ,String serviceInstanceId);
+
String deleteNetworkServiceInstance(String nsInstanceId);
String terminateNetworkServiceInstance(HttpServletRequest request,String networkServiceInstanceId);
@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 {
}
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;
+ }
+
}