Adding DGs to support Transport Slicing operations.
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / trans_slicing / GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-deactivate.xml
1 <service-logic\r
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             <switch test='`$service-data.vnfs.vnf_length`'>\r
7                 <outcome value='0'>\r
8                     <return status='failure'>\r
9                         <parameter name='ack-final' value='Y'/>\r
10                         <parameter name="error-code" value="500" />\r
11                         <parameter name="error-message" value="vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data" />\r
12                     </return>\r
13                 </outcome>\r
14                 <outcome value=''>\r
15                     <return status='failure'>\r
16                         <parameter name='ack-final' value='Y'/>\r
17                         <parameter name="error-code" value="500" />\r
18                         <parameter name="error-message" value="vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data" />\r
19                     </return>\r
20                 </outcome>\r
21                 <outcome value='Other'>\r
22                     <block atomic="true">\r
23                         <for index='vidx' start='0' end='`$service-data.vnfs.vnf_length`' >\r
24                             <block>\r
25                                 <switch test="`$service-data.vnfs.vnf[$vidx].vnf-id == $vnf-topology-operation-input.vnf-information.vnf-id`">\r
26                                     <outcome value='true'>\r
27                                         <block atomic="true">\r
28                                             <set>\r
29                                                 <parameter name='tmp.vidx' value='`$vidx`' />\r
30                                                 <parameter name='ctx.vnf-data.' value='`$service-data.vnfs.vnf[$vidx].`' />\r
31                                             </set>\r
32                                         </block>\r
33                                     </outcome>\r
34                                 </switch>\r
35                             </block>\r
36                         </for>\r
37                         <switch test="`$tmp.vidx`">\r
38                             <outcome value=''>\r
39                                 <return status='failure'>\r
40                                     <parameter name='ack-final' value='Y'/>\r
41                                     <parameter name="error-code" value="500" />\r
42                                     <parameter name="error-message" value="vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data" />\r
43                                 </return>\r
44                             </outcome>\r
45                         </switch>\r
46                     </block>\r
47                 </outcome>\r
48             </switch>\r
49             <switch test='`$service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-level-oper-status.order-status`'>\r
50                 <outcome value='Active'>\r
51                     <block atomic="true"></block>\r
52                 </outcome>\r
53                 <outcome value='Other'>\r
54                     <return status='failure'>\r
55                         <parameter name='ack-final' value='Y'/>\r
56                         <parameter name="error-code" value="500" />\r
57                         <parameter name="error-message" value="`'VNF is not in appropriate state for activate. Current state is ' + $service-data.vnfs.vnf[$tmp.nidx].vnf-data.vnf-level-oper-status.order-status`" />\r
58                     </return>\r
59                 </outcome>\r
60             </switch>\r
61             <set>\r
62                 <!--parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-id' value='`$vnf-topology-operation-input.vnf-information.vnf-id`' /-->\r
63                 <parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' />\r
64                 <parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' />\r
65                 <parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' />\r
66             </set>\r
67             <set>\r
68                 <parameter name='vnfId' value='`$vnf-topology-operation-input.vnf-information.vnf-id`' />\r
69                 <parameter name="vnf-object-path" value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'  + $vnf-topology-operation-input.service-information.service-instance-id  + '/service-data/vnfs/vnf/'  + $vnf-topology-operation-input.vnf-information.vnf-id  + '/vnf-data/'` " />\r
70             </set>\r
71             <set>\r
72                 <parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-level-oper-status.order-status' value='PendingDelete' />\r
73                 <parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' />\r
74                 <parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' />\r
75             </set>\r
76             <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
77         resource="generic-vnf"   \r
78                 key="generic-vnf.vnf-id = $vnfId" >\r
79                 <parameter name="orchestration-status" value="PendingDelete" />\r
80                 <parameter name="vnf-type" value="some vnf-type" />\r
81             </update>\r
82             <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
83         resource="service-instance"\r
84         key='service-instance.service-instance-id = $service-data.service-information.service-instance-id\r
85          AND customer.global-customer-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.global-customer-id \r
86          AND service-subscription.service-type = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.subscription-service-type'\r
87         local-only="false"\r
88         force="true" pfx="tmp.aai.service-instance">\r
89                 <outcome value='success'>\r
90                     <for index='rel-index' start='0' end='`$tmp.aai.service-instance.relationship-list.relationship_length`' >\r
91                         <switch test='`$tmp.aai.service-instance.relationship-list.relationship[$rel-index].related-to`'>\r
92                             <outcome value='connectivity'>\r
93                                 <switch test="`$rel-index == 0`">\r
94                                     <outcome value='true'>\r
95                                         <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
96         resource="connectivity"\r
97             key="connectivity.connectivity-id = $tmp.aai.service-instance.relationship-list.relationship[0].relationship-data[0].relationship-value"\r
98                 local-only="false" \r
99                 pfx="tmp.aai.connectivityA" >\r
100                                             <outcome value='success'>\r
101                                                 <block atomic="true">\r
102                                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
103                 resource="esr-thirdparty-sdnc" \r
104                 key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $prop.sdncRestApi.thirdpartySdnc.id AND \r
105                      depth = '1'"\r
106         pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\r
107                                                         <outcome value='success'>\r
108                                                             <set>\r
109                                                                 <parameter name='prop.sdncRestApi.thirdpartySdnc.url' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />\r
110                                                                 <parameter name='prop.sdncRestApi.thirdpartySdnc.user' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />\r
111                                                                 <parameter name='prop.sdncRestApi.thirdpartySdnc.password' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />\r
112                                                                 <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->\r
113                                                                 <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->\r
114                                                                 <!--<parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />-->\r
115                                                                 <!--<parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />-->\r
116                                                                 <!--<parameter name="format" value="json"/>-->\r
117                                                                 <!--<parameter name="httpMethod" value="get"/>-->\r
118                                                                 <!--<parameter name="responsePrefix" value="topology"/>-->\r
119                                                                 <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->\r
120                                                                 <!--<parameter name="trustStorePassword" value="adminadmin"/>-->\r
121                                                                 <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->\r
122                                                                 <!--<parameter name="keyStorePassword" value="adminadmin"/>-->\r
123                                                             </set>\r
124                                                         </outcome>\r
125                                                         <outcome value='not-found'>\r
126                                                             <return status='failure'>\r
127                                                                 <parameter name='ack-final' value='Y'/>\r
128                                                                 <parameter name="error-code" value="500" />\r
129                                                                 <parameter name="error-message" value="`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`" />\r
130                                                             </return>\r
131                                                         </outcome>\r
132                                                         <outcome value='Other'>\r
133                                                             <return status='failure'>\r
134                                                                 <parameter name='ack-final' value='Y'/>\r
135                                                                 <parameter name="error-code" value="500" />\r
136                                                                 <parameter name="error-message" value="`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`" />\r
137                                                             </return>\r
138                                                         </outcome>\r
139                                                     </get-resource>\r
140                                                     <set>\r
141                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].access-provider-id' value='`$oof.vpn.access-provider-id`' />\r
142                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].access-client-id' value='`$oof.vpn.access-client-id`' />\r
143                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].access-topology-id' value='`$oof.vpn.access-topology-id`' />\r
144                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[0].access-node-id' value='`$oof.vpn.access-node-id`' />\r
145                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[0].access-ltp-id' value='`$oof.vpn.src-access-ltp-id`' />\r
146                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[1].access-node-id' value='`$oof.vpn.access-node-id`' />\r
147                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[1].access-ltp-id' value='`$oof.vpn.dst-access-ltp-id`' />\r
148                                                         <parameter name='ietf-eth-tran-service_etht-svc.globals.etht-svc-bandwidth-profiles[0].bandwidth-profile-type' value='ietf-eth-tran-types:mef-10-bwp' />\r
149                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-type' value='ietf-eth-tran-types:p2p-svc' />\r
150                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].admin-status' value='ietf-te-types:tunnel-state-up' />\r
151                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[0].access-port-id' value='0' />\r
152                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[0].service-classification-type' value='ietf-eth-tran-types:port-classification' />\r
153                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[1].access-port-id' value='1' />\r
154                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[1].service-classification-type' value='ietf-eth-tran-types:port-classification' />\r
155                                                     </set>\r
156                                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
157                                                         <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-eth-tran-service:etht-svc'`" />\r
158                                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/sotn-ethernet-service.json'`" />\r
159                                                         <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
160                                                         <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.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 Create vpn rest api" />\r
174                                                             </return>\r
175                                                         </outcome>\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.vpnName' >\r
180                                                                     <parameter name='vpn-id' value='`$tmp.vpnName`' />\r
181                                                                     <parameter name='vpn-name' value='`$tmp.vpnName`' />\r
182                                                                     <parameter name='operational-status' value='DeActivated' />\r
183                                                                 </update>\r
184                                                                 <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \r
185       key='connectivity.connectivity-id = $prop.connectivity-domainA-uuid'>\r
186                                                                     <parameter name='connectivity-id' value='`$prop.connectivity-domainA-uuid`' />\r
187                                                                     <parameter name='operational-status' value='DeActivated' />\r
188                                                                 </update>\r
189                                                             </block>\r
190                                                         </outcome>\r
191                                                     </execute>\r
192                                                 </block>\r
193                                             </outcome>\r
194                                             <outcome value='not-found'>\r
195                                                 <return status='failure'>\r
196                                                     <parameter name='ack-final' value='Y'/>\r
197                                                     <parameter name="error-code" value="500" />\r
198                                                     <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.l3vpn.pe1_id`" />\r
199                                                 </return>\r
200                                             </outcome>\r
201                                             <outcome value='failure'>\r
202                                                 <return status='failure'>\r
203                                                     <parameter name='error-code' value='' />\r
204                                                     <parameter name='error-message' value='' />\r
205                                                 </return>\r
206                                             </outcome>\r
207                                         </get-resource>\r
208                                     </outcome>\r
209                                     <outcome value='false'>\r
210                                         <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
211         resource="connectivity"\r
212             key="connectivity.connectivity-id = $tmp.aai.service-instance.relationship-list.relationship[1].relationship-data[0].relationship-value"\r
213                 local-only="false" \r
214                 pfx="tmp.aai.connectivityB" >\r
215                                             <outcome value='success'>\r
216                                                 <block atomic="true">\r
217                                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
218                 resource="esr-thirdparty-sdnc" \r
219                 key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $prop.sdncRestApi.thirdpartySdnc.id AND \r
220                      depth = '1'"\r
221         pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\r
222                                                         <outcome value='success'>\r
223                                                             <set>\r
224                                                                 <parameter name='prop.sdncRestApi.thirdpartySdnc.url' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />\r
225                                                                 <parameter name='prop.sdncRestApi.thirdpartySdnc.user' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />\r
226                                                                 <parameter name='prop.sdncRestApi.thirdpartySdnc.password' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />\r
227                                                                 <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->\r
228                                                                 <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->\r
229                                                                 <!--<parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />-->\r
230                                                                 <!--<parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />-->\r
231                                                                 <!--<parameter name="format" value="json"/>-->\r
232                                                                 <!--<parameter name="httpMethod" value="get"/>-->\r
233                                                                 <!--<parameter name="responsePrefix" value="topology"/>-->\r
234                                                                 <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->\r
235                                                                 <!--<parameter name="trustStorePassword" value="adminadmin"/>-->\r
236                                                                 <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->\r
237                                                                 <!--<parameter name="keyStorePassword" value="adminadmin"/>-->\r
238                                                             </set>\r
239                                                         </outcome>\r
240                                                         <outcome value='not-found'>\r
241                                                             <return status='failure'>\r
242                                                                 <parameter name='ack-final' value='Y'/>\r
243                                                                 <parameter name="error-code" value="500" />\r
244                                                                 <parameter name="error-message" value="`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`" />\r
245                                                             </return>\r
246                                                         </outcome>\r
247                                                         <outcome value='Other'>\r
248                                                             <return status='failure'>\r
249                                                                 <parameter name='ack-final' value='Y'/>\r
250                                                                 <parameter name="error-code" value="500" />\r
251                                                                 <parameter name="error-message" value="`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`" />\r
252                                                             </return>\r
253                                                         </outcome>\r
254                                                     </get-resource>\r
255                                                     <set>\r
256                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].access-provider-id' value='`$oof.vpn.access-provider-id`' />\r
257                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].access-client-id' value='`$oof.vpn.access-client-id`' />\r
258                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].access-topology-id' value='`$oof.vpn.access-topology-id`' />\r
259                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[0].access-node-id' value='`$oof.vpn.access-node-id`' />\r
260                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[0].access-ltp-id' value='`$oof.vpn.src-access-ltp-id`' />\r
261                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[1].access-node-id' value='`$oof.vpn.access-node-id`' />\r
262                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[1].access-ltp-id' value='`$oof.vpn.dst-access-ltp-id`' />\r
263                                                         <parameter name='ietf-eth-tran-service_etht-svc.globals.etht-svc-bandwidth-profiles[0].bandwidth-profile-type' value='ietf-eth-tran-types:mef-10-bwp' />\r
264                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-type' value='ietf-eth-tran-types:p2p-svc' />\r
265                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].admin-status' value='ietf-te-types:tunnel-state-up' />\r
266                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[0].access-port-id' value='0' />\r
267                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[0].service-classification-type' value='ietf-eth-tran-types:port-classification' />\r
268                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[1].access-port-id' value='1' />\r
269                                                         <parameter name='ietf-eth-tran-service_etht-svc.etht-svc-instances[0].etht-svc-access-ports[1].service-classification-type' value='ietf-eth-tran-types:port-classification' />\r
270                                                     </set>\r
271                                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
272                                                         <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-eth-tran-service:etht-svc'`" />\r
273                                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/sotn-ethernet-service.json'`" />\r
274                                                         <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
275                                                         <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />\r
276                                                         <parameter name="format" value="json"/>\r
277                                                         <parameter name="httpMethod" value="delete"/>\r
278                                                         <parameter name='dirPath' value="/opt/onap/sdnc/restconfapi/yang" />\r
279                                                         <parameter name="responsePrefix" value="vpn-result"/>\r
280                                                         <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>\r
281                                                         <parameter name="trustStorePassword" value="adminadmin"/>\r
282                                                         <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>\r
283                                                         <parameter name="keyStorePassword" value="adminadmin"/>\r
284                                                         <outcome value='failure'>\r
285                                                             <return status='failure'>\r
286                                                                 <parameter name='ack-final' value='Y'/>\r
287                                                                 <parameter name="error-code" value="500" />\r
288                                                                 <parameter name="error-message" value="Error executing Create vpn rest api" />\r
289                                                             </return>\r
290                                                         </outcome>\r
291                                                         <outcome value='success'>\r
292                                                             <block atomic="true">\r
293                                                                 <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \r
294       key='vpn-binding.vpn-id = $tmp.vpnName' >\r
295                                                                     <parameter name='vpn-id' value='`$tmp.vpnName`' />\r
296                                                                     <parameter name='vpn-name' value='`$tmp.vpnName`' />\r
297                                                                     <parameter name='operational-status' value='DeActivated' />\r
298                                                                 </update>\r
299                                                                 <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \r
300       key='connectivity.connectivity-id = $prop.connectivity-domainA-uuid'>\r
301                                                                     <parameter name='connectivity-id' value='`$prop.connectivity-domainA-uuid`' />\r
302                                                                     <parameter name='operational-status' value='DeActivated' />\r
303                                                                 </update>\r
304                                                             </block>\r
305                                                         </outcome>\r
306                                                     </execute>\r
307                                                 </block>\r
308                                             </outcome>\r
309                                             <outcome value='not-found'>\r
310                                                 <return status='failure'>\r
311                                                     <parameter name='ack-final' value='Y'/>\r
312                                                     <parameter name="error-code" value="500" />\r
313                                                     <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.l3vpn.pe1_id`" />\r
314                                                 </return>\r
315                                             </outcome>\r
316                                             <outcome value='failure'>\r
317                                                 <return status='failure'>\r
318                                                     <parameter name='error-code' value='' />\r
319                                                     <parameter name='error-message' value='' />\r
320                                                 </return>\r
321                                             </outcome>\r
322                                         </get-resource>\r
323                                     </outcome>\r
324                                 </switch>\r
325                             </outcome>\r
326                         </switch>\r
327                     </for>\r
328                 </outcome>\r
329                 <outcome value='not-found'>\r
330                     <return status='failure'>\r
331                         <parameter name='ack-final' value='Y'/>\r
332                         <parameter name="error-code" value="500" />\r
333                         <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.l3vpn.pe1_id`" />\r
334                     </return>\r
335                 </outcome>\r
336                 <outcome value='failure'>\r
337                     <return status='failure'>\r
338                         <parameter name='error-code' value='' />\r
339                         <parameter name='error-message' value='' />\r
340                     </return>\r
341                 </outcome>\r
342             </get-resource>\r
343             <return status='success'>\r
344                 <parameter name="ack-final-indicator" value="Y" />\r
345                 <parameter name="error-code" value="200" />\r
346                 <parameter name="error-message" value="`$error-message`" />\r
347             </return>\r
348         </block>\r
349     </method>\r
350 </service-logic>