fix odl patches
[ccsdk/distribution.git] / platform-logic / a1Adapter-api / src / main / xml / A1-ADAPTER-API_getPolicyType.xml
1 <service-logic
2     xmlns='http://www.onap.org/sdnc/svclogic'
3     xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='A1-ADAPTER-API' version='${project.version}'>
4     <method rpc='getPolicyType' mode='sync'>
5         <block atomic='true'>
6             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
7                 <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
8                 <parameter name="level" value="info" />
9                 <parameter name="field1" value="Get Policy Type from Near RT RIC ID"/>
10                 <parameter name="field2" value="`$get-policy-type-input.near-rt-ric-id`"/>
11                 <parameter name="field3" value="`$get-policy-type-input.policy-type-id`"/>
12             </record>
13             <set>
14                 <parameter name='response-code' value='200' />
15                 <parameter name='response-message' value='getPolicyTypes executed successfully' />
16             </set>
17             <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
18                 <parameter name='fileName' value='/opt/onap/ccsdk/data/properties/a1-adapter-api-dg.properties' />
19                 <parameter name='contextPrefix' value='prop' />
20             </execute>
21             <switch test='`$prop.ric-plt-A1Mediator-deployed`'>
22                 <outcome value='true'>
23                     <block atomic='true'>
24                         <block atomic='true'>
25                             <set>
26                                 <parameter name="tmp.near-rt-ric-id" value="`$get-policy-type-input.near-rt-ric-id`"/>
27                                 <parameter name="tmp.policy-type-id" value="`$get-policy-type-input.policy-type-id`"/>
28                             </set>
29                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
30                                 <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
31                                 <parameter name="level" value="info" />
32                                 <parameter name="field1" value="Setting variables for A1 Adapter Get Policy Type."/>
33                                 <parameter name="field2" value="`$tmp.near-rt-ric-id`"/>
34                                 <parameter name="field3" value="`$tmp.policy-type-id`"/>
35                             </record>
36                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
37                                 <parameter name="source" value="`$prop.restapi.policytype`"/>
38                                 <parameter name="outputPath" value="tmp.restapi.policytype-url"/>
39                                 <parameter name="target" value="{policy_type_id}"/>
40                                 <parameter name="replacement" value="`$tmp.policy-type-id`"/>
41                             </execute>
42                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
43                                 <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
44                                 <parameter name="level" value="info" />
45                                 <parameter name="field1" value="Setting variables for A1 Adapter Get Policy Type."/>
46                                 <parameter name="field2" value="`$tmp.near-rt-ric-id`"/>
47                                 <parameter name="field3" value="`$tmp.restapi.policytype-url`"/>
48                             </record>
49                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
50                                 <parameter name="restapiUrl" value="`$prop.a1Mediator.url + '/' + $tmp.restapi.policytype-url`"/>
51                                 <parameter name="format" value="json"/>
52                                 <parameter name="httpMethod" value="GET"/>
53                                 <parameter name="responsePrefix" value="a1MediatorRsp"/>
54                                 <parameter name='contentType' value='application/json' />
55                                 <parameter name='accept' value='application/json' />
56                                 <parameter name="convertResponse" value="true"/>
57                                 <outcome value='success'>
58                                     <block>
59                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
60                                             <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
61                                             <parameter name="level" value="info" />
62                                             <parameter name="field1" value="A1 Policy Type Information "/>
63                                             <parameter name="field2" value="`$a1MediatorRsp.httpResponse`"/>
64                                         </record>
65                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
66                                             <parameter name="source" value="`$a1MediatorRsp.httpResponse`"/>
67                                             <parameter name="outputPath" value="tmp.a1-mediator-restapi.payload"/>
68                                             <parameter name="target" value="\n"/>
69                                             <parameter name="replacement" value=""/>
70                                             <outcome value='success'>
71                                                 <block atomic='true'>
72                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
73                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
74                                                         <parameter name="level" value="info" />
75                                                         <parameter name="field1" value="__TIMESTAMP__"/>
76                                                         <parameter name="field2" value="Redndred template with lines removed \r"/>
77                                                         <parameter name='field3' value='`$tmp.a1-mediator-restapi.payload`' />
78                                                     </record>
79                                                 </block>
80                                             </outcome>
81                                             <outcome value='failure'>
82                                                 <block></block>
83                                             </outcome>
84                                         </execute>
85                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
86                                             <parameter name="source" value="`$tmp.a1-mediator-restapi.payload`"/>
87                                             <parameter name="outputPath" value="tmp.a1-mediator-restapi.payload"/>
88                                             <parameter name="target" value="\t"/>
89                                             <parameter name="replacement" value=""/>
90                                         </execute>
91                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
92                                             <parameter name='filename' value='/opt/opendaylight/current/data/log/A1-Adapter-getPolicytype-specific-context.log' />
93                                         </execute>
94                                     </block>
95                                 </outcome>
96                                 <outcome value='failure'>
97                                     <block>
98                                         <set>
99                                             <parameter name='response-code' value='500'/>
100                                             <parameter name='response-message' value='Seems A1 Mediator Not Healthy'/>
101                                         </set>
102                                         <return status='failure'>
103                                             <parameter name='ack-final' value='Y'/>
104                                             <parameter name="response-code" value="404" />
105                                             <parameter name="response-message" value="Error in Getting A1 Policy Type. Aborting" />
106                                         </return>
107                                         <block atomic='true'>
108                                             <set>
109                                                 <parameter name='tmp.a1-adapter-api.rpc-name' value='getPolicyType'/>
110                                                 <parameter name='tmp.a1Adapter-dmaap-resp.status-code' value='`$response-code`'/>
111                                                 <parameter name='tmp.a1Adapter-dmaap-resp.status-value' value='`$response-message`'/>
112                                                 <parameter name='tmp.a1Policy-dmaap-resp.payload' value='`$tmp.a1-mediator-restapi.payload`' />
113                                             </set>
114                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
115                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
116                                                 <parameter name="level" value="info" />
117                                                 <parameter name="field1" value="__TIMESTAMP__"/>
118                                                 <parameter name="field2" value="Before DMAAP Event - template file name, restapiURL"/>
119                                                 <parameter name='field3' value="`$prop.restapi.templateDir + '/' +  $prop.restapi.dmaap-publish-generic-response.template`" />
120                                                 <parameter name='field4' value="`$prop.dmaap-message-router.url + $prop.a1Adapter-dmaap-policy-response.topic`" />
121                                                 <parameter name='field5' value="Status Code and Status Value to be published" />
122                                                 <parameter name='field6' value="`$tmp.a1Adapter-dmaap-resp.status-code`" />
123                                                 <parameter name='field7' value="`$tmp.a1Adapter-dmaap-resp.status-value`" />
124                                                 <parameter name='field8' value="A1 Adapter DMAAP Response Payload" />
125                                                 <parameter name='field9' value="`$tmp.a1Policy-dmaap-resp.payload`" />
126                                                 <parameter name='field10' value="RPC Name" />
127                                                 <parameter name='field11' value="`$tmp.a1-adapter-api.rpc-name`" />
128                                             </record>
129                                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
130                                                 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' +  $prop.restapi.dmaap-publish-generic-response.template`" />
131                                                 <parameter name='restapiUrl' value="`$prop.dmaap-message-router.url + $prop.a1Adapter-dmaap-policy-response.topic`" />
132                                                 <parameter name='format' value='json' />
133                                                 <parameter name='httpMethod' value='POST' />
134                                                 <parameter name='contentType' value='application/json' />
135                                                 <parameter name='responsePrefix' value='dmaap' />
136                                                 <outcome value='failure'>
137                                                     <block>
138                                                         <return status='failure'>
139                                                             <parameter name='ack-final' value='Y'/>
140                                                             <parameter name="response-code" value="500" />
141                                                             <parameter name="response-message" value="Error publishing DMAAP A1 Policy Response message. " />
142                                                         </return>
143                                                     </block>
144                                                 </outcome>
145                                                 <outcome value='success'>
146                                                     <block>
147                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
148                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
149                                                             <parameter name="level" value="info" />
150                                                             <parameter name="field1" value="DMAAP A1Policy message Successfully Published "/>
151                                                         </record>
152                                                     </block>
153                                                 </outcome>
154                                             </execute>
155                                         </block>
156                                     </block>
157                                 </outcome>
158                             </execute>
159                         </block>
160                     </block>
161                 </outcome>
162                 <outcome value='false'>
163                     <block>
164                         <set>
165                             <parameter name='response-code' value='500'/>
166                             <parameter name='response-message' value='A1 Mediator Not Deployed'/>
167                         </set>
168                         <block atomic='true'>
169                             <set>
170                                 <parameter name='tmp.a1-adapter-api.rpc-name' value='getPolicyType'/>
171                                 <parameter name='tmp.a1Adapter-dmaap-resp.status-code' value='`$response-code`'/>
172                                 <parameter name='tmp.a1Adapter-dmaap-resp.status-value' value='`$response-message`'/>
173                                 <parameter name='tmp.a1Policy-dmaap-resp.payload' value='`$tmp.a1-mediator-restapi.payload`' />
174                             </set>
175                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
176                                 <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
177                                 <parameter name="level" value="info" />
178                                 <parameter name="field1" value="__TIMESTAMP__"/>
179                                 <parameter name="field2" value="Before DMAAP Event - template file name, restapiURL"/>
180                                 <parameter name='field3' value="`$prop.restapi.templateDir + '/' +  $prop.restapi.dmaap-publish-generic-response.template`" />
181                                 <parameter name='field4' value="`$prop.dmaap-message-router.url + $prop.a1Adapter-dmaap-policy-response.topic`" />
182                                 <parameter name='field5' value="Status Code and Status Value to be published" />
183                                 <parameter name='field6' value="`$tmp.a1Adapter-dmaap-resp.status-code`" />
184                                 <parameter name='field7' value="`$tmp.a1Adapter-dmaap-resp.status-value`" />
185                                 <parameter name='field8' value="A1 Adapter DMAAP Response Payload" />
186                                 <parameter name='field9' value="`$tmp.a1Policy-dmaap-resp.payload`" />
187                                 <parameter name='field10' value="RPC Name" />
188                                 <parameter name='field11' value="`$tmp.a1-adapter-api.rpc-name`" />
189                             </record>
190                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
191                                 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' +  $prop.restapi.dmaap-publish-generic-response.template`" />
192                                 <parameter name='restapiUrl' value="`$prop.dmaap-message-router.url + $prop.a1Adapter-dmaap-policy-response.topic`" />
193                                 <parameter name='format' value='json' />
194                                 <parameter name='httpMethod' value='POST' />
195                                 <parameter name='contentType' value='application/json' />
196                                 <parameter name='responsePrefix' value='dmaap' />
197                                 <outcome value='failure'>
198                                     <block>
199                                         <return status='failure'>
200                                             <parameter name='ack-final' value='Y'/>
201                                             <parameter name="response-code" value="500" />
202                                             <parameter name="response-message" value="Error publishing DMAAP A1 Policy Response message. " />
203                                         </return>
204                                     </block>
205                                 </outcome>
206                                 <outcome value='success'>
207                                     <block>
208                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
209                                             <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
210                                             <parameter name="level" value="info" />
211                                             <parameter name="field1" value="DMAAP A1Policy message Successfully Published "/>
212                                         </record>
213                                     </block>
214                                 </outcome>
215                             </execute>
216                         </block>
217                         <return status='failure'>
218                             <parameter name='ack-final' value='Y'/>
219                             <parameter name="response-code" value="500" />
220                             <parameter name="response-message" value="Error in Getting A1 Policy Type. Aborting" />
221                         </return>
222                     </block>
223                 </outcome>
224             </switch>
225             <block>
226                 <block atomic='true'>
227                     <set>
228                         <parameter name='tmp.a1-adapter-api.rpc-name' value='getPolicyType'/>
229                         <parameter name='tmp.a1Adapter-dmaap-resp.status-code' value='`$response-code`'/>
230                         <parameter name='tmp.a1Adapter-dmaap-resp.status-value' value='`$response-message`'/>
231                         <parameter name='tmp.a1Policy-dmaap-resp.payload' value='`$tmp.a1-mediator-restapi.payload`' />
232                     </set>
233                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
234                         <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
235                         <parameter name="level" value="info" />
236                         <parameter name="field1" value="__TIMESTAMP__"/>
237                         <parameter name="field2" value="Before DMAAP Event - template file name, restapiURL"/>
238                         <parameter name='field3' value="`$prop.restapi.templateDir + '/' +  $prop.restapi.dmaap-publish-generic-response.template`" />
239                         <parameter name='field4' value="`$prop.dmaap-message-router.url + $prop.a1Adapter-dmaap-policy-response.topic`" />
240                         <parameter name='field5' value="Status Code and Status Value to be published" />
241                         <parameter name='field6' value="`$tmp.a1Adapter-dmaap-resp.status-code`" />
242                         <parameter name='field7' value="`$tmp.a1Adapter-dmaap-resp.status-value`" />
243                         <parameter name='field8' value="A1 Adapter DMAAP Response Payload" />
244                         <parameter name='field9' value="`$tmp.a1Policy-dmaap-resp.payload`" />
245                         <parameter name='field10' value="RPC Name" />
246                         <parameter name='field11' value="`$tmp.a1-adapter-api.rpc-name`" />
247                     </record>
248                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
249                         <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' +  $prop.restapi.dmaap-publish-generic-response.template`" />
250                         <parameter name='restapiUrl' value="`$prop.dmaap-message-router.url + $prop.a1Adapter-dmaap-policy-response.topic`" />
251                         <parameter name='format' value='json' />
252                         <parameter name='httpMethod' value='POST' />
253                         <parameter name='contentType' value='application/json' />
254                         <parameter name='responsePrefix' value='dmaap' />
255                         <outcome value='failure'>
256                             <block>
257                                 <return status='failure'>
258                                     <parameter name='ack-final' value='Y'/>
259                                     <parameter name="response-code" value="500" />
260                                     <parameter name="response-message" value="Error publishing DMAAP A1 Policy Response message. " />
261                                 </return>
262                             </block>
263                         </outcome>
264                         <outcome value='success'>
265                             <block>
266                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
267                                     <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
268                                     <parameter name="level" value="info" />
269                                     <parameter name="field1" value="DMAAP A1Policy message Successfully Published "/>
270                                 </record>
271                             </block>
272                         </outcome>
273                     </execute>
274                 </block>
275                 <return status='success'>
276                     <parameter name="ack-final-indicator" value="Y" />
277                     <parameter name="error-code" value="200" />
278                     <parameter name="error-message" value="`$error-message`" />
279                     <parameter name='response-code' value='200' />
280                     <parameter name='response-message' value='A1 Adapter is healthy'/>
281                     <parameter name='health-status' value='200'/>
282                     <parameter name='ack-final' value='Y'/>
283                 </return>
284             </block>
285         </block>
286     </method>
287 </service-logic>