2         xmlns='http://www.onap.org/sdnc/svclogic'
\r 
   3         xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>
\r 
   4     <method rpc='tsli-vnf-topology-operation-trans-slice-deactivate' mode='sync'>
\r 
   5         <block atomic="true">
\r 
   6             <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
\r 
   7                 <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
\r 
   8                 <parameter name='contextPrefix' value='prop' />
\r 
  10             <!--<get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" -->
\r 
  11             <!--        resource="service-instance"-->
\r 
  12             <!--        key='service-instance.service-instance-id = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.service-instance-id-->
\r 
  13             <!--         AND customer.global-customer-id = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.global-customer-id -->
\r 
  14             <!--         AND service-subscription.service-type = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.subscription-service-type'-->
\r 
  15             <!--        local-only="false"-->
\r 
  16             <!--        force="true" pfx="tmp.aai.service-instance">-->
\r 
  17             <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r 
  18                           resource="service-instance"
\r 
  19                           key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id
\r 
  20          AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
\r 
  21          AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type'
\r 
  23                           force="true" pfx="tmp.aai.service-instance">
\r 
  24                 <!--vnf-topology-operation-input.service-information.service-instance-id-->
\r 
  25                 <outcome value='success'>
\r 
  26                     <for index='rel-index' start='0' end='`$tmp.aai.service-instance.relationship-list.relationship_length`' >
\r 
  27                         <switch test='`$tmp.aai.service-instance.relationship-list.relationship[$rel-index].related-to`'>
\r 
  28                             <outcome value='connectivity'>
\r 
  29                                 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r 
  30                                               resource="connectivity"
\r 
  31                                               key="connectivity.connectivity-id = $tmp.aai.service-instance.relationship-list.relationship[$rel-index].relationship-data[0].relationship-value"
\r 
  33                                               pfx="tmp.aai.connectivity" >
\r 
  34                                     <outcome value='success'>
\r 
  35                                         <for silentFailure='true' index='cridx' start='0' end='`$tmp.aai.connectivity.relationship-list.relationship_length`' >
\r 
  36                                             <switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>
\r 
  37                                                 <outcome value='vpn-binding'>
\r 
  38                                                     <block atomic="true">
\r 
  39                                                         <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r 
  40                                                                       resource="vpn-binding"
\r 
  41                                                                       key="vpn-binding.vpn-id = $tmp.aai.connectivity.relationship-list.relationship[$cridx].relationship-data[0].relationship-value"
\r 
  43                                                                       pfx="tmp.aai.vpn-binding" >
\r 
  44                                                             <outcome value='success'>
\r 
  45                                                                 <block atomic="true">
\r 
  47                                                                         <parameter name='tmp.domain.pnf-name' value="`'networkId-providerId-' +
\r 
  48                                                    $tmp.aai.vpn-binding.access-provider-id + '-clientId-' +
\r 
  49                                                    $tmp.aai.vpn-binding.access-client-id + '-topologyId-' +
\r 
  50                                                    $tmp.aai.vpn-binding.access-topology-id + '-nodeId-' +
\r 
  51                                                    $tmp.aai.vpn-binding.src-access-node-id`" />
\r 
  53                                                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r 
  55                                                                                   key="pnf.pnf-name = $tmp.domain.pnf-name"
\r 
  56                                                                                   pfx='tmp.aai.source-pnf' local-only='false' >
\r 
  57                                                                         <!--AND depth = '0'"-->
\r 
  58                                                                         <outcome value='success'>
\r 
  60                                                                                 <for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.source-pnf.relationship-list.relationship_length`' >
\r 
  61                                                                                     <switch test='`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].related-to`'>
\r 
  62                                                                                         <outcome value='esr-thirdparty-sdnc'>
\r 
  63                                                                                             <block atomic="true">
\r 
  65                                                                                                     <parameter name='tmp.domain.esr-thirdparty-id' value="`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`" />
\r 
  67                                                                                                 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
\r 
  68                                                                                                               resource="esr-thirdparty-sdnc"
\r 
  69                                                                                                               key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.domain.esr-thirdparty-id AND
\r 
  71                                                                                                               pfx='tmp.aai.domain.esr-thirdparty-sdnc' local-only='false' >
\r 
  72                                                                                                     <outcome value='success'>
\r 
  75                                                                                                                 <parameter name='prop.sdncRestApi.thirdpartySdnc.domain.url' value="`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
\r 
  76                                                                                                                 <parameter name='prop.sdncRestApi.thirdpartySdnc.domain.user' value="`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
\r 
  77                                                                                                                 <parameter name='prop.sdncRestApi.thirdpartySdnc.domain.password' value="`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
\r 
  78                                                                                                                 <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->
\r 
  79                                                                                                                 <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->
\r 
  80                                                                                                                 <!--<parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />-->
\r 
  81                                                                                                                 <!--<parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />-->
\r 
  82                                                                                                                 <!--<parameter name="format" value="json"/>-->
\r 
  83                                                                                                                 <!--<parameter name="httpMethod" value="get"/>-->
\r 
  84                                                                                                                 <!--<parameter name="responsePrefix" value="topology"/>-->
\r 
  85                                                                                                                 <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
\r 
  86                                                                                                                 <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
\r 
  87                                                                                                                 <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
\r 
  88                                                                                                                 <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
\r 
  92                                                                                                     <outcome value='not-found'>
\r 
  93                                                                                                         <return status='failure'>
\r 
  94                                                                                                             <parameter name='ack-final' value='Y'/>
\r 
  95                                                                                                             <parameter name="error-code" value="500" />
\r 
  96                                                                                                             <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
\r 
  99                                                                                                     <outcome value='Other'>
\r 
 100                                                                                                         <return status='failure'>
\r 
 101                                                                                                             <parameter name='ack-final' value='Y'/>
\r 
 102                                                                                                             <parameter name="error-code" value="500" />
\r 
 103                                                                                                             <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
\r 
 114                                                                         <outcome value='not-found'>
\r 
 115                                                                             <return status='failure'>
\r 
 116                                                                                 <parameter name='ack-final' value='Y'/>
\r 
 117                                                                                 <parameter name="error-code" value="500" />
\r 
 118                                                                                 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
\r 
 121                                                                         <outcome value='Other'>
\r 
 122                                                                             <return status='failure'>
\r 
 123                                                                                 <parameter name='ack-final' value='Y'/>
\r 
 124                                                                                 <parameter name="error-code" value="500" />
\r 
 125                                                                                 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
\r 
 129                                                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r 
 130                                                                         <!--<parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.ts-otn-src-domain-creation.templatefile`" />-->
\r 
 131                                                                         <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domain.url + '/restconf/data/ietf-te:te/tunnels/tunnel=' + $tmp.aai.vpn-binding.vpn-name`" />
\r 
 132                                                                         <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domain.user`" />
\r 
 133                                                                         <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domain.password`" />
\r 
 134                                                                         <parameter name="format" value="json"/>
\r 
 135                                                                         <parameter name="httpMethod" value="delete"/>
\r 
 136                                                                         <parameter name="responsePrefix" value="otn-oof"/>
\r 
 137                                                                         <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
\r 
 138                                                                         <parameter name="trustStorePassword" value="adminadmin"/>
\r 
 139                                                                         <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
\r 
 140                                                                         <parameter name="keyStorePassword" value="adminadmin"/>
\r 
 141                                                                         <parameter name='customHttpHeaders' value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />
\r 
 142                                                                         <outcome value='failure'>
\r 
 143                                                                             <return status='failure'>
\r 
 144                                                                                 <parameter name='ack-final' value='Y'/>
\r 
 145                                                                                 <parameter name="error-code" value="500" />
\r 
 146                                                                                 <parameter name="error-message" value="Error executing delete OTN tunnel rest api" />
\r 
 149                                                                         <outcome value='success'>
\r 
 150                                                                             <block atomic="true"></block>
\r 
 153                                                                     <switch test='`$tmp.aai.connectivity.etht-svc-name`'>
\r 
 154                                                                         <outcome value='Other'>
\r 
 155                                                                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
\r 
 156                                                                                 <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domain.url + '/restconf/data/ietf-eth-tran-service:etht-svc/etht-svc-instances=' + $tmp.aai.connectivity.etht-svc-name`" />
\r 
 157                                                                                 <!--<parameter name="restapiUrl" value="`$prop.restapi.connection-oof-url`" />-->
\r 
 158                                                                                 <!--<parameter name="templateFileName" value="`$prop.restapi.templateDir + '/sotn-ethernet-service.json'`" />-->
\r 
 159                                                                                 <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domain.user`" />
\r 
 160                                                                                 <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domain.password`" />
\r 
 161                                                                                 <parameter name="format" value="json"/>
\r 
 162                                                                                 <parameter name="httpMethod" value="delete"/>
\r 
 163                                                                                 <parameter name='dirPath' value="/opt/onap/sdnc/restconfapi/yang" />
\r 
 164                                                                                 <parameter name="responsePrefix" value="vpn-result"/>
\r 
 165                                                                                 <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
\r 
 166                                                                                 <parameter name="trustStorePassword" value="adminadmin"/>
\r 
 167                                                                                 <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
\r 
 168                                                                                 <parameter name="keyStorePassword" value="adminadmin"/>
\r 
 169                                                                                 <outcome value='failure'>
\r 
 170                                                                                     <return status='failure'>
\r 
 171                                                                                         <parameter name='ack-final' value='Y'/>
\r 
 172                                                                                         <parameter name="error-code" value="500" />
\r 
 173                                                                                         <parameter name="error-message" value="Error executing delete ethernet service rest api" />
\r 
 176                                                                                 <outcome value='success'>
\r 
 177                                                                                     <block atomic="true">
\r 
 178                                                                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
\r 
 179                                                                                                 key='vpn-binding.vpn-id = $tmp.aai.vpn-binding.vpn-id' >
\r 
 180                                                                                             <parameter name='vpn-id' value='`$tmp.aai.vpn-binding.vpn-id`' />
\r 
 181                                                                                             <parameter name='vpn-name' value='`$tmp.aai.vpn-binding.vpn-name`' />
\r 
 182                                                                                             <parameter name='operational-status' value='Deactivated' />
\r 
 184                                                                                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
\r 
 185                                                                                                 key='connectivity.connectivity-id = $tmp.aai.connectivity.connectivity-id'>
\r 
 186                                                                                             <parameter name='connectivity-id' value='`$tmp.aai.connectivity.connectivity-id`' />
\r 
 187                                                                                             <parameter name='operational-status' value='Deactivated' />
\r 
 193                                                                         <outcome value=''></outcome>
\r 
 197                                                             <outcome value='not-found'>
\r 
 198                                                                 <return status='failure'>
\r 
 199                                                                     <parameter name='ack-final' value='Y'/>
\r 
 200                                                                     <parameter name="error-code" value="500" />
\r 
 201                                                                     <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.l3vpn.pe1_id`" />
\r 
 204                                                             <outcome value='failure'>
\r 
 205                                                                 <return status='failure'>
\r 
 206                                                                     <parameter name='error-code' value='' />
\r 
 207                                                                     <parameter name='error-message' value='' />
\r 
 216                                     <outcome value='not-found'>
\r 
 217                                         <return status='failure'>
\r 
 218                                             <parameter name='ack-final' value='Y'/>
\r 
 219                                             <parameter name="error-code" value="500" />
\r 
 220                                             <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.l3vpn.pe1_id`" />
\r 
 223                                     <outcome value='failure'>
\r 
 224                                         <return status='failure'>
\r 
 225                                             <parameter name='error-code' value='' />
\r 
 226                                             <parameter name='error-message' value='' />
\r 
 234                 <outcome value='not-found'>
\r 
 235                     <return status='failure'>
\r 
 236                         <parameter name='ack-final' value='Y'/>
\r 
 237                         <parameter name="error-code" value="500" />
\r 
 238                         <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.l3vpn.pe1_id`" />
\r 
 241                 <outcome value='failure'>
\r 
 242                     <return status='failure'>
\r 
 243                         <parameter name='error-code' value='' />
\r 
 244                         <parameter name='error-message' value='' />
\r 
 248             <return status='success'>
\r 
 249                 <parameter name="ack-final-indicator" value="Y" />
\r 
 250                 <parameter name="error-code" value="200" />
\r 
 251                 <parameter name="error-message" value="`$error-message`" />
\r