c0046db3f178aa65f2b145709c2489c7d9e58546
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_dci-connects-network-topology-operation-activate.xml
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <service-logic xmlns="http://www.onap.org/sdnc/svclogic" 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
3     <method rpc="dci-connects-network-topology-operation-activate" mode="sync">\r
4         <block atomic="true">\r
5             <call module="GENERIC-RESOURCE-API" rpc="validate-network-input-parameters" mode="sync" />\r
6             <block atomic="true">\r
7                 <block atomic="true">\r
8                     <for index="idx" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
9                         <block>\r
10                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`">\r
11                                 <outcome value="true">\r
12                                     <set>\r
13                                         <parameter name="prop.dci-connects.name" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
14                                     </set>\r
15                                 </outcome>\r
16                             </switch>\r
17                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_id'`">\r
18                                 <outcome value="true">\r
19                                     <set>\r
20                                         <parameter name="prop.dci-connects.id" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
21                                     </set>\r
22                                 </outcome>\r
23                             </switch>\r
24                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_description'`">\r
25                                 <outcome value="true">\r
26                                     <set>\r
27                                         <parameter name="prop.dci-connects.description" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
28                                     </set>\r
29                                 </outcome>\r
30                             </switch>\r
31                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_networkName'`">\r
32                                 <outcome value="true">\r
33                                     <block atomic="true">\r
34                                         <set>\r
35                                             <parameter name="tmp.dci-connects.local_networks.original" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
36                                         </set>\r
37                                         <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="split">\r
38                                             <parameter name="original_string" value="`$tmp.dci-connects.local_networks.original`" />\r
39                                             <parameter name="regex" value="," />\r
40                                             <parameter name="ctx_memory_result_key" value="tmp.dci-connects.local_networks" />\r
41                                             <outcome value="success">\r
42                                                 <for index="idx" start="0" end="`$tmp.dci-connects.local_networks_length`">\r
43                                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="l3-network" key="l3-network.network-name = $tmp.dci-connects.local_networks[$idx] AND         depth = '0'" pfx="tmp.aai.l3-network" local-only="false">\r
44                                                         <outcome value="success">\r
45                                                             <set>\r
46                                                                 <parameter name="prop.dci-connects.local_networks[$idx]" value="`$tmp.aai.l3-network.network-id`" />\r
47                                                             </set>\r
48                                                         </outcome>\r
49                                                         <outcome value="not-found">\r
50                                                             <return status="failure">\r
51                                                                 <parameter name="error-code" value="" />\r
52                                                                 <parameter name="error-message" value="" />\r
53                                                             </return>\r
54                                                         </outcome>\r
55                                                         <outcome value="Other">\r
56                                                             <return status="failure">\r
57                                                                 <parameter name="error-code" value="" />\r
58                                                                 <parameter name="error-message" value="" />\r
59                                                             </return>\r
60                                                         </outcome>\r
61                                                     </get-resource>\r
62                                                 </for>\r
63                                             </outcome>\r
64                                             <outcome value="failure">\r
65                                                 <return status="failure">\r
66                                                     <parameter name="error-code" value="" />\r
67                                                     <parameter name="error-message" value="An error occured while splitting sna1_route" />\r
68                                                 </return>\r
69                                             </outcome>\r
70                                         </execute>\r
71                                     </block>\r
72                                 </outcome>\r
73                             </switch>\r
74                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_routerId'`">\r
75                                 <outcome value="true">\r
76                                     <set>\r
77                                         <parameter name="prop.dci-connects.router_id" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
78                                     </set>\r
79                                 </outcome>\r
80                             </switch>\r
81                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_importRT1'`">\r
82                                 <outcome value="true">\r
83                                     <block atomic="true">\r
84                                         <set>\r
85                                             <parameter name="tmp.dci-connects.evpn_irts.original" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
86                                         </set>\r
87                                         <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="split">\r
88                                             <parameter name="original_string" value="`$tmp.dci-connects.evpn_irts.original`" />\r
89                                             <parameter name="regex" value="," />\r
90                                             <parameter name="ctx_memory_result_key" value="tmp.dci-connects.evpn_irts" />\r
91                                             <outcome value="success">\r
92                                                 <for index="idx" start="0" end="`$tmp.dci-connects.evpn_irts_length`">\r
93                                                     <set>\r
94                                                         <parameter name="prop.dci-connects.evpn_irts[$idx]" value="`$tmp.dci-connects.evpn_irts[$idx]`" />\r
95                                                     </set>\r
96                                                 </for>\r
97                                             </outcome>\r
98                                             <outcome value="failure">\r
99                                                 <return status="failure">\r
100                                                     <parameter name="error-code" value="" />\r
101                                                     <parameter name="error-message" value="An error occured while splitting sna1_route" />\r
102                                                 </return>\r
103                                             </outcome>\r
104                                         </execute>\r
105                                     </block>\r
106                                 </outcome>\r
107                             </switch>\r
108                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_exportRT1'`">\r
109                                 <outcome value="true">\r
110                                     <block atomic="true">\r
111                                         <set>\r
112                                             <parameter name="tmp.dci-connects.evpn_erts.original" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
113                                         </set>\r
114                                         <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="split">\r
115                                             <parameter name="original_string" value="`$tmp.dci-connects.evpn_erts.original`" />\r
116                                             <parameter name="regex" value="," />\r
117                                             <parameter name="ctx_memory_result_key" value="tmp.dci-connects.evpn_erts" />\r
118                                             <outcome value="success">\r
119                                                 <for index="idx" start="0" end="`$tmp.dci-connects.evpn_erts_length`">\r
120                                                     <set>\r
121                                                         <parameter name="prop.dci-connects.evpn_erts[$idx]" value="`$tmp.dci-connects.evpn_erts[$idx]`" />\r
122                                                     </set>\r
123                                                 </for>\r
124                                             </outcome>\r
125                                             <outcome value="failure">\r
126                                                 <return status="failure">\r
127                                                     <parameter name="error-code" value="" />\r
128                                                     <parameter name="error-message" value="An error occured while splitting sna1_route" />\r
129                                                 </return>\r
130                                             </outcome>\r
131                                         </execute>\r
132                                     </block>\r
133                                 </outcome>\r
134                             </switch>\r
135                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_vni'`">\r
136                                 <outcome value="true">\r
137                                     <set>\r
138                                         <parameter name="prop.dci-connects.vni" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
139                                     </set>\r
140                                 </outcome>\r
141                             </switch>\r
142                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'tunnelType'`">\r
143                                 <outcome value="true">\r
144                                     <set>\r
145                                         <parameter name="prop.dci-connects.tunnelType" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
146                                     </set>\r
147                                 </outcome>\r
148                             </switch>\r
149                         </block>\r
150                     </for>\r
151                     <block atomic="true">\r
152                         <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="esr-thirdparty-sdnc" key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $prop.dci-connects.id AND         depth = '1'" pfx="tmp.aai.esr-thirdparty-sdnc" local-only="false">\r
153                             <outcome value="success">\r
154                                 <set>\r
155                                     <parameter name="prop.sdncRestApi.thirdpartySdnc.url" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />\r
156                                     <parameter name="prop.sdncRestApi.thirdpartySdnc.user" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />\r
157                                     <parameter name="prop.sdncRestApi.thirdpartySdnc.password" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />\r
158                                 </set>\r
159                             </outcome>\r
160                             <outcome value="not-found">\r
161                                 <return status="failure">\r
162                                     <parameter name="error-code" value="" />\r
163                                     <parameter name="error-message" value="" />\r
164                                 </return>\r
165                             </outcome>\r
166                             <outcome value="Other">\r
167                                 <return status="failure">\r
168                                     <parameter name="error-code" value="" />\r
169                                     <parameter name="error-message" value="" />\r
170                                 </return>\r
171                             </outcome>\r
172                         </get-resource>\r
173                         <execute plugin="org.onap.ccsdk.sli.plugins.prop.PropertiesNode" method="readProperties">\r
174                             <parameter name="fileName" value="%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties" />\r
175                             <parameter name="contextPrefix" value="prop" />\r
176                         </execute>\r
177                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
178                             <parameter name="logger" value="message-log" />\r
179                             <parameter name="field1" value="__TIMESTAMP__" />\r
180                             <parameter name="field2" value="dci-network-topology-operation-activate" />\r
181                             <parameter name="field3" value="dci-connects.name" />\r
182                             <parameter name="field4" value="`$prop.dci-connects.name`" />\r
183                             <parameter name="field5" value="dci-connects.id" />\r
184                             <parameter name="field6" value="`$prop.dci-connects.id`" />\r
185                             <parameter name="field7" value="dci-connects.tunnelType" />\r
186                             <parameter name="field8" value="`$prop.dci-connects.tunnelType`" />\r
187                             <parameter name="field9" value="sdncRestApi.thirdpartySdnc.url" />\r
188                             <parameter name="field10" value="`$prop.sdncRestApi.thirdpartySdnc.url`" />\r
189                         </record>\r
190                         <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
191                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/actokentemplate.json'`" />\r
192                             <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`" />\r
193                             <parameter name="format" value="json" />\r
194                             <parameter name="httpMethod" value="post" />\r
195                             <parameter name="responsePrefix" value="token-result" />\r
196                             <outcome value="success">\r
197                                 <set>\r
198                                     <parameter name="prop.sdncRestApi.token_id" value="$token-result.token_id" />\r
199                                 </set>\r
200                             </outcome>\r
201                             <outcome value="failure">\r
202                                 <return status="failure">\r
203                                     <parameter name="ack-final" value="Y" />\r
204                                     <parameter name="error-code" value="500" />\r
205                                     <parameter name="error-message" value="Error executing get token rest api" />\r
206                                 </return>\r
207                             </outcome>\r
208                         </execute>\r
209                         <switch test="`$prop.dci-connects.tunnelType`">\r
210                             <outcome value="L3-DCI">\r
211                                 <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
212                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir +'/l3-dci-connects-template.json'`" />\r
213                                     <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url +'/v2.0/l3-dci-connects'`" />\r
214                                     <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
215                                     <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />\r
216                                     <parameter name="format" value="json" />\r
217                                     <parameter name="httpMethod" value="post" />\r
218                                     <parameter name="responsePrefix" value="restapi-result" />\r
219                                     <parameter name="customHttpHeaders" value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />\r
220                                 </execute>\r
221                             </outcome>\r
222                             <outcome value="L2-DCI">\r
223                                 <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
224                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir +'/l2-dci-connects-template.json'`" />\r
225                                     <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url +'/v2.0/l2-dci-connects'`" />\r
226                                     <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
227                                     <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />\r
228                                     <parameter name="format" value="json" />\r
229                                     <parameter name="httpMethod" value="post" />\r
230                                     <parameter name="responsePrefix" value="restapi-result" />\r
231                                     <parameter name="customHttpHeaders" value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />\r
232                                 </execute>\r
233                             </outcome>\r
234                         </switch>\r
235                     </block>\r
236                 </block>\r
237                 <block atomic="true">\r
238                     <for index="idx" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
239                         <block>\r
240                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_id'`">\r
241                                 <outcome value="true">\r
242                                     <set>\r
243                                         <parameter name="prop.dci-connects.id" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
244                                     </set>\r
245                                 </outcome>\r
246                             </switch>\r
247                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_description'`">\r
248                                 <outcome value="true">\r
249                                     <set>\r
250                                         <parameter name="prop.dci-connects.description" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
251                                     </set>\r
252                                 </outcome>\r
253                                 <outcome value="false">\r
254                                     <set>\r
255                                         <parameter name="prop.dci-connects.description" value="" />\r
256                                     </set>\r
257                                 </outcome>\r
258                             </switch>\r
259                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_networkName'`">\r
260                                 <outcome value="true">\r
261                                     <block atomic="true">\r
262                                         <set>\r
263                                             <parameter name="tmp.dci-connects.local_networks.original" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
264                                         </set>\r
265                                         <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="split">\r
266                                             <parameter name="original_string" value="`$tmp.dci-connects.local_networks.original`" />\r
267                                             <parameter name="regex" value="," />\r
268                                             <parameter name="ctx_memory_result_key" value="tmp.dci-connects.local_networks" />\r
269                                             <outcome value="success">\r
270                                                 <for index="idx" start="0" end="`$tmp.dci-connects.local_networks_length`">\r
271                                                     <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="l3-network" key="l3-network.network-name = $tmp.dci-connects.local_networks[$idx] AND         depth = '0'" pfx="tmp.aai.l3-network" local-only="false">\r
272                                                         <outcome value="success">\r
273                                                             <set>\r
274                                                                 <parameter name="prop.dci-connects.local_networks[$idx]" value="`$tmp.aai.l3-network.network-id`" />\r
275                                                             </set>\r
276                                                         </outcome>\r
277                                                         <outcome value="not-found">\r
278                                                             <return status="failure">\r
279                                                                 <parameter name="error-code" value="" />\r
280                                                                 <parameter name="error-message" value="" />\r
281                                                             </return>\r
282                                                         </outcome>\r
283                                                         <outcome value="Other">\r
284                                                             <return status="failure">\r
285                                                                 <parameter name="error-code" value="" />\r
286                                                                 <parameter name="error-message" value="" />\r
287                                                             </return>\r
288                                                         </outcome>\r
289                                                     </get-resource>\r
290                                                 </for>\r
291                                             </outcome>\r
292                                             <outcome value="failure">\r
293                                                 <return status="failure">\r
294                                                     <parameter name="error-code" value="" />\r
295                                                     <parameter name="error-message" value="An error occured while splitting sna1_route" />\r
296                                                 </return>\r
297                                             </outcome>\r
298                                         </execute>\r
299                                     </block>\r
300                                 </outcome>\r
301                             </switch>\r
302                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_routerId'`">\r
303                                 <outcome value="true">\r
304                                     <set>\r
305                                         <parameter name="prop.dci-connects.router_id" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
306                                     </set>\r
307                                 </outcome>\r
308                             </switch>\r
309                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_importRT1'`">\r
310                                 <outcome value="true">\r
311                                     <block atomic="true">\r
312                                         <set>\r
313                                             <parameter name="tmp.dci-connects.evpn_irts.original" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
314                                         </set>\r
315                                         <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="split">\r
316                                             <parameter name="original_string" value="`$tmp.dci-connects.evpn_irts.original`" />\r
317                                             <parameter name="regex" value="," />\r
318                                             <parameter name="ctx_memory_result_key" value="tmp.dci-connects.evpn_irts" />\r
319                                             <outcome value="success">\r
320                                                 <for index="idx" start="0" end="`$tmp.dci-connects.evpn_irts_length`">\r
321                                                     <set>\r
322                                                         <parameter name="prop.dci-connects.evpn_irts[$idx]" value="`$tmp.dci-connects.evpn_irts[$idx]`" />\r
323                                                     </set>\r
324                                                 </for>\r
325                                             </outcome>\r
326                                             <outcome value="failure">\r
327                                                 <return status="failure">\r
328                                                     <parameter name="error-code" value="" />\r
329                                                     <parameter name="error-message" value="An error occured while splitting sna1_route" />\r
330                                                 </return>\r
331                                             </outcome>\r
332                                         </execute>\r
333                                     </block>\r
334                                 </outcome>\r
335                             </switch>\r
336                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_exportRT1'`">\r
337                                 <outcome value="true">\r
338                                     <block atomic="true">\r
339                                         <set>\r
340                                             <parameter name="tmp.dci-connects.evpn_erts.original" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
341                                         </set>\r
342                                         <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="split">\r
343                                             <parameter name="original_string" value="`$tmp.dci-connects.evpn_erts.original`" />\r
344                                             <parameter name="regex" value="," />\r
345                                             <parameter name="ctx_memory_result_key" value="tmp.dci-connects.evpn_erts" />\r
346                                             <outcome value="success">\r
347                                                 <for index="idx" start="0" end="`$tmp.dci-connects.evpn_erts_length`">\r
348                                                     <set>\r
349                                                         <parameter name="prop.dci-connects.evpn_erts[$idx]" value="`$tmp.dci-connects.evpn_erts[$idx]`" />\r
350                                                     </set>\r
351                                                 </for>\r
352                                             </outcome>\r
353                                             <outcome value="failure">\r
354                                                 <return status="failure">\r
355                                                     <parameter name="error-code" value="" />\r
356                                                     <parameter name="error-message" value="An error occured while splitting sna1_route" />\r
357                                                 </return>\r
358                                             </outcome>\r
359                                         </execute>\r
360                                     </block>\r
361                                 </outcome>\r
362                             </switch>\r
363                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_vni'`">\r
364                                 <outcome value="true">\r
365                                     <set>\r
366                                         <parameter name="prop.dci-connects.vni" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
367                                     </set>\r
368                                 </outcome>\r
369                             </switch>\r
370                         </block>\r
371                     </for>\r
372                     <block atomic="true">\r
373                         <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="esr-thirdparty-sdnc" key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $prop.dci-connects.id AND         depth = '1'" pfx="tmp.aai.esr-thirdparty-sdnc" local-only="false">\r
374                             <outcome value="success">\r
375                                 <set>\r
376                                     <parameter name="prop.sdncRestApi.thirdpartySdnc.url" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />\r
377                                     <parameter name="prop.sdncRestApi.thirdpartySdnc.user" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />\r
378                                     <parameter name="prop.sdncRestApi.thirdpartySdnc.password" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />\r
379                                 </set>\r
380                             </outcome>\r
381                             <outcome value="not-found">\r
382                                 <return status="failure">\r
383                                     <parameter name="error-code" value="" />\r
384                                     <parameter name="error-message" value="" />\r
385                                 </return>\r
386                             </outcome>\r
387                             <outcome value="Other">\r
388                                 <return status="failure">\r
389                                     <parameter name="error-code" value="" />\r
390                                     <parameter name="error-message" value="" />\r
391                                 </return>\r
392                             </outcome>\r
393                         </get-resource>\r
394                         <execute plugin="org.onap.ccsdk.sli.plugins.prop.PropertiesNode" method="readProperties">\r
395                             <parameter name="fileName" value="%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties" />\r
396                             <parameter name="contextPrefix" value="prop" />\r
397                         </execute>\r
398                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
399                             <parameter name="logger" value="message-log" />\r
400                             <parameter name="field1" value="__TIMESTAMP__" />\r
401                             <parameter name="field2" value="dci-network-topology-operation-activate" />\r
402                             <parameter name="field3" value="dci-connects.name" />\r
403                             <parameter name="field4" value="`$prop.dci-connects.name`" />\r
404                             <parameter name="field5" value="dci-connects.id" />\r
405                             <parameter name="field6" value="`$prop.dci-connects.id`" />\r
406                             <parameter name="field7" value="dci-connects.tunnelType" />\r
407                             <parameter name="field8" value="`$prop.dci-connects.tunnelType`" />\r
408                             <parameter name="field9" value="sdncRestApi.thirdpartySdnc.url" />\r
409                             <parameter name="field10" value="`$prop.sdncRestApi.thirdpartySdnc.url`" />\r
410                         </record>\r
411                         <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
412                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/actokentemplate.json'`" />\r
413                             <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`" />\r
414                             <parameter name="format" value="json" />\r
415                             <parameter name="httpMethod" value="post" />\r
416                             <parameter name="responsePrefix" value="token-result" />\r
417                             <outcome value="success">\r
418                                 <set>\r
419                                     <parameter name="prop.sdncRestApi.token_id" value="$token-result.token_id" />\r
420                                 </set>\r
421                             </outcome>\r
422                             <outcome value="failure">\r
423                                 <return status="failure">\r
424                                     <parameter name="ack-final" value="Y" />\r
425                                     <parameter name="error-code" value="500" />\r
426                                     <parameter name="error-message" value="Error executing get token rest api" />\r
427                                 </return>\r
428                             </outcome>\r
429                         </execute>\r
430                         <switch test="`$prop.dci-connects.tunnelType`">\r
431                             <outcome value="L3-DCI">\r
432                                 <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
433                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir +'/l3-dci-connects-template.json'`" />\r
434                                     <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url +'/v2.0/l3-dci-connects'`" />\r
435                                     <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
436                                     <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />\r
437                                     <parameter name="format" value="json" />\r
438                                     <parameter name="httpMethod" value="post" />\r
439                                     <parameter name="responsePrefix" value="restapi-result" />\r
440                                     <parameter name="customHttpHeaders" value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />\r
441                                 </execute>\r
442                             </outcome>\r
443                             <outcome value="L2-DCI">\r
444                                 <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
445                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir +'/l2-dci-connects-template.json'`" />\r
446                                     <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url +'/v2.0/l2-dci-connects'`" />\r
447                                     <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
448                                     <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />\r
449                                     <parameter name="format" value="json" />\r
450                                     <parameter name="httpMethod" value="post" />\r
451                                     <parameter name="responsePrefix" value="restapi-result" />\r
452                                     <parameter name="customHttpHeaders" value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />\r
453                                 </execute>\r
454                             </outcome>\r
455                         </switch>\r
456                     </block>\r
457                 </block>\r
458                 <block atomic="true">\r
459                     <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="generateUUID">\r
460                         <parameter name="ctx-destination" value="prop.dci.network-id" />\r
461                     </execute>\r
462                     <switch test="`$service-data.networks.network_length`">\r
463                         <outcome value="">\r
464                             <set>\r
465                                 <parameter name="nidx" value="0" />\r
466                             </set>\r
467                         </outcome>\r
468                         <outcome value="Other">\r
469                             <set>\r
470                                 <parameter name="nidx" value="`$service-data.networks.network_length`" />\r
471                             </set>\r
472                         </outcome>\r
473                     </switch>\r
474                     <set>\r
475                         <parameter name="service-data.networks.network[$nidx].network-id" value="`$prop.dci.network-id`" />\r
476                         <parameter name="service-data.networks.network[$nidx].network-data.sdnc-request-header." value="`$network-topology-operation-input.sdnc-request-header.`" />\r
477                         <parameter name="service-data.networks.network[$nidx].network-data.request-information." value="`$network-topology-operation-input.request-information.`" />\r
478                         <parameter name="service-data.networks.network[$nidx].network-data.service-information." value="`$network-topology-operation-input.service-information.`" />\r
479                         <parameter name="service-data.networks.network[$nidx].network-data.network-information." value="`$network-topology-operation-input.network-information.`" />\r
480                         <parameter name="service-data.networks.network[$nidx].network-data.network-request-input." value="`$network-topology-operation-input.network-request-input.`" />\r
481                         <parameter name="service-data.networks.network_length" value="`$nidx+1`" />\r
482                         <parameter name="service-data.networks.network[$nidx].network-data.network-level-oper-status.order-status" value="Created" />\r
483                         <parameter name="service-data.networks.network[$nidx].network-data.network-level-oper-status.last-rpc-action" value="`$network-topology-operation-input.sdnc-request-header.svc-action`" />\r
484                         <parameter name="service-data.networks.network[$nidx].network-data.network-level-oper-status.last-action" value="`$network-topology-operation-input.request-information.request-action`" />\r
485                     </set>\r
486                     <set>\r
487                         <parameter name="networkId" value="`$prop.dci.network-id`" />\r
488                         <parameter name="network-object-path" value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'  + $network-topology-operation-input.service-information.service-instance-id  + '/service-data/networks/network/'  + $prop.dci.network-id  + '/network-data/'` " />\r
489                     </set>\r
490                 </block>\r
491             </block>\r
492             <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="configuration" key="configuration.configuration-id = $prop.dci.network-id">\r
493                 <parameter name="configuration-id" value="`$prop.dci.network-id`" />\r
494                 <parameter name="configuration-type" value="overlay" />\r
495                 <parameter name="orchestration-status" value="Created" />\r
496                 <parameter name="configuration-selflink" value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'  + $network-topology-operation-input.service-information.service-instance-id  + '/service-data/networks/network/'  + $prop.dci.network-id  + '/network-data/'` " />\r
497             </save>\r
498             <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="service-instance:relationship-list" key="service-instance.service-instance-id = $service-data.service-information.service-id">\r
499                 <parameter name="relationship-list.relationship[0].related-to" value="configuration" />\r
500                 <parameter name="relationship-list.relationship[0].related-link" value="/network/configurations/configuration" />\r
501                 <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="configuration.configuration-id" />\r
502                 <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.dci.network-id`" />\r
503                 <parameter name="relationship-list.relationship[0].relationship-data[1].relationship-key" value="configuration.configuration-type" />\r
504                 <parameter name="relationship-list.relationship[0].relationship-data[1].relationship-value" value="overlay" />\r
505             </save>\r
506             <return status="success">\r
507                 <parameter name="ack-final-indicator" value="Y" />\r
508                 <parameter name="error-code" value="200" />\r
509                 <parameter name="error-message" value="`$error-message`" />\r
510             </return>\r
511         </block>\r
512     </method>\r
513 </service-logic>\r