fixed allotecate nssi 88/114988/11
authorhetengjiao <hetengjiao@chinamobile.com>
Tue, 17 Nov 2020 09:33:14 +0000 (17:33 +0800)
committerhetengjiao <hetengjiao@chinamobile.com>
Wed, 18 Nov 2020 04:33:27 +0000 (12:33 +0800)
Issue-ID: SO-2963

Signed-off-by: hetengjiao <hetengjiao@chinamobile.com>
Change-Id: I4abfa9e2842e901bbfb1b7e38af08ff7a22794e8

bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/CreateSliceService.groovy
bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoAllocateNSIandNSSI.groovy
bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoCreateSliceServiceInstance.groovy
bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/CreateSliceService.bpmn
common/src/main/java/org/onap/so/beans/nsmf/CnSliceProfile.java
common/src/main/java/org/onap/so/beans/nsmf/TnSliceProfile.java

index d59c0cf..e5d390e 100644 (file)
@@ -401,7 +401,10 @@ public class CreateSliceService extends AbstractServiceTaskProcessor {
         OrchestrationTask orchestrationTask = objectMapper.readValue(response, OrchestrationTask.class)
         String paramJson = orchestrationTask.getParams()
         logger.debug("paramJson: " + paramJson)
-        SliceTaskParamsAdapter sliceTaskParams = new SliceTaskParamsAdapter()
+
+        SliceTaskParamsAdapter sliceTaskParams =
+                execution.getVariable("sliceTaskParams") as SliceTaskParamsAdapter
+
         sliceTaskParams.convertFromJson(paramJson)
         execution.setVariable("sliceTaskParams", sliceTaskParams)
         logger.debug("Finish processUserOptions")
index 4b020c7..159f4c4 100644 (file)
@@ -20,6 +20,7 @@
 
 package org.onap.so.bpmn.infrastructure.scripts
 
+import org.onap.so.beans.nsmf.NsiInfo
 import org.onap.so.beans.nsmf.SliceProfileAdapter
 import org.onap.so.beans.nsmf.oof.SubnetType
 import org.onap.so.bpmn.common.scripts.AbstractServiceTaskProcessor
@@ -142,7 +143,10 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         String msg
         try {
 
-            AAIResourceUri nsiServiceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(execution.getVariable("globalSubscriberId")).serviceSubscription(execution.getVariable("subscriptionServiceType")).serviceInstance(sliceInstanceId))
+            AAIResourceUri nsiServiceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business()
+                    .customer(execution.getVariable("globalSubscriberId"))
+                    .serviceSubscription(execution.getVariable("subscriptionServiceType"))
+                    .serviceInstance(sliceInstanceId))
             client.create(nsiServiceUri, nsi)
 
             execution.setVariable("nsiServiceUri", nsiServiceUri)
@@ -150,7 +154,7 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         } catch (BpmnError e) {
             throw e
         } catch (Exception ex) {
-            msg = "Exception in DoCreateSliceServiceInstance.instantiateSliceService. " + ex.getMessage()
+            msg = "Exception in DoAllocateNSIandNSSI.createNSIinAAI: " + ex.getMessage()
             logger.info(msg)
             exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg)
         }
@@ -166,16 +170,30 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
      */
     void createRelationship(DelegateExecution execution) {
         //relation ship
-        String allottedResourceId = execution.getVariable("allottedResourceId")
-        SliceTaskParamsAdapter sliceParams =
-                execution.getVariable("sliceTaskParams") as SliceTaskParamsAdapter
+        logger.debug("Enter createRelationship in DoAllocateNSIandNSSI")
+        //String allottedResourceId = execution.getVariable("allottedResourceId")
+        //SliceTaskParamsAdapter sliceParams =
+        //        execution.getVariable("sliceTaskParams") as SliceTaskParamsAdapter
+        String msg
+        try {
 
-        AAIResourceUri nsiServiceUri = execution.getVariable("nsiServiceUri") as AAIResourceUri
-        logger.info("Creating Allotted resource relationship, nsiServiceUri: " + nsiServiceUri)
+            AAIResourceUri nsiServiceUri = execution.getVariable("nsiServiceUri") as AAIResourceUri
+            logger.debug("Creating Allotted resource relationship, nsiServiceUri: " + nsiServiceUri.toString())
 
-        AAIResourceUri allottedResourceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(execution.getVariable("globalSubscriberId")).serviceSubscription(execution.getVariable("subscriptionServiceType")).serviceInstance(sliceParams.suggestNsiId).allottedResource(allottedResourceId))
+            //AAIResourceUri allottedResourceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(execution.getVariable("globalSubscriberId")).serviceSubscription(execution.getVariable("subscriptionServiceType")).serviceInstance(sliceParams.suggestNsiId).allottedResource(allottedResourceId))
 
-        client.connect(allottedResourceUri, nsiServiceUri)
+            AAIResourceUri allottedResourceUri = execution.getVariable("allottedResourceUri") as AAIResourceUri
+            logger.debug("Creating Allotted resource relationship, allottedResourceUri: " + allottedResourceUri.toString())
+
+            client.connect(allottedResourceUri, nsiServiceUri)
+        } catch (BpmnError e) {
+            throw e
+        } catch (Exception ex) {
+            msg = "Exception in DoAllocateNSIandNSSI.createRelationship. " + ex.getMessage()
+            logger.info(msg)
+            exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg)
+        }
+        logger.debug("Exit createRelationship in DoAllocateNSIandNSSI")
     }
 
     /**
@@ -194,7 +212,10 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         String nsiServiceInstanceID = sliceParams.getSuggestNsiId()
         //sliceParams.setServiceId(nsiServiceInstanceID)
 
-        AAIResourceUri nsiServiceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(execution.getVariable("globalSubscriberId")).serviceSubscription(execution.getVariable("subscriptionServiceType")).serviceInstance(nsiServiceInstanceID))
+        AAIResourceUri nsiServiceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business()
+                .customer(execution.getVariable("globalSubscriberId"))
+                .serviceSubscription(execution.getVariable("subscriptionServiceType"))
+                .serviceInstance(nsiServiceInstanceID))
 
         try {
             AAIResultWrapper wrapper = client.get(nsiServiceUri, NotFoundException.class)
@@ -205,8 +226,9 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
                 exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg)
             }
 
-            AAIResourceUri allottedResourceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(execution.getVariable("globalSubscriberId")).serviceSubscription(execution.getVariable("subscriptionServiceType")).serviceInstance(sliceParams.suggestNsiId).allottedResource(allottedResourceId))
-
+            //AAIResourceUri allottedResourceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(execution.getVariable("globalSubscriberId")).serviceSubscription(execution.getVariable("subscriptionServiceType")).serviceInstance(sliceParams.suggestNsiId).allottedResource(allottedResourceId))
+            AAIResourceUri allottedResourceUri = execution.getVariable("allottedResourceUri") as AAIResourceUri
+            logger.debug("updateRelationship Allotted resource relationship, allottedResourceUri: " + allottedResourceUri.toString())
             client.connect(allottedResourceUri, nsiServiceUri)
 
             execution.setVariable("sliceTaskParams", sliceParams)
@@ -231,8 +253,6 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         String serviceInstanceId = UUID.randomUUID().toString()
         execution.setVariable("ranSliceProfileInstanceId", serviceInstanceId) //todo:
 
-        String serviceType = ""
-        String serviceRole = "slice-profile"
         String oStatus = "deactivated"
 
         SliceTaskParamsAdapter sliceParams =
@@ -241,21 +261,15 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         sliceTaskInfo.setSliceInstanceId(serviceInstanceId)
 
         // create slice profile
-        ServiceInstance rspi = new ServiceInstance()
-        rspi.setServiceInstanceName(sliceTaskInfo.NSSTInfo.name)
-        rspi.setServiceType(serviceType)
-        rspi.setServiceRole(serviceRole)
-        rspi.setOrchestrationStatus(oStatus)
-        rspi.setModelInvariantId(sliceTaskInfo.NSSTInfo.invariantUUID)
-        rspi.setModelVersionId(sliceTaskInfo.NSSTInfo.UUID)
-        rspi.setInputParameters(execution.getVariable("uuiRequest"))
-        rspi.setWorkloadContext(execution.getVariable("useInterval"))
-        rspi.setEnvironmentContext(execution.getVariable("sNSSAI_id"))
+        ServiceInstance rspi = createSliceProfileInstance(sliceTaskInfo, oStatus)
 
         //timestamp format YYYY-MM-DD hh:mm:ss
         rspi.setCreatedAt(new Date(System.currentTimeMillis()).format("yyyy-MM-dd HH:mm:ss", TimeZone.getDefault()))
 
-        AAIResourceUri uri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(globalSubscriberId).serviceSubscription(subscriptionServiceType).serviceInstance(serviceInstanceId))
+        AAIResourceUri uri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business()
+                .customer(globalSubscriberId)
+                .serviceSubscription(subscriptionServiceType)
+                .serviceInstance(serviceInstanceId))
         client.create(uri, rspi)
 
         execution.setVariable("sliceTaskParams", sliceParams)
@@ -311,7 +325,9 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         allocateAnNssi.nsstId = sliceTaskInfo.NSSTInfo.UUID
         allocateAnNssi.nssiId = sliceTaskInfo.suggestNssiId
         allocateAnNssi.nssiName = sliceTaskInfo.NSSTInfo.name
-        allocateAnNssi.nsiInfo.nsiId = sliceParams.suggestNsiId
+        NsiInfo nsiInfo = new NsiInfo()
+        nsiInfo.nsiId = sliceParams.suggestNsiId
+        allocateAnNssi.nsiInfo = nsiInfo
 
         EsrInfo esrInfo = new EsrInfo()
         //todo: vendor and network
@@ -350,8 +366,6 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         String serviceInstanceId = UUID.randomUUID().toString()
         execution.setVariable("cnSliceProfileInstanceId", serviceInstanceId) //todo:
 
-        String serviceType = ""
-        String serviceRole = "slice-profile"
         String oStatus = "deactivated"
 
         SliceTaskParamsAdapter sliceParams =
@@ -360,23 +374,17 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         sliceTaskInfo.setSliceInstanceId(serviceInstanceId)
 
         // create slice profile
-        ServiceInstance rspi = new ServiceInstance()
-        rspi.setServiceInstanceName(sliceTaskInfo.NSSTInfo.name)
-        rspi.setServiceType(serviceType)
-        rspi.setServiceRole(serviceRole)
-        rspi.setOrchestrationStatus(oStatus)
-        rspi.setModelInvariantId(sliceTaskInfo.NSSTInfo.invariantUUID)
-        rspi.setModelVersionId(sliceTaskInfo.NSSTInfo.UUID)
-        rspi.setInputParameters(uuiRequest)
-        rspi.setWorkloadContext(useInterval)
-        rspi.setEnvironmentContext(sNSSAI_id)
+        ServiceInstance rspi = createSliceProfileInstance(sliceTaskInfo, oStatus)
 
         //timestamp format YYYY-MM-DD hh:mm:ss
         rspi.setCreatedAt(new Date(System.currentTimeMillis()).format("yyyy-MM-dd HH:mm:ss", TimeZone.getDefault()))
 
         execution.setVariable("communicationServiceInstance", rspi)
 
-        AAIResourceUri uri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(globalSubscriberId).serviceSubscription(subscriptionServiceType).serviceInstance(serviceInstanceId))
+        AAIResourceUri uri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business()
+                .customer(globalSubscriberId)
+                .serviceSubscription(subscriptionServiceType)
+                .serviceInstance(serviceInstanceId))
         client.create(uri, rspi)
         execution.setVariable("sliceTaskParams", sliceParams)
     }
@@ -404,7 +412,11 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         sliceProfile.setProfileId(profileId)
         sliceProfile.setCoverageAreaTAList(cnSliceProfile.coverageAreaTAList as String)
         //todo:...
-        AAIResourceUri uri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(globalSubscriberId).serviceSubscription(subscriptionServiceType).serviceInstance(sliceTaskInfo.sliceInstanceId).sliceProfile(profileId))
+        AAIResourceUri uri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business()
+                .customer(globalSubscriberId)
+                .serviceSubscription(subscriptionServiceType)
+                .serviceInstance(sliceTaskInfo.sliceInstanceId)
+                .sliceProfile(profileId))
         client.create(uri, sliceProfile)
         execution.setVariable("sliceTaskParams", sliceParams)
     }
@@ -427,7 +439,9 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         allocateCnNssi.nssiId = sliceTaskInfo.suggestNssiId
         allocateCnNssi.nssiName = sliceTaskInfo.NSSTInfo.name
         allocateCnNssi.sliceProfile = sliceTaskInfo.sliceProfile.trans2CnProfile()
-        allocateCnNssi.nsiInfo.nsiId = sliceParams.suggestNsiId
+        NsiInfo nsiInfo = new NsiInfo()
+        nsiInfo.nsiId = sliceParams.suggestNsiId
+        allocateCnNssi.nsiInfo = nsiInfo
 
         EsrInfo esrInfo = new EsrInfo()
         //todo: vendor and network
@@ -464,8 +478,6 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         String globalSubscriberId = execution.getVariable("globalSubscriberId")
         String subscriptionServiceType = execution.getVariable("subscriptionServiceType")
 
-        String serviceType = ""
-        String serviceRole = "slice-profile"
         String oStatus = "deactivated"
 
         SliceTaskParamsAdapter sliceParams =
@@ -478,23 +490,17 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         //execution.setVariable("cnSliceProfileInstanceId", serviceInstanceId) //todo:
 
         // create slice profile
-        ServiceInstance rspi = new ServiceInstance()
-        rspi.setServiceInstanceName(sliceTaskInfo.NSSTInfo.name)
-        rspi.setServiceType(serviceType)
-        rspi.setServiceRole(serviceRole)
-        rspi.setOrchestrationStatus(oStatus)
-        rspi.setModelInvariantId(sliceTaskInfo.NSSTInfo.invariantUUID)
-        rspi.setModelVersionId(sliceTaskInfo.NSSTInfo.UUID)
-        rspi.setInputParameters(uuiRequest)
-        rspi.setWorkloadContext(useInterval)
-        rspi.setEnvironmentContext(sNSSAI_id)
+        ServiceInstance rspi = createSliceProfileInstance(sliceTaskInfo, oStatus)
 
         //timestamp format YYYY-MM-DD hh:mm:ss
         rspi.setCreatedAt(new Date(System.currentTimeMillis()).format("yyyy-MM-dd HH:mm:ss", TimeZone.getDefault()))
 
         execution.setVariable("communicationServiceInstance", rspi)
 
-        AAIResourceUri uri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(globalSubscriberId).serviceSubscription(subscriptionServiceType).serviceInstance(serviceInstanceId))
+        AAIResourceUri uri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business()
+                .customer(globalSubscriberId)
+                .serviceSubscription(subscriptionServiceType)
+                .serviceInstance(serviceInstanceId))
         client.create(uri, rspi)
 
         execution.setVariable("sliceTaskParams", sliceParams)
@@ -521,7 +527,11 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         SliceProfile sliceProfile = new SliceProfile()
         sliceProfile.setProfileId(profileId)
         //todo:...
-        AAIResourceUri uri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(globalSubscriberId).serviceSubscription(subscriptionServiceType).serviceInstance(sliceTaskInfo.sliceInstanceId).sliceProfile(profileId))
+        AAIResourceUri uri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business()
+                .customer(globalSubscriberId)
+                .serviceSubscription(subscriptionServiceType)
+                .serviceInstance(sliceTaskInfo.sliceInstanceId)
+                .sliceProfile(profileId))
         client.create(uri, sliceProfile)
 
         execution.setVariable("sliceTaskParams", sliceParams)
@@ -656,7 +666,10 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
                 execution.getVariable("sliceTaskParams") as SliceTaskParamsAdapter
 
         //sliceParams.setServiceId(nsiServiceInstanceID)
-        AAIResourceUri nsiServiceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(execution.getVariable("globalSubscriberId")).serviceSubscription(execution.getVariable("subscriptionServiceType")).serviceInstance(nssiId))
+        AAIResourceUri nsiServiceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business()
+                .customer(execution.getVariable("globalSubscriberId"))
+                .serviceSubscription(execution.getVariable("subscriptionServiceType"))
+                .serviceInstance(nssiId))
 
         String endpointId = null
 
@@ -733,14 +746,39 @@ class DoAllocateNSIandNSSI extends AbstractServiceTaskProcessor{
         //relation ship
         Relationship relationship = new Relationship()
 
-        AAIResourceUri targetInstanceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(execution.getVariable("globalSubscriberId")).serviceSubscription(execution.getVariable("subscriptionServiceType")).serviceInstance(targetId))
+        AAIResourceUri targetInstanceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business()
+                .customer(execution.getVariable("globalSubscriberId"))
+                .serviceSubscription(execution.getVariable("subscriptionServiceType"))
+                .serviceInstance(targetId))
 
         logger.info("Creating relationship, targetInstanceUri: " + targetInstanceUri)
 
         relationship.setRelatedLink(targetInstanceUri.build().toString())
 
-        AAIResourceUri sourceInstanceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business().customer(execution.getVariable("globalSubscriberId")).serviceSubscription(execution.getVariable("subscriptionServiceType")).serviceInstance(sourceId)).relationshipAPI()
+        AAIResourceUri sourceInstanceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.business()
+                .customer(execution.getVariable("globalSubscriberId"))
+                .serviceSubscription(execution.getVariable("subscriptionServiceType"))
+                .serviceInstance(sourceId))
+                .relationshipAPI()
         client.create(sourceInstanceUri, relationship)
     }
 
+    static def createSliceProfileInstance(SliceTaskInfo<SliceProfileAdapter> sliceTaskInfo, String oStatus) {
+        // create slice profile
+        ServiceInstance rspi = new ServiceInstance()
+        rspi.setServiceInstanceName(sliceTaskInfo.NSSTInfo.name)
+        rspi.setServiceType(sliceTaskInfo.sliceProfile.getSST())
+        rspi.setServiceRole("slice-profile-instance")
+        rspi.setOrchestrationStatus(oStatus)
+        rspi.setServiceInstanceLocationId(sliceTaskInfo.sliceProfile.getPLMNIdList())
+        rspi.setModelInvariantId(sliceTaskInfo.NSSTInfo.invariantUUID)
+        rspi.setModelVersionId(sliceTaskInfo.NSSTInfo.UUID)
+        rspi.setWorkloadContext(sliceTaskInfo.subnetType.subnetType)
+        rspi.setEnvironmentContext(sliceTaskInfo.sliceProfile.getSNSSAIList())
+
+        //timestamp format YYYY-MM-DD hh:mm:ss
+        rspi.setCreatedAt(new Date(System.currentTimeMillis()).format("yyyy-MM-dd HH:mm:ss", TimeZone.getDefault()))
+        return rspi
+    }
+
 }
index fc80a9f..ec70bd3 100644 (file)
@@ -246,6 +246,7 @@ class DoCreateSliceServiceInstance extends AbstractServiceTaskProcessor{
 
                 client.create(allottedResourceUri, resource)
 
+                execution.setVariable("allottedResourceId", allottedResourceId)
             }
 
         }catch (Exception ex) {
index a1f9a83..1a9281f 100644 (file)
@@ -44,6 +44,8 @@ css.processUserOptions(execution)</bpmn:script>
         <camunda:in source="sliceTaskParams" target="sliceTaskParams" />
         <camunda:in source="sliceTaskParams" target="sliceTaskParams" />
         <camunda:out source="sliceTaskParams" target="sliceTaskParams" />
+        <camunda:out source="allottedResourceId" target="allottedResourceId" />
+        <camunda:out source="allottedResourceUri" target="allottedResourceUri" />
       </bpmn:extensionElements>
       <bpmn:incoming>SequenceFlow_1dfon41</bpmn:incoming>
       <bpmn:outgoing>SequenceFlow_0jhqtls</bpmn:outgoing>
@@ -281,6 +283,7 @@ css.prepareUpdateOrchestrationTask(execution)</bpmn:script>
         <camunda:out source="rolledBack" target="rolledBack" />
         <camunda:in source="allottedResourceId" target="allottedResourceId" />
         <camunda:out source="sliceTaskParams" target="sliceTaskParams" />
+        <camunda:in source="allottedResourceUri" target="allottedResourceUri" />
       </bpmn:extensionElements>
       <bpmn:incoming>SequenceFlow_1bevt3a</bpmn:incoming>
       <bpmn:outgoing>SequenceFlow_0mlrlbv</bpmn:outgoing>
index d68a374..1fa84ee 100644 (file)
@@ -23,11 +23,14 @@ package org.onap.so.beans.nsmf;
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
+import java.io.Serializable;
 import java.util.List;
 
 @JsonInclude(JsonInclude.Include.NON_NULL)
 @Data
-public class CnSliceProfile {
+public class CnSliceProfile implements Serializable {
+
+    private static final long serialVersionUID = 6627071735572539536L;
 
     @JsonProperty(value = "sNSSAIList", required = true)
     private List<String> snssaiList;
index 1effb4e..3f0da1b 100644 (file)
@@ -23,11 +23,14 @@ package org.onap.so.beans.nsmf;
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
+import java.io.Serializable;
 import java.util.List;
 
 @JsonInclude(JsonInclude.Include.NON_NULL)
 @Data
-public class TnSliceProfile {
+public class TnSliceProfile implements Serializable {
+
+    private static final long serialVersionUID = 3767943556195823439L;
 
     private String sliceProfileId;