diff options
Diffstat (limited to 'src/main/java/org/onap/nbi/apis/serviceorder/workflow')
-rw-r--r-- | src/main/java/org/onap/nbi/apis/serviceorder/workflow/CreateAAIServiceTypeManager.java | 16 | ||||
-rw-r--r-- | src/main/java/org/onap/nbi/apis/serviceorder/workflow/PostSoProcessor.java | 8 |
2 files changed, 13 insertions, 11 deletions
diff --git a/src/main/java/org/onap/nbi/apis/serviceorder/workflow/CreateAAIServiceTypeManager.java b/src/main/java/org/onap/nbi/apis/serviceorder/workflow/CreateAAIServiceTypeManager.java index a8e4047..9cadb1e 100644 --- a/src/main/java/org/onap/nbi/apis/serviceorder/workflow/CreateAAIServiceTypeManager.java +++ b/src/main/java/org/onap/nbi/apis/serviceorder/workflow/CreateAAIServiceTypeManager.java @@ -42,7 +42,6 @@ public class CreateAAIServiceTypeManager { private static final Logger LOGGER = LoggerFactory.getLogger(CreateAAIServiceTypeManager.class); public void createAAIServiceType(ServiceOrder serviceOrder, ServiceOrderInfo serviceOrderInfo) { - Map servicesInAaiForCustomer = serviceOrderConsumerService.getServicesInAaiForCustomer( serviceOrderInfo.getSubscriberInfo().getGlobalSubscriberId(), serviceOrder); @@ -50,14 +49,15 @@ public class CreateAAIServiceTypeManager { if (ActionType.ADD == serviceOrderItem.getAction()) { ServiceOrderItemInfo serviceOrderItemInfo = serviceOrderInfo.getServiceOrderItemInfos().get(serviceOrderItem.getId()); - String sdcServiceName = (String) serviceOrderItemInfo.getCatalogResponse().get("name"); - if (!serviceNameExistsInAAI(servicesInAaiForCustomer, sdcServiceName)) { + String serviceTypeFromJson = serviceOrderItem.getService().getServicetype(); + String serviceType = serviceTypeFromJson != null ? serviceTypeFromJson : (String) serviceOrderItemInfo.getCatalogResponse().get("name"); + if (!serviceNameExistsInAAI(servicesInAaiForCustomer, serviceType)) { boolean serviceCreated = serviceOrderConsumerService.putServiceType( - serviceOrderInfo.getSubscriberInfo().getGlobalSubscriberId(), sdcServiceName, serviceOrder); + serviceOrderInfo.getSubscriberInfo().getGlobalSubscriberId(), serviceType, serviceOrder); if (!serviceCreated) { serviceOrderService.updateOrderState(serviceOrder, StateType.REJECTED); LOGGER.warn("serviceOrder {} rejected : cannot create service type {} for customer {}", - serviceOrder.getId(), sdcServiceName, + serviceOrder.getId(), serviceType, serviceOrderInfo.getSubscriberInfo().getGlobalSubscriberId()); serviceOrderService.addOrderMessage(serviceOrder, "501"); @@ -68,14 +68,14 @@ public class CreateAAIServiceTypeManager { } - private boolean serviceNameExistsInAAI(Map servicesInAaiForCustomer, String sdcServiceName) { + private boolean serviceNameExistsInAAI(Map servicesInAaiForCustomer, String serviceType) { if (servicesInAaiForCustomer != null && servicesInAaiForCustomer.get("service-subscription") != null) { List<LinkedHashMap> servicesInAAI = (List<LinkedHashMap>) servicesInAaiForCustomer.get("service-subscription"); for (LinkedHashMap service : servicesInAAI) { - String serviceType = (String) service.get("service-type"); - if (sdcServiceName.equalsIgnoreCase(serviceType)) { + String serviceTypeInAAI = (String) service.get("service-type"); + if (serviceType.equalsIgnoreCase(serviceTypeInAAI)) { return true; } diff --git a/src/main/java/org/onap/nbi/apis/serviceorder/workflow/PostSoProcessor.java b/src/main/java/org/onap/nbi/apis/serviceorder/workflow/PostSoProcessor.java index 5694cfe..1b0d77f 100644 --- a/src/main/java/org/onap/nbi/apis/serviceorder/workflow/PostSoProcessor.java +++ b/src/main/java/org/onap/nbi/apis/serviceorder/workflow/PostSoProcessor.java @@ -195,7 +195,9 @@ public class PostSoProcessor { requestDetails.setRequestInfo(requestInfo); RequestParameters requestParameters = new RequestParameters(); - requestParameters.setSubscriptionServiceType((String) sdcInfos.get("name")); + + String serviceTypeFromJson = orderItem.getService().getServicetype(); + requestParameters.setSubscriptionServiceType(serviceTypeFromJson != null ? serviceTypeFromJson:(String) sdcInfos.get("name")); requestParameters.setUserParams( retrieveUserParamsFromServiceCharacteristics(orderItem.getService().getServiceCharacteristic())); requestParameters.setaLaCarte(true); @@ -237,8 +239,8 @@ public class PostSoProcessor { service.setServiceUuid(serviceOrderItem.getService().getServiceSpecification().getId()); service.setServiceInvariantUuid((String) sdcInfos.get("invariantUUID")); service.setGlobalSubscriberId(subscriberInfo.getGlobalSubscriberId()); - service.setServiceType((String) sdcInfos.get("name")); - + String serviceTypeFromJson = serviceOrderItem.getService().getServicetype(); + service.setServiceType(serviceTypeFromJson != null ? serviceTypeFromJson : (String) sdcInfos.get("name")); ParametersModel parameters = new ParametersModel(); ArrayList<ResourceModel> resources = new ArrayList(); |