You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Current »


Service Delete Diagram

Service Delete Diagram

Detailed Description:

Step no.Subcomponent/ClassmethodRequirement ReferenceImpact DescriptionActions(Logic)
1

/restconf/operations/opticalservice:optical-service-delete


1SO invokes Service Delete API of SDNC
  • optical-service-delete RPC will be invoked by SO to delete service
2

check the status of the request in DB

if (a) "Other than Created"


2.cDelete Service instance from AAI

<delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource='service-instance'
key='customer.global-customer-id = $optical-service-delete-input.global-customer-id AND
service-subscription.service-type = $optical-service-delete-input.service-type AND
service-instance.service-instance-id = $instance'>


3.aopticalservice:optical-service-delete
2.c
Send sync response to SO(RPC response)

Actions to be performed in DG[opticalservice:optical-service-delete]:

Step no.Subcomponent/Classplugin/adaptormethodRequirement ReferenceDescriptionActions(Logic)
4.opticalservice:optical-service-deleteorg.onap.ccsdk.sli.plugins.restapicall.RestapiCallNodesendRequest2.dSend Service delete Request to Virtuora Controller

<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
<parameter name="templateFileName" value="/opt/onap/sdnc/restapi/templates/optical-service-delete-msa.json" />
<parameter name="restapiUrl" value="https://167.254.204.115:8443/cxf/openroadm/openroadm-services/ + '`$optical-service-delete-input.payload.service-name`'"/>
<parameter name='restapiUser' value='admin' />
<parameter name='restapiPassword' value='admin' />
<parameter name="httpMethod" value="DELETE"/>
<parameter name="responsePrefix" value="service-delete-response"/>
<parameter name='contentType' value='application/json' />
<parameter name='format' value='json' />
<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.msa.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>



Synchronous Response from Virtuora Controller:

Sync success response
Step no.Subcomponent/Classplugin/adaptormethodRequirement ReferenceDescriptionActions(Logic)
5.a(i)opticalservice:optical-service-deleteorg.onap.ccsdk.sli.adaptors.aai.AAIService
3.bupdate Domain Service instance in AAI<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='deleteResource'>
<parameter name="Orchestration status " value="deleting ">
5.a.(ii)opticalservice:optical-service-deleteorg.onap.ccsdk.sli.adaptors.resource.sql.SqlResource

Update request_status in Config DB<save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
key = 'UPDATE sdnc_mdons SET request_status=$sdnc_mdons.request_status where request_id=$sdnc_mdons.request_id'
force='true' pfx='save-result'>
Status: DELETING
5.a(iii)opticalservice:optical-service-delete

3.aPublish notification to SO

Send response (RPC response to SO)

{
 "output": {
    "response-code": "200",
    "response-message": "Service Deletion in progress."
  }
}


Sync failure response
Step no.Subcomponent/Classplugin/adaptormethodRequirement ReferenceDescriptionActions(Logic)
5.b. opticalservice:optical-service-delete





3.apublish sync failure message to SO

Send response (RPC response to SO)

{
  "output": {
    "response-code": "500",
    "response-message": "Service cannot be deleted."
  }
}

Asynchronous Response from Virtuora Controller:

Async success response
Step no.Subcomponent/Classplugin/adaptormethodRequirement ReferenceDescriptionActions(Logic)
6.a.(i)

opticalservice:

AsyncNotificationHandling.java

org.onap.ccsdk.sli.adaptors.aai.AAIService

delete service-instance entry in AAI

Capacity:

available_capacity = avaialble_capacity+rate

under p-interface and logical-link

<delete plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='deletedResource'>
<parameter name="Orchestration status " value="deleting ">

opticalservice:

AsyncNotificationHandling.java

org.onap.ccsdk.sli.adaptors.aai.AAIService

Update network-interface-type under p-interface (available)<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='deletedResource'>
<parameter name="network-interface " value="save ">
6.a(ii)

opticalservice:

AsyncNotificationHandling.java

org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource
4.cDelete an entry from Config DB<delete plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
key = 'Delete * from sdnc_mdons where request_id=$sdnc_mdons.request_id'
force='true' pfx='save-result'>
6.a(iii)

opticalservice:

AsyncNotificationHandling.java




4.apublish async success message to SO

{

     "configuration-response-common":{

         "request-id":"3e35dcad-8e2d-420a-b434-822daa38b2ff",

         "response-code":"200",

         "response-message":"SUCCESS",

         "ack-final-indicator":"Y"

      }

}

Async failure response
Step no.Subcomponent/Classplugin/adaptormethodRequirement ReferenceDescriptionActions(Logic)
6.b(i)

opticalservice:

AsyncNotificationHandling.java

org.onap.ccsdk.sli.adaptors.aai.AAIService

Update service-instance in AAI

No operation on available_capacity

<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='deletedResource'>
<parameter name="Orchestration status " value="Created ">
6.b(ii)

opticalservice:

AsyncNotificationHandling.java

org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource

Update request_status in Config DB<save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
key = 'UPDATE sdnc_mdons SET request_status=$sdnc_mdons.request_status where request_id=$sdnc_mdons.request_id'
force='true' pfx='save-result'>
Status: CREATED
6.b(iii)

opticalservice:

AsyncNotificationHandling.java




Post notification to SO

{

      "configuration-response-common":{

         "request-id":"3e35dcad-8e2d-420a-b434-822daa38b2ff",

         "response-code":"500",

         "response-message":"Failure",

         "ack-final-indicator":"Y"

      }

}


  • No labels