Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / platform-logic / lcm / src / main / xml / LCM_download-n-e-sw.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='LCM' version='${project.version}'>\r
4     <method rpc='download-n-e-sw' mode='sync'>\r
5         <block>\r
6             <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\r
7                 <parameter name='fileName' value='%SDNC_CONFIG_DIR%/lcm-dg.properties' />\r
8                 <parameter name='contextPrefix' value='prop' />\r
9             </execute>\r
10             <set>\r
11                 <parameter name='status.code' value='200' />\r
12                 <parameter name='status.message' value='unexpected return from DG' />\r
13                 <parameter name='quote' value="'" />\r
14                 <parameter name='outputPayloadField' value='.Output' />\r
15             </set>\r
16             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx'>\r
17                 <parameter name='source' value='download-n-e-sw-input.payload' />\r
18                 <parameter name='outputPath' value='payloadJson' />\r
19                 <parameter name='isEscaped' value='true' />\r
20             </execute>\r
21             <switch test="`$download-n-e-sw-input.action-identifiers.pnf-name`">\r
22                 <outcome value=''>\r
23                     <block>\r
24                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
25                             <parameter name='outputPath' value='playbookname' />\r
26                             <parameter name='source' value="`'prop.lcm.' + $payloadJson.nf-naming-code + '.download-n-e-sw.playbookname'`" />\r
27                         </execute>\r
28                         <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
29         resource="generic-vnf" \r
30                 key="generic-vnf.vnf-id = $download-n-e-sw-input.action-identifiers.vnf-id" \r
31                 local-only="false" \r
32                 pfx='aai.generic-vnf'>\r
33                             <outcome value='success'>\r
34                                 <block>\r
35                                     <switch test='`$playbookname`'>\r
36                                         <outcome value=''>\r
37                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
38                                                 <parameter name='outputPath' value='playbookname' />\r
39                                                 <parameter name='source' value="`'prop.lcm.' + $aai.generic-vnf.nf-naming-code + '.download-n-e-sw.playbookname'`" />\r
40                                             </execute>\r
41                                         </outcome>\r
42                                     </switch>\r
43                                     <set>\r
44                                         <parameter name='nodelist' value="`'[' + $quote + $aai.generic-vnf.ipv4-oam-address +  $quote + ']'`"/>\r
45                                     </set>\r
46                                 </block>\r
47                             </outcome>\r
48                         </get-resource>\r
49                     </block>\r
50                 </outcome>\r
51                 <outcome value='Other'>\r
52                     <block>\r
53                         <set>\r
54                             <parameter name='nodelist' value="`'[' + $quote + $payloadJson.ipaddress-v4-oam +  $quote + ']'`"/>\r
55                             <parameter name='outputPayloadField' value="`'.' + $payloadJson.ipaddress-v4-oam + '.Output'`"/>\r
56                         </set>\r
57                         <switch test='`$payloadJson.playbook-name`'>\r
58                             <outcome value=''>\r
59                                 <set>\r
60                                     <parameter name='playbookname' value='`$prop.lcm.pnf.download-n-e-sw.playbookname`'/>\r
61                                 </set>\r
62                             </outcome>\r
63                             <outcome value='Other'>\r
64                                 <set>\r
65                                     <parameter name='playbookname' value='`$payloadJson.playbook-name`'/>\r
66                                 </set>\r
67                             </outcome>\r
68                         </switch>\r
69                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='updateJsonObjectString'>\r
70                             <parameter name='source' value='download-n-e-sw-input.payload' />\r
71                             <parameter name='outputPath' value='download-n-e-sw-input.payload' />\r
72                             <parameter name='add.pnf-flag' value='true' />\r
73                             <parameter name='add.pnfName' value="`$download-n-e-sw-input.action-identifiers.pnf-name`" />\r
74                             <parameter name='delete.ipaddress-v4-oam' value="" />\r
75                             <parameter name='delete.playbook-name' value="" />\r
76                         </execute>\r
77                     </block>\r
78                 </outcome>\r
79             </switch>\r
80             <switch test='`$playbookname`'>\r
81                 <outcome value=''>\r
82                     <set>\r
83                         <parameter name='playbookname' value='`$prop.lcm.download-n-e-sw.playbookname`'/>\r
84                     </set>\r
85                 </outcome>\r
86             </switch>\r
87             <switch test='`$nodelist`'>\r
88                 <outcome value=''>\r
89                     <set>\r
90                         <parameter name='nodelist' value="`$prop.ansible.nodelist`"/>\r
91                     </set>\r
92                 </outcome>\r
93                 <outcome value="['']">\r
94                     <set>\r
95                         <parameter name='nodelist' value="`$prop.ansible.nodelist`"/>\r
96                     </set>\r
97                 </outcome>\r
98             </switch>\r
99             <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
100                 <parameter name="logger" value="message-log"/>\r
101                 <parameter name="field1" value='`$playbookname`'/>\r
102                 <parameter name="field2" value='`$nodelist`'/>\r
103             </record>\r
104             <execute plugin='org.onap.ccsdk.sli.adaptors.ansible.AnsibleAdapter' method='reqExec' >\r
105                 <parameter name='AgentUrl' value='`$prop.ansible.agenturl`'/>\r
106                 <parameter name='User' value='`$prop.ansible.user`'/>\r
107                 <parameter name='Password' value='`$prop.ansible.password`'/>\r
108                 <parameter name='LocalParameters' value='`$prop.ansible.lcm.localparameters`'/>\r
109                 <parameter name='EnvParameters' value='`$download-n-e-sw-input.payload`'/>\r
110                 <parameter name='NodeList' value="`$nodelist`"/>\r
111                 <parameter name='Timeout' value='`$prop.ansible.timeout`'/>\r
112                 <parameter name='Version' value='`$prop.ansible.version`'/>\r
113                 <parameter name='Id' value='`$download-n-e-sw-input.common-header.request-id`'/>\r
114                 <parameter name='PlaybookName' value='`$playbookname`'/>\r
115                 <outcome value='not-found'>\r
116                     <block>\r
117                         <set>\r
118                             <parameter name='org.onap.appc.adapter.ansible.result.code' value='401'/>\r
119                             <parameter name='org.onap.appc.adapter.ansible.message' value='Ansible Adapter was not found'/>\r
120                         </set>\r
121                         <block>\r
122                             <set>\r
123                                 <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
124                                 <parameter name='lcm-dmaap.correlation-id' value="`$download-n-e-sw-input.common-header.request-id + '-' + $download-n-e-sw-input.common-header.sub-request-id`"/>\r
125                                 <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
126                                 <parameter name='lcm-dmaap.rpc-name' value='download-n-e-sw'/>\r
127                                 <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
128                                 <parameter name='lcm-dmaap.timestamp' value='`$download-n-e-sw-input.common-header.timestamp`'/>\r
129                                 <parameter name='lcm-dmaap.api-ver' value='`$download-n-e-sw-input.common-header.api-ver`'/>\r
130                                 <parameter name='lcm-dmaap.originator-id' value='`$download-n-e-sw-input.common-header.originator-id`'/>\r
131                                 <parameter name='lcm-dmaap.request-id' value='`$download-n-e-sw-input.common-header.request-id`'/>\r
132                                 <parameter name='lcm-dmaap.sub-request-id' value='`$download-n-e-sw-input.common-header.sub-request-id`'/>\r
133                                 <parameter name='lcm-dmaap.flags.mode' value='`$download-n-e-sw-input.common-header.flags.mode`'/>\r
134                                 <parameter name='lcm-dmaap.flags.force' value='`$download-n-e-sw-input.common-header.flags.force`'/>\r
135                                 <parameter name='lcm-dmaap.flags.ttl' value='`$download-n-e-sw-input.common-header.flags.ttl`'/>\r
136                                 <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
137                                 <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
138                             </set>\r
139                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
140                                 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
141                                 <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
142                                 <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
143                                 <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
144                                 <parameter name='format' value='json' />\r
145                                 <parameter name='httpMethod' value='POST' />\r
146                                 <parameter name='contentType' value='application/json' />\r
147                                 <parameter name="responsePrefix" value="lcm" />\r
148                                 <outcome value='failure'>\r
149                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
150                                         <parameter name="logger" value="message-log"/>\r
151                                         <parameter name="field1" value='Failed to Publish to DMaap'/>\r
152                                     </record>\r
153                                 </outcome>\r
154                             </execute>\r
155                             <return status='failure'>\r
156                                 <parameter name='status.code' value='401' />\r
157                                 <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
158                             </return>\r
159                         </block>\r
160                     </block>\r
161                 </outcome>\r
162                 <outcome value='failure'>\r
163                     <block>\r
164                         <set>\r
165                             <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
166                             <parameter name='lcm-dmaap.correlation-id' value="`$download-n-e-sw-input.common-header.request-id + '-' + $download-n-e-sw-input.common-header.sub-request-id`"/>\r
167                             <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
168                             <parameter name='lcm-dmaap.rpc-name' value='download-n-e-sw'/>\r
169                             <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
170                             <parameter name='lcm-dmaap.timestamp' value='`$download-n-e-sw-input.common-header.timestamp`'/>\r
171                             <parameter name='lcm-dmaap.api-ver' value='`$download-n-e-sw-input.common-header.api-ver`'/>\r
172                             <parameter name='lcm-dmaap.originator-id' value='`$download-n-e-sw-input.common-header.originator-id`'/>\r
173                             <parameter name='lcm-dmaap.request-id' value='`$download-n-e-sw-input.common-header.request-id`'/>\r
174                             <parameter name='lcm-dmaap.sub-request-id' value='`$download-n-e-sw-input.common-header.sub-request-id`'/>\r
175                             <parameter name='lcm-dmaap.flags.mode' value='`$download-n-e-sw-input.common-header.flags.mode`'/>\r
176                             <parameter name='lcm-dmaap.flags.force' value='`$download-n-e-sw-input.common-header.flags.force`'/>\r
177                             <parameter name='lcm-dmaap.flags.ttl' value='`$download-n-e-sw-input.common-header.flags.ttl`'/>\r
178                             <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
179                             <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
180                         </set>\r
181                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
182                             <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
183                             <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
184                             <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
185                             <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
186                             <parameter name='format' value='json' />\r
187                             <parameter name='httpMethod' value='POST' />\r
188                             <parameter name='contentType' value='application/json' />\r
189                             <parameter name="responsePrefix" value="lcm" />\r
190                             <outcome value='failure'>\r
191                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
192                                     <parameter name="logger" value="message-log"/>\r
193                                     <parameter name="field1" value='Failed to Publish to DMaap'/>\r
194                                 </record>\r
195                             </outcome>\r
196                         </execute>\r
197                         <return status='failure'>\r
198                             <parameter name='status.code' value='401' />\r
199                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
200                         </return>\r
201                     </block>\r
202                 </outcome>\r
203                 <outcome value='Other'>\r
204                     <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
205                         <outcome value='101'>\r
206                             <block>\r
207                                 <set>\r
208                                     <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
209                                     <parameter name='lcm-dmaap.correlation-id' value="`$download-n-e-sw-input.common-header.request-id + '-' + $download-n-e-sw-input.common-header.sub-request-id`"/>\r
210                                     <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
211                                     <parameter name='lcm-dmaap.rpc-name' value='download-n-e-sw'/>\r
212                                     <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
213                                     <parameter name='lcm-dmaap.timestamp' value='`$download-n-e-sw-input.common-header.timestamp`'/>\r
214                                     <parameter name='lcm-dmaap.api-ver' value='`$download-n-e-sw-input.common-header.api-ver`'/>\r
215                                     <parameter name='lcm-dmaap.originator-id' value='`$download-n-e-sw-input.common-header.originator-id`'/>\r
216                                     <parameter name='lcm-dmaap.request-id' value='`$download-n-e-sw-input.common-header.request-id`'/>\r
217                                     <parameter name='lcm-dmaap.sub-request-id' value='`$download-n-e-sw-input.common-header.sub-request-id`'/>\r
218                                     <parameter name='lcm-dmaap.flags.mode' value='`$download-n-e-sw-input.common-header.flags.mode`'/>\r
219                                     <parameter name='lcm-dmaap.flags.force' value='`$download-n-e-sw-input.common-header.flags.force`'/>\r
220                                     <parameter name='lcm-dmaap.flags.ttl' value='`$download-n-e-sw-input.common-header.flags.ttl`'/>\r
221                                     <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
222                                     <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
223                                 </set>\r
224                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
225                                     <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
226                                     <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
227                                     <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
228                                     <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
229                                     <parameter name='format' value='json' />\r
230                                     <parameter name='httpMethod' value='POST' />\r
231                                     <parameter name='contentType' value='application/json' />\r
232                                     <parameter name="responsePrefix" value="lcm" />\r
233                                     <outcome value='failure'>\r
234                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
235                                             <parameter name="logger" value="message-log"/>\r
236                                             <parameter name="field1" value='Failed to Publish to DMaap'/>\r
237                                         </record>\r
238                                     </outcome>\r
239                                 </execute>\r
240                                 <return status='failure'>\r
241                                     <parameter name='status.code' value='401' />\r
242                                     <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
243                                 </return>\r
244                             </block>\r
245                         </outcome>\r
246                         <outcome value='500'>\r
247                             <block>\r
248                                 <set>\r
249                                     <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
250                                     <parameter name='lcm-dmaap.correlation-id' value="`$download-n-e-sw-input.common-header.request-id + '-' + $download-n-e-sw-input.common-header.sub-request-id`"/>\r
251                                     <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
252                                     <parameter name='lcm-dmaap.rpc-name' value='download-n-e-sw'/>\r
253                                     <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
254                                     <parameter name='lcm-dmaap.timestamp' value='`$download-n-e-sw-input.common-header.timestamp`'/>\r
255                                     <parameter name='lcm-dmaap.api-ver' value='`$download-n-e-sw-input.common-header.api-ver`'/>\r
256                                     <parameter name='lcm-dmaap.originator-id' value='`$download-n-e-sw-input.common-header.originator-id`'/>\r
257                                     <parameter name='lcm-dmaap.request-id' value='`$download-n-e-sw-input.common-header.request-id`'/>\r
258                                     <parameter name='lcm-dmaap.sub-request-id' value='`$download-n-e-sw-input.common-header.sub-request-id`'/>\r
259                                     <parameter name='lcm-dmaap.flags.mode' value='`$download-n-e-sw-input.common-header.flags.mode`'/>\r
260                                     <parameter name='lcm-dmaap.flags.force' value='`$download-n-e-sw-input.common-header.flags.force`'/>\r
261                                     <parameter name='lcm-dmaap.flags.ttl' value='`$download-n-e-sw-input.common-header.flags.ttl`'/>\r
262                                     <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
263                                     <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
264                                 </set>\r
265                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
266                                     <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
267                                     <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
268                                     <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
269                                     <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
270                                     <parameter name='format' value='json' />\r
271                                     <parameter name='httpMethod' value='POST' />\r
272                                     <parameter name='contentType' value='application/json' />\r
273                                     <parameter name="responsePrefix" value="lcm" />\r
274                                     <outcome value='failure'>\r
275                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
276                                             <parameter name="logger" value="message-log"/>\r
277                                             <parameter name="field1" value='Failed to Publish to DMaap'/>\r
278                                         </record>\r
279                                     </outcome>\r
280                                 </execute>\r
281                                 <return status='failure'>\r
282                                     <parameter name='status.code' value='401' />\r
283                                     <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
284                                 </return>\r
285                             </block>\r
286                         </outcome>\r
287                         <outcome value='100'>\r
288                             <execute plugin='org.onap.ccsdk.sli.adaptors.ansible.AnsibleAdapter' method='reqExecResult' >\r
289                                 <parameter name='AgentUrl' value='`$prop.ansible.agenturl`'/>\r
290                                 <parameter name='User' value='`$prop.ansible.user`'/>\r
291                                 <parameter name='Password' value='`$prop.ansible.password`'/>\r
292                                 <parameter name='Id' value='`$org.onap.appc.adapter.ansible.Id`'/>\r
293                                 <parameter name='PlaybookName' value='`$playbookname`'/>\r
294                                 <outcome value='failure'>\r
295                                     <block>\r
296                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx'>\r
297                                             <parameter name='source' value='org.onap.appc.adapter.ansible.results' />\r
298                                             <parameter name='outputPath' value='resultsJson' />\r
299                                             <parameter name='isEscaped' value='false' />\r
300                                         </execute>\r
301                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
302                                             <parameter name='source' value="`'resultsJson' + $outputPayloadField`" />\r
303                                             <parameter name='outputPath' value='outputPayload' />\r
304                                         </execute>\r
305                                         <set>\r
306                                             <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
307                                             <parameter name='lcm-dmaap.correlation-id' value="`$download-n-e-sw-input.common-header.request-id + '-' + $download-n-e-sw-input.common-header.sub-request-id`"/>\r
308                                             <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
309                                             <parameter name='lcm-dmaap.rpc-name' value='download-n-e-sw'/>\r
310                                             <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
311                                             <parameter name='lcm-dmaap.timestamp' value='`$download-n-e-sw-input.common-header.timestamp`'/>\r
312                                             <parameter name='lcm-dmaap.api-ver' value='`$download-n-e-sw-input.common-header.api-ver`'/>\r
313                                             <parameter name='lcm-dmaap.originator-id' value='`$download-n-e-sw-input.common-header.originator-id`'/>\r
314                                             <parameter name='lcm-dmaap.request-id' value='`$download-n-e-sw-input.common-header.request-id`'/>\r
315                                             <parameter name='lcm-dmaap.sub-request-id' value='`$download-n-e-sw-input.common-header.sub-request-id`'/>\r
316                                             <parameter name='lcm-dmaap.flags.mode' value='`$download-n-e-sw-input.common-header.flags.mode`'/>\r
317                                             <parameter name='lcm-dmaap.flags.force' value='`$download-n-e-sw-input.common-header.flags.force`'/>\r
318                                             <parameter name='lcm-dmaap.flags.ttl' value='`$download-n-e-sw-input.common-header.flags.ttl`'/>\r
319                                             <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
320                                             <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
321                                         </set>\r
322                                         <switch test='`$outputPayload`'>\r
323                                             <outcome value='Other'>\r
324                                                 <set>\r
325                                                     <parameter name='lcm-dmaap.payload' value='`$outputPayload`'/>\r
326                                                 </set>\r
327                                             </outcome>\r
328                                         </switch>\r
329                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
330                                             <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
331                                             <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
332                                             <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
333                                             <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
334                                             <parameter name='format' value='json' />\r
335                                             <parameter name='httpMethod' value='POST' />\r
336                                             <parameter name='contentType' value='application/json' />\r
337                                             <parameter name="responsePrefix" value="lcm" />\r
338                                             <outcome value='failure'>\r
339                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
340                                                     <parameter name="logger" value="message-log"/>\r
341                                                     <parameter name="field1" value='Failed to Publish to DMaap'/>\r
342                                                 </record>\r
343                                             </outcome>\r
344                                         </execute>\r
345                                         <switch test='`$outputPayload`'>\r
346                                             <outcome value=''>\r
347                                                 <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
348                                                     <outcome value='400'>\r
349                                                         <return status='success'>\r
350                                                             <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
351                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
352                                                         </return>\r
353                                                     </outcome>\r
354                                                     <outcome value='Other'>\r
355                                                         <return status='failure'>\r
356                                                             <parameter name='status.code' value='401' />\r
357                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
358                                                         </return>\r
359                                                     </outcome>\r
360                                                 </switch>\r
361                                             </outcome>\r
362                                             <outcome value='Other'>\r
363                                                 <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
364                                                     <outcome value='400'>\r
365                                                         <return status='success'>\r
366                                                             <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
367                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
368                                                             <parameter name='payload' value='`$outputPayload`'/>\r
369                                                         </return>\r
370                                                     </outcome>\r
371                                                     <outcome value='Other'>\r
372                                                         <return status='failure'>\r
373                                                             <parameter name='status.code' value='401' />\r
374                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
375                                                             <parameter name='payload' value='`$outputPayload`'/>\r
376                                                         </return>\r
377                                                     </outcome>\r
378                                                 </switch>\r
379                                             </outcome>\r
380                                         </switch>\r
381                                     </block>\r
382                                 </outcome>\r
383                                 <outcome value='success'>\r
384                                     <block>\r
385                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx'>\r
386                                             <parameter name='source' value='org.onap.appc.adapter.ansible.results' />\r
387                                             <parameter name='outputPath' value='resultsJson' />\r
388                                             <parameter name='isEscaped' value='false' />\r
389                                         </execute>\r
390                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
391                                             <parameter name='source' value="`'resultsJson' + $outputPayloadField`" />\r
392                                             <parameter name='outputPath' value='outputPayload' />\r
393                                         </execute>\r
394                                         <set>\r
395                                             <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
396                                             <parameter name='lcm-dmaap.correlation-id' value="`$download-n-e-sw-input.common-header.request-id + '-' + $download-n-e-sw-input.common-header.sub-request-id`"/>\r
397                                             <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
398                                             <parameter name='lcm-dmaap.rpc-name' value='download-n-e-sw'/>\r
399                                             <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
400                                             <parameter name='lcm-dmaap.timestamp' value='`$download-n-e-sw-input.common-header.timestamp`'/>\r
401                                             <parameter name='lcm-dmaap.api-ver' value='`$download-n-e-sw-input.common-header.api-ver`'/>\r
402                                             <parameter name='lcm-dmaap.originator-id' value='`$download-n-e-sw-input.common-header.originator-id`'/>\r
403                                             <parameter name='lcm-dmaap.request-id' value='`$download-n-e-sw-input.common-header.request-id`'/>\r
404                                             <parameter name='lcm-dmaap.sub-request-id' value='`$download-n-e-sw-input.common-header.sub-request-id`'/>\r
405                                             <parameter name='lcm-dmaap.flags.mode' value='`$download-n-e-sw-input.common-header.flags.mode`'/>\r
406                                             <parameter name='lcm-dmaap.flags.force' value='`$download-n-e-sw-input.common-header.flags.force`'/>\r
407                                             <parameter name='lcm-dmaap.flags.ttl' value='`$download-n-e-sw-input.common-header.flags.ttl`'/>\r
408                                             <parameter name='lcm-dmaap.status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
409                                             <parameter name='lcm-dmaap.status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
410                                         </set>\r
411                                         <switch test='`$outputPayload`'>\r
412                                             <outcome value='Other'>\r
413                                                 <set>\r
414                                                     <parameter name='lcm-dmaap.payload' value='`$outputPayload`'/>\r
415                                                 </set>\r
416                                             </outcome>\r
417                                         </switch>\r
418                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
419                                             <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
420                                             <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
421                                             <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
422                                             <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
423                                             <parameter name='format' value='json' />\r
424                                             <parameter name='httpMethod' value='POST' />\r
425                                             <parameter name='contentType' value='application/json' />\r
426                                             <parameter name="responsePrefix" value="lcm" />\r
427                                             <outcome value='failure'>\r
428                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
429                                                     <parameter name="logger" value="message-log"/>\r
430                                                     <parameter name="field1" value='Failed to Publish to DMaap'/>\r
431                                                 </record>\r
432                                             </outcome>\r
433                                         </execute>\r
434                                         <switch test='`$outputPayload`'>\r
435                                             <outcome value=''>\r
436                                                 <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
437                                                     <outcome value='400'>\r
438                                                         <return status='success'>\r
439                                                             <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
440                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
441                                                         </return>\r
442                                                     </outcome>\r
443                                                     <outcome value='Other'>\r
444                                                         <return status='failure'>\r
445                                                             <parameter name='status.code' value='401' />\r
446                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
447                                                         </return>\r
448                                                     </outcome>\r
449                                                 </switch>\r
450                                             </outcome>\r
451                                             <outcome value='Other'>\r
452                                                 <switch test="`$org.onap.appc.adapter.ansible.result.code`">\r
453                                                     <outcome value='400'>\r
454                                                         <return status='success'>\r
455                                                             <parameter name='status.code' value='`$org.onap.appc.adapter.ansible.result.code`' />\r
456                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`'/>\r
457                                                             <parameter name='payload' value='`$outputPayload`'/>\r
458                                                         </return>\r
459                                                     </outcome>\r
460                                                     <outcome value='Other'>\r
461                                                         <return status='failure'>\r
462                                                             <parameter name='status.code' value='401' />\r
463                                                             <parameter name='status.message' value='`$org.onap.appc.adapter.ansible.message`' />\r
464                                                             <parameter name='payload' value='`$outputPayload`'/>\r
465                                                         </return>\r
466                                                     </outcome>\r
467                                                 </switch>\r
468                                             </outcome>\r
469                                         </switch>\r
470                                     </block>\r
471                                 </outcome>\r
472                             </execute>\r
473                         </outcome>\r
474                     </switch>\r
475                 </outcome>\r
476             </execute>\r
477         </block>\r
478     </method>\r
479 </service-logic>