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='p2p-vnf-topology-operation-p2p-delete' mode='sync'>
6 <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
7 <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
8 <parameter name='contextPrefix' value='prop' />
10 <!--<get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" -->
11 <!-- resource="service-instance"-->
12 <!-- key='service-instance.service-instance-id = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.service-instance-id-->
13 <!-- AND customer.global-customer-id = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.global-customer-id -->
14 <!-- AND service-subscription.service-type = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.subscription-service-type'-->
15 <!-- local-only="false"-->
16 <!-- force="true" pfx="tmp.aai.service-instance">-->
17 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
18 resource="service-instance"
19 key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id
20 AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
21 AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type'
23 force="true" pfx="tmp.aai.service-instance">
24 <!--vnf-topology-operation-input.service-information.service-instance-id-->
25 <outcome value='success'>
26 <for index='rel-index' start='0' end='`$tmp.aai.service-instance.relationship-list.relationship_length`' >
27 <switch test='`$tmp.aai.service-instance.relationship-list.relationship[$rel-index].related-to`'>
28 <outcome value='connectivity'>
29 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
30 resource="connectivity"
31 key="connectivity.connectivity-id = $tmp.aai.service-instance.relationship-list.relationship[$rel-index].relationship-data[0].relationship-value"
33 pfx="tmp.aai.connectivity" >
34 <outcome value='success'>
35 <for silentFailure='true' index='cridx' start='0' end='`$tmp.aai.connectivity.relationship-list.relationship_length`' >
36 <switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>
37 <outcome value='vpn-binding'>
39 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
40 resource="vpn-binding"
41 key="vpn-binding.vpn-id = $tmp.aai.connectivity.relationship-list.relationship[$cridx].relationship-data[0].relationship-value"
43 pfx="tmp.aai.vpn-binding" >
44 <outcome value='success'>
47 <parameter name='tmp.domain.pnf-name' value="`'networkId-providerId-' +
48 $tmp.aai.vpn-binding.access-provider-id + '-clientId-' +
49 $tmp.aai.vpn-binding.access-client-id + '-topologyId-' +
50 $tmp.aai.vpn-binding.access-topology-id + '-nodeId-' +
51 $tmp.aai.vpn-binding.src-access-node-id`" />
53 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
55 key="pnf.pnf-name = $tmp.domain.pnf-name"
56 pfx='tmp.aai.source-pnf' local-only='false' >
57 <!--AND depth = '0'"-->
58 <outcome value='success'>
60 <for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.source-pnf.relationship-list.relationship_length`' >
61 <switch test='`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].related-to`'>
62 <outcome value='esr-thirdparty-sdnc'>
65 <parameter name='tmp.domain.esr-thirdparty-id' value="`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`" />
67 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
68 resource="esr-thirdparty-sdnc"
69 key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.domain.esr-thirdparty-id AND
71 pfx='tmp.aai.domain.esr-thirdparty-sdnc' local-only='false' >
72 <outcome value='success'>
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`" />
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`" />
77 <parameter name='prop.sdncRestApi.thirdpartySdnc.domain.password' value="`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
78 <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->
79 <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->
80 <!--<parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />-->
81 <!--<parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />-->
82 <!--<parameter name="format" value="json"/>-->
83 <!--<parameter name="httpMethod" value="get"/>-->
84 <!--<parameter name="responsePrefix" value="topology"/>-->
85 <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
86 <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
87 <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
88 <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
92 <outcome value='not-found'>
93 <return status='failure'>
94 <parameter name='ack-final' value='Y'/>
95 <parameter name="error-code" value="500" />
96 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
99 <outcome value='Other'>
100 <return status='failure'>
101 <parameter name='ack-final' value='Y'/>
102 <parameter name="error-code" value="500" />
103 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
114 <outcome value='not-found'>
115 <return status='failure'>
116 <parameter name='ack-final' value='Y'/>
117 <parameter name="error-code" value="500" />
118 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
121 <outcome value='Other'>
122 <return status='failure'>
123 <parameter name='ack-final' value='Y'/>
124 <parameter name="error-code" value="500" />
125 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
130 <parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />
132 <switch test='`$tmp.aai.connectivity.etht-svc-name`'>
133 <outcome value='Other'>
134 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
135 <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`" />
136 <!--<parameter name="restapiUrl" value="`$prop.restapi.connection-oof-url`" />-->
137 <!--<parameter name="templateFileName" value="`$prop.restapi.templateDir + '/sotn-ethernet-service.json'`" />-->
138 <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domain.user`" />
139 <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domain.password`" />
140 <parameter name="format" value="json"/>
141 <parameter name="httpMethod" value="delete"/>
142 <parameter name='dirPath' value="/opt/onap/sdnc/restconfapi/yang" />
143 <parameter name="responsePrefix" value="vpn-result"/>
144 <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
145 <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
146 <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
147 <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
148 <outcome value='failure'></outcome>
149 <outcome value='success'>
151 <switch test="`length($tmp.aai.vpn-binding.dst-access-ltp-id) == 0`">
152 <outcome value='false'>
153 <switch test="`length($tmp.aai.vpn-binding.src-access-ltp-id) == 0`">
154 <outcome value='true'></outcome>
155 <outcome value='false'>
156 <block atomic="true">
157 <execute plugin='org.onap.ccsdk.sli.plugins.restconfdiscovery.PeriodicDiscoveryNode' method='deleteSubscription' >
158 <parameter name="subscriberId" value="`$prop.sdncRestApi.thirdpartySdnc.domain.url`" />
159 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.cll-terminate-notification.templatefile`" />
160 <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domain.url + '/restconf/operations/ietf-subscribed-notifications:delete-subscription'`" />
161 <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domain.user`" />
162 <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domain.password`" />
163 <parameter name="dirPath" value="/opt/sdnc/restconfapi/yang/notification" />
164 <parameter name="format" value="json" />
165 <parameter name="httpMethod" value="post" />
166 <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
167 <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
168 <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
169 <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
170 <!--<parameter name='customHttpHeaders' value="X-ACCESS-TOKEN=x-ik2ps4ikvzupbx0486ft1ebzs7rt85futh9ho6eofy3wjsap7wqktemlqm4bbsmnar3vrtbyrzukbv5itd6m1cftldpjarnyle3sdcqq9hftc4lebz464b5ffxmlbvg9" />-->
171 <parameter name="module" value="GENERIC-RESOURCE-API" />
172 <parameter name="rpc" value="p2p-vnf-topology-operation-p2p-callbackdg-notification" />
173 <parameter name="version" value="`$project.version`" />
174 <parameter name="mode" value="sync" />
175 <parameter name="responsePrefix" value="restapi-result"/>
181 <outcome value='true'></outcome>
187 <outcome value=''></outcome>
189 <delete plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
190 key='connectivity.connectivity-id = $tmp.aai.connectivity.connectivity-id'></delete>
191 <delete plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
192 key='vpn-binding.vpn-id = $tmp.aai.vpn-binding.vpn-id' ></delete>
195 <outcome value='not-found'>
196 <return status='failure'>
197 <parameter name='ack-final' value='Y'/>
198 <parameter name="error-code" value="500" />
199 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.l3vpn.pe1_id`" />
202 <outcome value='failure'>
203 <return status='failure'>
204 <parameter name='error-code' value='' />
205 <parameter name='error-message' value='' />
214 <outcome value='not-found'>
215 <return status='failure'>
216 <parameter name='ack-final' value='Y'/>
217 <parameter name="error-code" value="500" />
218 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.l3vpn.pe1_id`" />
221 <outcome value='failure'>
222 <return status='failure'>
223 <parameter name='error-code' value='' />
224 <parameter name='error-message' value='' />
232 <outcome value='not-found'>
233 <return status='failure'>
234 <parameter name='ack-final' value='Y'/>
235 <parameter name="error-code" value="500" />
236 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.l3vpn.pe1_id`" />
239 <outcome value='failure'>
240 <return status='failure'>
241 <parameter name='error-code' value='' />
242 <parameter name='error-message' value='' />
246 <return status='success'>
247 <parameter name="ack-final-indicator" value="Y" />
248 <parameter name="error-code" value="200" />
249 <parameter name="error-message" value="`$error-message`" />