d706aac68985c1218e6c3856f83c409c0632bc46
[sdnc/oam.git] / platform-logic / lcm / src / main / xml / LCM_health-check.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='health-check' 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 LCM DG' />\r
13             </set>\r
14             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx'>\r
15                 <parameter name='source' value='health-check-input.payload' />\r
16                 <parameter name='outputPath' value='payloadJson' />\r
17                 <parameter name='isEscaped' value='true' />\r
18                 <outcome value='success'>\r
19                     <record plugin='org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder'>\r
20                         <parameter name='logger' value='message-log'/>\r
21                         <parameter name='field1' value='`$payloadJson.request-parameters.host-ip-address`'/>\r
22                     </record>\r
23                 </outcome>\r
24             </execute>\r
25             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
26                 <parameter name='restapiUrl' value="`'http://' + $payloadJson.request-parameters.host-ip-address + ':' + $prop.lcm.restconf.port + $prop.lcm.restconf.configscaleout.geturlpath`" />\r
27                 <parameter name='restapiUser' value='`$prop.lcm.restconf.user`' />\r
28                 <parameter name='restapiPassword' value='`$prop.lcm.restconf.password`' />\r
29                 <parameter name='format' value='json' />\r
30                 <parameter name='httpMethod' value='GET' />\r
31                 <parameter name="responsePrefix" value="restconf" />\r
32                 <outcome value='failure'>\r
33                     <block>\r
34                         <set>\r
35                             <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
36                             <parameter name='lcm-dmaap.correlation-id' value="`$health-check-input.common-header.request-id + '-' + $health-check-input.common-header.sub-request-id`"/>\r
37                             <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
38                             <parameter name='lcm-dmaap.rpc-name' value='health-check'/>\r
39                             <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
40                             <parameter name='lcm-dmaap.timestamp' value='`$health-check-input.common-header.timestamp`'/>\r
41                             <parameter name='lcm-dmaap.api-ver' value='`$health-check-input.common-header.api-ver`'/>\r
42                             <parameter name='lcm-dmaap.originator-id' value='`$health-check-input.common-header.originator-id`'/>\r
43                             <parameter name='lcm-dmaap.request-id' value='`$health-check-input.common-header.request-id`'/>\r
44                             <parameter name='lcm-dmaap.sub-request-id' value='`$health-check-input.common-header.sub-request-id`'/>\r
45                             <parameter name='lcm-dmaap.flags.mode' value='`$health-check-input.common-header.flags.mode`'/>\r
46                             <parameter name='lcm-dmaap.flags.force' value='`$health-check-input.common-header.flags.force`'/>\r
47                             <parameter name='lcm-dmaap.flags.ttl' value='`$health-check-input.common-header.flags.ttl`'/>\r
48                             <parameter name='lcm-dmaap.status.code' value='401' />\r
49                             <parameter name='lcm-dmaap.status.message' value="`'DG-Failure '  + $restconf.response-message + ' RestConf ResponseCode=' + $restconf.response-code`"/>\r
50                         </set>\r
51                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
52                             <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
53                             <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
54                             <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
55                             <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
56                             <parameter name='format' value='json' />\r
57                             <parameter name='httpMethod' value='POST' />\r
58                             <parameter name='contentType' value='application/json' />\r
59                             <parameter name='responsePrefix' value='dmaap' />\r
60                             <outcome value='failure'>\r
61                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
62                                     <parameter name="logger" value="message-log"/>\r
63                                     <parameter name="field1" value='Failed to Publish to DMaap'/>\r
64                                 </record>\r
65                             </outcome>\r
66                         </execute>\r
67                         <return status='failure'>\r
68                             <parameter name='status.code' value= '`$lcm-dmaap.status.code`'/>\r
69                             <parameter name='status.message' value='`$lcm-dmaap.status.message`' />\r
70                         </return>\r
71                     </block>\r
72                 </outcome>\r
73                 <outcome value='success'>\r
74                     <block>\r
75                         <set>\r
76                             <parameter name='lcm-dmaap.version' value='`$prop.lcm.dmaap.version`'/>\r
77                             <parameter name='lcm-dmaap.correlation-id' value="`$health-check-input.common-header.request-id + '-' + $health-check-input.common-header.sub-request-id`"/>\r
78                             <parameter name='lcm-dmaap.partition' value='`$prop.lcm.dmaap.partition`'/>\r
79                             <parameter name='lcm-dmaap.rpc-name' value='health-check'/>\r
80                             <parameter name='lcm-dmaap.type' value='`$prop.lcm.dmaap.type`'/>\r
81                             <parameter name='lcm-dmaap.timestamp' value='`$health-check-input.common-header.timestamp`'/>\r
82                             <parameter name='lcm-dmaap.api-ver' value='`$health-check-input.common-header.api-ver`'/>\r
83                             <parameter name='lcm-dmaap.originator-id' value='`$health-check-input.common-header.originator-id`'/>\r
84                             <parameter name='lcm-dmaap.request-id' value='`$health-check-input.common-header.request-id`'/>\r
85                             <parameter name='lcm-dmaap.sub-request-id' value='`$health-check-input.common-header.sub-request-id`'/>\r
86                             <parameter name='lcm-dmaap.flags.mode' value='`$health-check-input.common-header.flags.mode`'/>\r
87                             <parameter name='lcm-dmaap.flags.force' value='`$health-check-input.common-header.flags.force`'/>\r
88                             <parameter name='lcm-dmaap.flags.ttl' value='`$health-check-input.common-header.flags.ttl`'/>\r
89                             <parameter name='lcm-dmaap.status.code' value='`$restconf.response-code`' />\r
90                             <parameter name='lcm-dmaap.status.message' value='`$restconf.response-message`'/>\r
91                         </set>\r
92                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
93                             <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.lcm.dmaap.publish.templatefile`" />\r
94                             <parameter name='restapiUrl' value='`$prop.lcm.dmaap.url`' />\r
95                             <parameter name='restapiUser' value='`$prop.lcm.dmaap.user`' />\r
96                             <parameter name='restapiPassword' value='`$prop.lcm.dmaap.password`' />\r
97                             <parameter name='format' value='json' />\r
98                             <parameter name='httpMethod' value='POST' />\r
99                             <parameter name='contentType' value='application/json' />\r
100                             <parameter name='responsePrefix' value='dmaap' />\r
101                             <outcome value='failure'>\r
102                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
103                                     <parameter name="logger" value="message-log"/>\r
104                                     <parameter name="field1" value='Failed to Publish to DMaap'/>\r
105                                 </record>\r
106                             </outcome>\r
107                         </execute>\r
108                         <return status='success'>\r
109                             <parameter name='status.code' value='`$restconf.response-code`' />\r
110                             <parameter name='status.message' value='`$restconf.response-message`' />\r
111                         </return>\r
112                     </block>\r
113                 </outcome>\r
114             </execute>\r
115         </block>\r
116     </method>\r
117 </service-logic>