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-F1-Activate-w-Protection' mode='sync'>
7 <parameter name='`leaf-tunnels-list.`' value='' />
8 <parameter name='`leaf-tunnels-list_length`' value='0' />
9 <parameter name='`leaftunsidx`' value='0' />
12 <parameter name='tmp.aai.all-vpn-bindings.' value="" />
14 <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
15 <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
16 <parameter name='contextPrefix' value='prop' />
18 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
19 resource="vpn-bindings"
20 key="selflink = 'https://aai.onap:8443/aai/v24/network/vpn-bindings"
22 pfx="tmp.aai.all-vpn-bindings" >
23 <outcome value='success'>
25 <for index='vpnbidx' start='0' end='`$tmp.aai.all-vpn-bindings.vpn-binding_length`' >
29 <parameter name='tmp.aai.vpn-binding.' value="" />
32 <parameter name='tmp.aai.vpn-binding.' value="`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].`" />
34 <switch test="`$tmp.aai.vpn-binding.operational-status != 'Activated' `">
35 <outcome value='true'>
38 <parameter name='gfp-n' value='`$tmp.aai.vpn-binding.route-distinguisher`' />
40 <switch test='`$tmp.aai.vpn-binding.dst-access-ltp-id`'>
41 <outcome value='Other'>
42 <switch test='`$tmp.aai.vpn-binding.src-access-ltp-id`'>
46 <parameter name='tmp.aai.vpn-bindingA.' value="`$tmp.aai.vpn-binding.`" />
47 <parameter name='tmp.aai.connectivityA.' value="`$tmp.aai.connectivity.`" />
50 <parameter name='src-node-id' value='`$tmp.aai.vpn-bindingA.src-access-node-id`' />
51 <parameter name='dst-node-id' value='`$tmp.aai.vpn-bindingA.dst-access-node-id`' />
52 <!--<parameter name='dst-tpn-id' value='1' />-->
53 <parameter name='dst-tpn-id' value='`$tmp.aai.vpn-bindingA.customer-vpn-id`' />
54 <parameter name='dst-ttp-id' value='`$tmp.aai.vpn-bindingA.dst-access-ltp-id`' />
55 <parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />
56 <parameter name='otn-tunnel-name-src-domain' value='`$tmp.aai.vpn-bindingA.vpn-name`' />
57 <parameter name='client-id' value='`$tmp.aai.vpn-bindingA.access-client-id`' />
58 <parameter name='provider-id' value='`$tmp.aai.vpn-bindingA.access-provider-id`' />
59 <parameter name='topology-id' value='`$tmp.aai.vpn-bindingA.access-topology-id`' />
62 <parameter name='tmp.src.domainA.pnf-name' value="`'networkId-providerId-' +
63 $tmp.aai.vpn-bindingA.access-provider-id + '-clientId-' +
64 $tmp.aai.vpn-bindingA.access-client-id + '-topologyId-' +
65 $tmp.aai.vpn-bindingA.access-topology-id + '-nodeId-' +
66 $tmp.aai.vpn-bindingA.src-access-node-id`" />
68 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
70 key="pnf.pnf-name = $tmp.src.domainA.pnf-name"
71 pfx='tmp.aai.source-pnf' local-only='false' >
72 <!--AND depth = '0'"-->
73 <outcome value='success'>
75 <for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.source-pnf.relationship-list.relationship_length`' >
76 <switch test='`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].related-to`'>
77 <outcome value='esr-thirdparty-sdnc'>
80 <parameter name='tmp.domainA.esr-thirdparty-id' value="`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`" />
82 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
83 resource="esr-thirdparty-sdnc"
84 key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.domainA.esr-thirdparty-id AND
86 pfx='tmp.aai.domainA.esr-thirdparty-sdnc' local-only='false' >
87 <outcome value='success'>
90 <parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.url' value="`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
91 <parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.user' value="`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
92 <parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.password' value="`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
93 <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->
94 <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->
95 <!--<parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />-->
96 <!--<parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />-->
97 <!--<parameter name="format" value="json"/>-->
98 <!--<parameter name="httpMethod" value="get"/>-->
99 <!--<parameter name="responsePrefix" value="topology"/>-->
100 <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
101 <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
102 <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
103 <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
107 <outcome value='not-found'>
108 <return status='failure'>
109 <parameter name='ack-final' value='Y'/>
110 <parameter name="error-code" value="500" />
111 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
114 <outcome value='Other'>
115 <return status='failure'>
116 <parameter name='ack-final' value='Y'/>
117 <parameter name="error-code" value="500" />
118 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
128 <outcome value='not-found'>
129 <return status='failure'>
130 <parameter name='ack-final' value='Y'/>
131 <parameter name="error-code" value="500" />
132 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
135 <outcome value='Other'>
136 <return status='failure'>
137 <parameter name='ack-final' value='Y'/>
138 <parameter name="error-code" value="500" />
139 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
143 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
144 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.cll-otn-src-domain-creation.templatefile`" />
145 <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.url + '/restconf/data/ietf-te:te'`" />
146 <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.user`" />
147 <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.password`" />
148 <parameter name="format" value="json"/>
149 <parameter name="httpMethod" value="patch"/>
150 <parameter name="responsePrefix" value="otn-oof"/>
151 <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
152 <parameter name="trustStorePassword" value="adminadmin"/>
153 <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
154 <parameter name="keyStorePassword" value="adminadmin"/>
155 <parameter name='customHttpHeaders' value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />
156 <outcome value='failure'>
157 <return status='failure'>
158 <parameter name='ack-final' value='Y'/>
159 <parameter name="error-code" value="500" />
160 <parameter name="error-message" value="Error executing Create OTN tunnel rest api" />
163 <outcome value='success'>
164 <block atomic="true"></block>
167 <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
168 key='vpn-binding.vpn-id = $tmp.aai.vpn-bindingA.vpn-id' >
169 <parameter name='vpn-id' value='`$tmp.aai.vpn-bindingA.vpn-id`' />
170 <parameter name='vpn-name' value='`$tmp.aai.vpn-bindingA.vpn-name`' />
171 <parameter name='operational-status' value='Activated' />
174 <parameter name='`leaf-tunnels-list[$leaftunsidx].tunnel-name`' value='`$tmp.aai.vpn-binding.vpn-name`' />
175 <parameter name='`leaf-tunnels-list[$leaftunsidx].vpn-id`' value='`$tmp.aai.vpn-binding.vpn-id`' />
176 <parameter name='`leaf-tunnels-list_length`' value='`$leaftunsidx + 1`' />
179 <parameter name='`leaftunsidx`' value='`$leaftunsidx + 1`' />
183 <outcome value='Other'>
184 <block atomic="true">
186 <parameter name='tmp.aai.vpn-bindingG.' value="`$tmp.aai.vpn-binding.`" />
187 <parameter name='tmp.aai.connectivityG.' value="`$tmp.aai.connectivity.`" />
190 <parameter name='src-node-id' value='`$tmp.aai.vpn-bindingG.src-access-node-id`' />
191 <parameter name='dst-node-id' value='`$tmp.aai.vpn-bindingG.dst-access-node-id`' />
192 <!--<parameter name='dst-tpn-id' value='1' />-->
193 <parameter name='src-tpn-id' value='`$tmp.aai.vpn-bindingG.customer-vpn-id`' />
194 <parameter name='dst-tpn-id' value='`$tmp.aai.vpn-bindingG.customer-vpn-id`' />
195 <parameter name='src-ttp-id' value='`$tmp.aai.vpn-bindingG.src-access-ltp-id`' />
196 <parameter name='dst-ttp-id' value='`$tmp.aai.vpn-bindingG.dst-access-ltp-id`' />
197 <parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />
198 <parameter name='otn-tunnel-name-domainG' value='`$tmp.aai.vpn-bindingG.vpn-name`' />
199 <parameter name='client-id' value='`$tmp.aai.vpn-bindingG.access-client-id`' />
200 <parameter name='provider-id' value='`$tmp.aai.vpn-bindingG.access-provider-id`' />
201 <parameter name='topology-id' value='`$tmp.aai.vpn-bindingG.access-topology-id`' />
204 <parameter name='tmp.domainG.pnf-name' value="`'networkId-providerId-' +
205 $tmp.aai.vpn-bindingG.access-provider-id + '-clientId-' +
206 $tmp.aai.vpn-bindingG.access-client-id + '-topologyId-' +
207 $tmp.aai.vpn-bindingG.access-topology-id + '-nodeId-' +
208 $tmp.aai.vpn-bindingG.src-access-node-id`" />
210 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
212 key="pnf.pnf-name = $tmp.domainG.pnf-name"
213 pfx='tmp.aai.domainG-pnf' local-only='false' >
214 <!--AND depth = '0'"-->
215 <outcome value='success'>
217 <for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.domainG-pnf.relationship-list.relationship_length`' >
218 <switch test='`$tmp.aai.domainG-pnf.relationship-list.relationship[$spvidx].related-to`'>
219 <outcome value='esr-thirdparty-sdnc'>
220 <block atomic="true">
222 <parameter name='tmp.domainG.esr-thirdparty-id' value="`$tmp.aai.domainG-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`" />
224 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
225 resource="esr-thirdparty-sdnc"
226 key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.domainG.esr-thirdparty-id AND
228 pfx='tmp.aai.domainG.esr-thirdparty-sdnc' local-only='false' >
229 <outcome value='success'>
232 <parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.url' value="`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
233 <parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.user' value="`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
234 <parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.password' value="`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
235 <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->
236 <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->
237 <!--<parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />-->
238 <!--<parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />-->
239 <!--<parameter name="format" value="json"/>-->
240 <!--<parameter name="httpMethod" value="get"/>-->
241 <!--<parameter name="responsePrefix" value="topology"/>-->
242 <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
243 <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
244 <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
245 <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
249 <outcome value='not-found'>
250 <return status='failure'>
251 <parameter name='ack-final' value='Y'/>
252 <parameter name="error-code" value="500" />
253 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
256 <outcome value='Other'>
257 <return status='failure'>
258 <parameter name='ack-final' value='Y'/>
259 <parameter name="error-code" value="500" />
260 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
270 <outcome value='not-found'>
271 <return status='failure'>
272 <parameter name='ack-final' value='Y'/>
273 <parameter name="error-code" value="500" />
274 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
277 <outcome value='Other'>
278 <return status='failure'>
279 <parameter name='ack-final' value='Y'/>
280 <parameter name="error-code" value="500" />
281 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
285 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
286 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.cll-otn-domainG-creation.templatefile`" />
287 <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainG.url + '/restconf/data/ietf-te:te'`" />
288 <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domainG.user`" />
289 <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domainG.password`" />
290 <parameter name="format" value="json"/>
291 <parameter name="httpMethod" value="patch"/>
292 <parameter name="responsePrefix" value="otn-oof"/>
293 <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
294 <parameter name="trustStorePassword" value="adminadmin"/>
295 <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
296 <parameter name="keyStorePassword" value="adminadmin"/>
297 <parameter name='customHttpHeaders' value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />
298 <outcome value='failure'>
299 <return status='failure'>
300 <parameter name='ack-final' value='Y'/>
301 <parameter name="error-code" value="500" />
302 <parameter name="error-message" value="Error executing Create OTN tunnel rest api" />
305 <outcome value='success'>
306 <block atomic="true"></block>
309 <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
310 key='vpn-binding.vpn-id = $tmp.aai.vpn-bindingG.vpn-id' >
311 <parameter name='vpn-id' value='`$tmp.aai.vpn-bindingG.vpn-id`' />
312 <parameter name='vpn-name' value='`$tmp.aai.vpn-bindingG.vpn-name`' />
313 <parameter name='operational-status' value='Activated' />
320 <switch test='`$tmp.aai.vpn-binding.src-access-ltp-id`'>
321 <outcome value='Other'>
322 <block atomic="true">
324 <parameter name='tmp.aai.vpn-bindingB.' value="`$tmp.aai.vpn-binding.`" />
325 <parameter name='tmp.aai.connectivityB.' value="`$tmp.aai.connectivity.`" />
328 <parameter name='src-node-id' value='`$tmp.aai.vpn-bindingB.src-access-node-id`' />
329 <parameter name='dst-node-id' value='`$tmp.aai.vpn-bindingB.dst-access-node-id`' />
330 <!--<parameter name='src-tpn-id' value='1' />-->
331 <parameter name='src-tpn-id' value='`$tmp.aai.vpn-bindingB.customer-vpn-id`' />
332 <parameter name='src-ttp-id' value='`$tmp.aai.vpn-bindingB.src-access-ltp-id`' />
333 <parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />
334 <parameter name='otn-tunnel-name-dst-domain' value='`$tmp.aai.vpn-bindingB.vpn-name`' />
335 <parameter name='client-id' value='`$tmp.aai.vpn-bindingB.access-client-id`' />
336 <parameter name='provider-id' value='`$tmp.aai.vpn-bindingB.access-provider-id`' />
337 <parameter name='topology-id' value='`$tmp.aai.vpn-bindingB.access-topology-id`' />
340 <parameter name='tmp.dst.domainB.pnf-name' value="`'networkId-providerId-' +
341 $tmp.aai.vpn-bindingB.access-provider-id + '-clientId-' +
342 $tmp.aai.vpn-bindingB.access-client-id + '-topologyId-' +
343 $tmp.aai.vpn-bindingB.access-topology-id + '-nodeId-' +
344 $tmp.aai.vpn-bindingB.dst-access-node-id`" />
346 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
348 key="pnf.pnf-name = $tmp.dst.domainB.pnf-name"
349 pfx='tmp.aai.destination-pnf' local-only='false' >
350 <!--AND depth = '0'"-->
351 <outcome value='success'>
353 <for silentFailure='true' index='dpvidx' start='0' end='`$tmp.aai.destination-pnf.relationship-list.relationship_length`' >
354 <switch test='`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].related-to`'>
355 <outcome value='esr-thirdparty-sdnc'>
356 <block atomic="true">
358 <parameter name='tmp.domainB.esr-thirdparty-id' value="`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].relationship-data[0].relationship-value`" />
360 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
361 resource="esr-thirdparty-sdnc"
362 key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.domainB.esr-thirdparty-id AND
364 pfx='tmp.aai.domainB.esr-thirdparty-sdnc' local-only='false' >
365 <outcome value='success'>
368 <parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.url' value="`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
369 <parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.user' value="`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
370 <parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.password' value="`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
371 <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->
372 <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->
373 <!--<parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />-->
374 <!--<parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />-->
375 <!--<parameter name="format" value="json"/>-->
376 <!--<parameter name="httpMethod" value="get"/>-->
377 <!--<parameter name="responsePrefix" value="topology"/>-->
378 <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
379 <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
380 <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
381 <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
385 <outcome value='not-found'>
386 <return status='failure'>
387 <parameter name='ack-final' value='Y'/>
388 <parameter name="error-code" value="500" />
389 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
392 <outcome value='Other'>
393 <return status='failure'>
394 <parameter name='ack-final' value='Y'/>
395 <parameter name="error-code" value="500" />
396 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
406 <outcome value='not-found'>
407 <return status='failure'>
408 <parameter name='ack-final' value='Y'/>
409 <parameter name="error-code" value="500" />
410 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
413 <outcome value='Other'>
414 <return status='failure'>
415 <parameter name='ack-final' value='Y'/>
416 <parameter name="error-code" value="500" />
417 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
421 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
422 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.cll-otn-dst-domain-creation.templatefile`" />
423 <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainB.url + '/restconf/data/ietf-te:te'`" />
424 <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domainB.user`" />
425 <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domainB.password`" />
426 <parameter name="format" value="json"/>
427 <parameter name="httpMethod" value="patch"/>
428 <parameter name="responsePrefix" value="otn-oof"/>
429 <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
430 <parameter name="trustStorePassword" value="adminadmin"/>
431 <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
432 <parameter name="keyStorePassword" value="adminadmin"/>
433 <parameter name='customHttpHeaders' value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />
434 <outcome value='failure'>
435 <return status='failure'>
436 <parameter name='ack-final' value='Y'/>
437 <parameter name="error-code" value="500" />
438 <parameter name="error-message" value="Error executing Create OTN tunnel rest api" />
441 <outcome value='success'>
442 <block atomic="true"></block>
445 <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
446 key='vpn-binding.vpn-id = $tmp.aai.vpn-bindingB.vpn-id' >
447 <parameter name='vpn-id' value='`$tmp.aai.vpn-bindingB.vpn-id`' />
448 <parameter name='vpn-name' value='`$tmp.aai.vpn-bindingB.vpn-name`' />
449 <parameter name='operational-status' value='Activated' />
452 <parameter name='`root-tunnels-list[$roottunsidx].tunnel-name`' value='`$tmp.aai.vpn-binding.vpn-name`' />
453 <parameter name='`root-tunnels-list[$roottunsidx].vpn-id`' value='`$tmp.aai.vpn-binding.vpn-id`' />
454 <parameter name='`root-tunnels-list_length`' value='`$roottunsidx + 1`' />
457 <parameter name='`roottunsidx`' value='`$roottunsidx + 1`' />
462 <return status='failure'>
463 <parameter name='error-code' value='' />
464 <parameter name='error-message' value='' />
472 <outcome value='false'>
481 <outcome value='not-found'></outcome>
482 <outcome value='failure'>
483 <return status='failure'>
484 <parameter name='error-code' value='' />
485 <parameter name='error-message' value='' />
489 <!--<get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" -->
490 <!-- resource="service-instance"-->
491 <!-- key='service-instance.service-instance-id = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.service-instance-id-->
492 <!-- AND customer.global-customer-id = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.global-customer-id -->
493 <!-- AND service-subscription.service-type = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.subscription-service-type'-->
494 <!-- local-only="false"-->
495 <!-- force="true" pfx="tmp.aai.service-instance">-->
496 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
497 resource="service-instance"
498 key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id
499 AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
500 AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type'
502 force="true" pfx="tmp.aai.service-instance">
503 <!--$vnf-topology-operation-input.service-information.service-instance-id-->
504 <outcome value='success'>
505 <for index='rel-index' start='0' end='`$tmp.aai.service-instance.relationship-list.relationship_length`' >
506 <switch test='`$tmp.aai.service-instance.relationship-list.relationship[$rel-index].related-to`'>
507 <outcome value='connectivity'>
508 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
509 resource="connectivity"
510 key="connectivity.connectivity-id = $tmp.aai.service-instance.relationship-list.relationship[$rel-index].relationship-data[0].relationship-value"
512 pfx="tmp.aai.connectivity" >
513 <outcome value='success'>
514 <switch test="`$tmp.aai.connectivity.operational-status != 'Activated' `">
515 <outcome value='false'>
518 <outcome value='true'>
519 <block atomic="true">
520 <switch test="`$tmp.aai.connectivity.vpn-type != 'mdsc' `">
521 <outcome value='true'>
524 <parameter name='`ethernet-srv-end-points-list.`' value='' />
525 <parameter name='`ethernet-srv-end-points-list_length`' value='0' />
526 <parameter name='`epidx`' value='0' />
528 <for silentFailure='true' index='cridx' start='0' end='`$tmp.aai.connectivity.relationship-list.relationship_length`' >
529 <switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>
530 <outcome value='uni'>
531 <block atomic="true">
533 <parameter name='tmp.aai.uni.' value='' />
535 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
537 key="uni.id = $tmp.aai.connectivity.relationship-list.relationship[$cridx].relationship-data[0].relationship-value"
540 <outcome value='not-found'>
541 <return status='failure'>
542 <parameter name='ack-final' value='Y'/>
543 <parameter name="error-code" value="500" />
544 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.l3vpn.pe1_id`" />
547 <outcome value='failure'>
548 <return status='failure'>
549 <parameter name='error-code' value='' />
550 <parameter name='error-message' value='' />
553 <outcome value='success'>
554 <block atomic="true"></block>
557 <switch test="`$tmp.aai.uni.type`">
558 <outcome value='leaf'>
561 <parameter name='`leafOrRootAccess`' value='ietf-eth-tran-types:leaf-access' />
565 <outcome value='root'>
568 <parameter name='`leafOrRootAccess`' value='ietf-eth-tran-types:root-primary' />
572 <outcome value='secondary-root'>
575 <parameter name='`leafOrRootAccess`' value='ietf-eth-tran-types:root-backup' />
579 <outcome value='Other'>
583 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
584 <parameter name="original_string" value='`$tmp.aai.uni.id`'/>
585 <!--<parameter name="regex" value="[^-]+$"/>-->
586 <parameter name="regex" value="[-]+"/>
587 <parameter name="ctx_memory_result_key" value="param-prefix-uni"/>
588 <outcome value='success'>
589 <block atomic="true">
591 <parameter name='tmp.uni-node-id-short' value='`$param-prefix-uni[$param-prefix-uni_length -4]`' />
595 <outcome value='failure'>
596 <return status='failure'>
597 <parameter name='error-code' value='' />
598 <parameter name='error-message' value="An error occured while splitting sna1_route" />
603 <!--<parameter name='`ethernet-srv-end-points-list[$epidx].ethernet-end-point-name`' value='`$tmp.aai.connectivity.connectivity-id`' />-->
604 <parameter name='`ethernet-srv-end-points-list[$epidx].ethernet-end-point-name`' value='`$tmp.aai.uni.id`' />
605 <parameter name='`ethernet-srv-end-points-list[$epidx].index-number`' value='0' />
606 <parameter name='`ethernet-srv-end-points-list[$epidx].eth-node-id`' value='`$tmp.uni-node-id-short`' />
607 <parameter name='`ethernet-srv-end-points-list[$epidx].eth-node-tp-id`' value='`$tmp.aai.uni.tp-id`' />
608 <parameter name='`ethernet-srv-end-points-list[$epidx].leafOrRootAccess`' value='`$leafOrRootAccess`' />
609 <parameter name='`ethernet-srv-end-points-list[$epidx].cvlan`' value='`$tmp.aai.connectivity.cvlan`' />
610 <parameter name='`ethernet-srv-end-points-list[$epidx].CIR`' value='`$tmp.aai.uni.data-source * 1000000`' />
611 <parameter name='`ethernet-srv-end-points-list[$epidx].EIR`' value='`$tmp.aai.uni.data-source * 1000000`' />
612 <parameter name='`ethernet-srv-end-points-list_length`' value='`$epidx + 1`' />
615 <parameter name='`epidx`' value='`$epidx + 1`' />
622 <parameter name='filenameclleths' value="`$leafOrRootAccess + $tmp.aai.connectivity.access-node-id`" />
624 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
625 <parameter name="filename" value="`$filenameclleths`" />
628 <parameter name='`otn-tunnels-name-list.`' value='' />
629 <parameter name='`otn-tunnels-name-list_length`' value='0' />
630 <parameter name='`otntunsidx`' value='0' />
632 <for silentFailure='true' index='cridx' start='0' end='`$tmp.aai.connectivity.relationship-list.relationship_length`' >
633 <switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>
634 <outcome value='vpn-binding'>
635 <block atomic="true">
637 <parameter name='tmp.aai.vpn-binding.' value='' />
639 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
640 resource="vpn-binding"
641 key="vpn-binding.vpn-id = $tmp.aai.connectivity.relationship-list.relationship[$cridx].relationship-data[0].relationship-value"
643 pfx="tmp.aai.vpn-binding" >
644 <outcome value='not-found'>
645 <return status='failure'>
646 <parameter name='ack-final' value='Y'/>
647 <parameter name="error-code" value="500" />
648 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.l3vpn.pe1_id`" />
651 <outcome value='failure'>
652 <return status='failure'>
653 <parameter name='error-code' value='' />
654 <parameter name='error-message' value='' />
657 <outcome value='success'>
658 <block atomic="true">
660 <parameter name='`otn-tunnels-name-list[$otntunsidx].otn-tunnel-name`' value='`$tmp.aai.vpn-binding.vpn-name`' />
661 <parameter name='`otn-tunnels-name-list[$otntunsidx].vpn-id`' value='`$tmp.aai.vpn-binding.vpn-id`' />
662 <parameter name='`otn-tunnels-name-list_length`' value='`$otntunsidx + 1`' />
665 <parameter name='`otntunsidx`' value='`$otntunsidx + 1`' />
675 <parameter name='filenamecllotns' value="`leafrootOTNtunnelnames`" />
677 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
678 <parameter name="filename" value="`$filenamecllotns`" />
680 <block atomic="true">
682 <parameter name='tmp.pnf-name-forUrl' value="`'networkId-providerId-' +
683 $tmp.aai.connectivity.access-provider-id + '-clientId-' +
684 $tmp.aai.connectivity.access-client-id + '-topologyId-' +
685 $tmp.aai.connectivity.access-topology-id + '-nodeId-' +
686 $tmp.aai.connectivity.access-node-id`" />
688 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
690 key="pnf.pnf-name = $tmp.pnf-name-forUrl"
691 pfx='tmp.aai.source-pnf' local-only='false' >
692 <!--AND depth = '0'"-->
693 <outcome value='success'>
695 <for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.source-pnf.relationship-list.relationship_length`' >
696 <switch test='`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].related-to`'>
697 <outcome value='esr-thirdparty-sdnc'>
698 <block atomic="true">
700 <parameter name='tmp.domainConn.esr-thirdparty-id' value="`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`" />
702 <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
703 resource="esr-thirdparty-sdnc"
704 key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.domainConn.esr-thirdparty-id AND
706 pfx='tmp.aai.domainConn.esr-thirdparty-sdnc' local-only='false' >
707 <outcome value='success'>
710 <parameter name='prop.sdncRestApi.thirdpartySdnc.domainConn.url' value="`$tmp.aai.domainConn.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
711 <parameter name='prop.sdncRestApi.thirdpartySdnc.domainConn.user' value="`$tmp.aai.domainConn.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
712 <parameter name='prop.sdncRestApi.thirdpartySdnc.domainConn.password' value="`$tmp.aai.domainConn.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
713 <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->
714 <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->
715 <!--<parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />-->
716 <!--<parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />-->
717 <!--<parameter name="format" value="json"/>-->
718 <!--<parameter name="httpMethod" value="get"/>-->
719 <!--<parameter name="responsePrefix" value="topology"/>-->
720 <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
721 <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
722 <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
723 <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
727 <outcome value='not-found'>
728 <return status='failure'>
729 <parameter name='ack-final' value='Y'/>
730 <parameter name="error-code" value="500" />
731 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
734 <outcome value='Other'>
735 <return status='failure'>
736 <parameter name='ack-final' value='Y'/>
737 <parameter name="error-code" value="500" />
738 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
748 <outcome value='not-found'>
749 <return status='failure'>
750 <parameter name='ack-final' value='Y'/>
751 <parameter name="error-code" value="500" />
752 <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
755 <outcome value='Other'>
756 <return status='failure'>
757 <parameter name='ack-final' value='Y'/>
758 <parameter name="error-code" value="500" />
759 <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
765 <!--<parameter name='eth-service-name' value='`$tmp.aai.connectivityA.connectivity-id`' />-->
766 <parameter name='eth-service-name' value='`$tmp.aai.connectivity.etht-svc-name`' />
767 <parameter name='slice-id' value='`$vnf-topology-operation-input.service-information.service-instance-id`' />
768 <parameter name='provider-id' value='`$tmp.aai.connectivity.access-provider-id`' />
769 <parameter name='client-id' value='`$tmp.aai.connectivity.access-client-id`' />
770 <parameter name='topology-id' value='`$tmp.aai.connectivity.access-topology-id`' />
771 <!--<parameter name='otn-tunnel-name' value='`$tmp.aai.vpn-bindingA.vpn-name`' />-->
772 <!--<parameter name='ethernet-end-point-name' value='`$tmp.aai.connectivityA.connectivity-id`' />-->
773 <!--<parameter name='index-number' value='0' />-->
774 <!--<parameter name='eth-node-id' value='`$tmp.aai.connectivityA.access-node-id`' />-->
775 <!--<parameter name='eth-node-tp-id' value='`$tmp.aai.connectivityA.access-ltp-id`' />-->
776 <!--<parameter name='CIR' value='`$tmp.aai.vpn-bindingA.route-distinguisher *1000000`' />-->
777 <!--<parameter name='EIR' value='`$tmp.aai.vpn-bindingA.route-distinguisher *1000000`' />-->
778 <!--<parameter name='cvlan' value='`$tmp.aai.connectivityA.cvlan`' />-->
780 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
781 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.cll-ethernet-service-loop-protection.templatefile`" />
782 <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainConn.url + '/restconf/data/ietf-eth-tran-service:etht-svc'`" />
783 <!--<parameter name="restapiUrl" value="`$prop.restapi.connection-oof-url`" />-->
784 <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domainConn.user`" />
785 <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domainConn.password`" />
786 <parameter name="format" value="json"/>
787 <parameter name="httpMethod" value="patch"/>
788 <parameter name='dirPath' value="/opt/onap/sdnc/restconfapi/yang" />
789 <parameter name="responsePrefix" value="vpn-result"/>
790 <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
791 <parameter name="trustStorePassword" value="adminadmin"/>
792 <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
793 <parameter name="keyStorePassword" value="adminadmin"/>
794 <outcome value='failure'></outcome>
795 <outcome value='success'>
796 <block atomic="true">
797 <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
798 key='connectivity.connectivity-id = $tmp.aai.connectivity.connectivity-id'>
799 <parameter name='connectivity-id' value='`$tmp.aai.connectivity.connectivity-id`' />
800 <parameter name='operational-status' value='Activated' />
812 <outcome value='not-found'></outcome>
813 <outcome value='failure'>
814 <return status='failure'>
815 <parameter name='error-code' value='' />
816 <parameter name='error-message' value='' />
824 <outcome value='not-found'></outcome>
825 <outcome value='failure'>
826 <return status='failure'>
827 <parameter name='error-code' value='' />
828 <parameter name='error-message' value='' />