2 xmlns='http://www.onap.org/sdnc/svclogic'
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}'>
4 <method rpc='cll-vnf-topology-operation-cll-delete-VPNBs' mode='sync'>
7 <parameter name='allNetworksList.' value='' />
9 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
10 resource="network-resources"
11 key="selflink = 'https://aai.onap:8443/aai/v24/network/network-resources?depth=0'"
13 pfx="allNetworksList" >
14 <outcome value='success'></outcome>
15 <outcome value='Other'></outcome>
16 <outcome value='not-found'></outcome>
18 <for index='netwidx' start='0' end='`$allNetworksList.network-resource_length`' >
19 <switch test='`$allNetworksList.network-resource[$netwidx].provider-id == $param-prefix-domainA-pnfName[2]`'>
20 <outcome value='true'>
21 <switch test='`$allNetworksList.network-resource[$netwidx].te-topo-id != $param-prefix-domainA-pnfName[6]`'>
22 <outcome value='true'>
24 <parameter name='otnTopoIdSrc' value='`$allNetworksList.network-resource[$netwidx].te-topo-id`' />
32 <parameter name='tmp.pce-src-node.' value='' />
35 <!--<parameter name='tmp.pce-src-node' value="`$param-prefix-domainA-pnfName[0] + '-' +-->
36 <!-- $param-prefix-domainA-pnfName[1] + '-' +-->
37 <!-- $param-prefix-domainA-pnfName[2] + '-' +-->
38 <!-- $param-prefix-domainA-pnfName[3] + '-' +-->
39 <!-- $param-prefix-domainA-pnfName[4] + '-' +-->
40 <!-- $param-prefix-domainA-pnfName[5] + '-' +-->
42 <!-- $param-prefix-domainA-pnfName[7] + '-' +-->
43 <!-- $param-prefix-domainA-pnfName[8]`" />-->
44 <parameter name='tmp.pce-src-node' value="`$param-prefix-domainA-pnfName[0] + '-' +
45 $param-prefix-domainA-pnfName[1] + '-' +
46 $param-prefix-domainA-pnfName[2] + '-' +
47 $param-prefix-domainA-pnfName[3] + '-' +
48 $param-prefix-domainA-pnfName[4] + '-' +
49 $param-prefix-domainA-pnfName[5] + '-' +
51 $param-prefix-domainA-pnfName[7] + '-' +
52 $param-prefix-domainA-pnfName[8]`" />
55 <!--<parameter name='tmp.srcTtpOtnLayer' value="`$tmp.pce-src-node + '-' + -->
56 <!-- $param-prefix-domainA[$param-prefix-domainA_length -2] + '-' +-->
57 <!-- $tmp.source.ttp-id`" />-->
58 <parameter name='tmp.srcTtpOtnLayer' value="`$tmp.pce-src-node`" />
60 <for index='rel-index' start='0' end='`$middle-man-conn.relationship-list.relationship_length`' >
61 <switch test='`$middle-man-conn.relationship-list.relationship[$rel-index].related-to`'>
62 <outcome value='connectivity'>
63 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
64 resource="connectivity"
65 key="connectivity.connectivity-id = $middle-man-conn.relationship-list.relationship[$rel-index].relationship-data[0].relationship-value"
67 pfx="tmp.aai.connectivity" >
68 <outcome value='not-found'></outcome>
69 <outcome value='failure'></outcome>
70 <outcome value='success'>
72 <for silentFailure='true' index='cridx' start='0' end='`$tmp.aai.connectivity.relationship-list.relationship_length`' >
73 <switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>
74 <outcome value='vpn-binding'>
76 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
77 resource="vpn-binding"
78 key="vpn-binding.vpn-id = $tmp.aai.connectivity.relationship-list.relationship[$cridx].relationship-data[0].relationship-value"
80 pfx="tmp.aai.vpn-binding" >
81 <outcome value='success'>
83 <switch test="`$tmp.aai.vpn-binding.ops-note == $tmp.srcTtpOtnLayer `">
84 <outcome value='true'>
87 <parameter name='tmp.underlayOTN' value="`$tmp.aai.vpn-binding.vpn-name`" />
90 <parameter name='tmp.domain.pnf-name' value="`'networkId-providerId-' +
91 $tmp.aai.vpn-binding.access-provider-id + '-clientId-' +
92 $tmp.aai.vpn-binding.access-client-id + '-topologyId-' +
93 $tmp.aai.vpn-binding.access-topology-id + '-nodeId-' +
94 $tmp.aai.vpn-binding.src-access-node-id`" />
96 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
98 key="pnf.pnf-name = $tmp.domain.pnf-name"
99 pfx='tmp.aai.source-pnf' local-only='false' >
100 <!--AND depth = '0'"-->
101 <outcome value='success'>
103 <for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.source-pnf.relationship-list.relationship_length`' >
104 <switch test='`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].related-to`'>
105 <outcome value='esr-thirdparty-sdnc'>
106 <block atomic="true">
108 <parameter name='tmp.domain.esr-thirdparty-id' value="`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`" />
110 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
111 resource="esr-thirdparty-sdnc"
112 key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.domain.esr-thirdparty-id AND
114 pfx='tmp.aai.domain.esr-thirdparty-sdnc' local-only='false' >
115 <outcome value='success'>
118 <parameter name='prop.sdncRestApi.thirdpartySdnc.domain.url' value="`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
119 <parameter name='prop.sdncRestApi.thirdpartySdnc.domain.user' value="`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
120 <parameter name='prop.sdncRestApi.thirdpartySdnc.domain.password' value="`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
121 <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->
122 <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->
123 <!--<parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />-->
124 <!--<parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />-->
125 <!--<parameter name="format" value="json"/>-->
126 <!--<parameter name="httpMethod" value="get"/>-->
127 <!--<parameter name="responsePrefix" value="topology"/>-->
128 <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
129 <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
130 <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
131 <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
135 <outcome value='not-found'>
136 <return status='failure'>
137 <parameter name='ack-final' value='Y'/>
138 <parameter name="error-code" value="500" />
139 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
142 <outcome value='Other'>
143 <return status='failure'>
144 <parameter name='ack-final' value='Y'/>
145 <parameter name="error-code" value="500" />
146 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
157 <outcome value='not-found'>
158 <return status='failure'>
159 <parameter name='ack-final' value='Y'/>
160 <parameter name="error-code" value="500" />
161 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
164 <outcome value='Other'>
165 <return status='failure'>
166 <parameter name='ack-final' value='Y'/>
167 <parameter name="error-code" value="500" />
168 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
172 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
173 <!--<parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.ts-otn-src-domain-creation.templatefile`" />-->
174 <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domain.url + '/restconf/data/ietf-te:te/tunnels/tunnel=' + $tmp.aai.vpn-binding.vpn-name`" />
175 <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domain.user`" />
176 <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domain.password`" />
177 <parameter name="format" value="json"/>
178 <parameter name="httpMethod" value="delete"/>
179 <parameter name="responsePrefix" value="otn-oof"/>
180 <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
181 <parameter name="trustStorePassword" value="adminadmin"/>
182 <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
183 <parameter name="keyStorePassword" value="adminadmin"/>
184 <parameter name='customHttpHeaders' value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />
185 <outcome value='success'>
186 <block atomic="true"></block>
188 <outcome value='failure'>
189 <return status='failure'>
190 <parameter name='ack-final' value='Y'/>
191 <parameter name="error-code" value="500" />
192 <parameter name="error-message" value="Error executing delete OTN tunnel rest api" />
196 <delete plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
197 key='vpn-binding.vpn-id = $tmp.aai.vpn-binding.vpn-id' ></delete>
200 <outcome value='false'></outcome>
204 <outcome value='not-found'>
205 <return status='failure'>
206 <parameter name='ack-final' value='Y'/>
207 <parameter name="error-code" value="500" />
208 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.l3vpn.pe1_id`" />
211 <outcome value='failure'>
212 <return status='failure'>
213 <parameter name='error-code' value='' />
214 <parameter name='error-message' value='' />