Add/Modified A1 DG's
[ccsdk/distribution.git] / platform-logic / a1Adapter-api / src / main / xml / A1-ADAPTER-API_putA1Policy.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='putA1Policy' 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="Put A1 Policy :"/>
10                 <parameter name="field2" value="`$put-a1-policy-input.near-rt-ric-url`"/>
11                 <parameter name="field3" value="`$put-a1-policy-input.body`"/>
12             </record>
13             <set>
14                 <parameter name='response-code' value='200' />
15                 <parameter name='response-message' value='Put A1 Policy 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             <block atomic='true'>
22                 <set>
23                     <parameter name="tmp.near-rt-ric-url" value="`$put-a1-policy-input.near-rt-ric-url`"/>
24                     <parameter name="tmp.body" value="`$put-a1-policy-input.body`"/>
25                 </set>
26                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
27                     <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
28                     <parameter name="level" value="info" />
29                     <parameter name="field1" value="Setting variables for Put A1 Policy."/>
30                     <parameter name="field2" value="`$tmp.near-rt-ric-url`"/>
31                     <parameter name="field3" value="`$tmp.body`"/>
32                 </record>
33                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
34                     <parameter name="restapiUrl" value="`$tmp.near-rt-ric-url`"/>
35                     <parameter name="format" value="json"/>
36                     <parameter name="httpMethod" value="PUT"/>
37                     <parameter name="responsePrefix" value="a1MediatorRsp"/>
38                     <parameter name='contentType' value='application/json' />
39                     <parameter name='accept' value='application/json' />
40                     <parameter name="requestBody" value="`$tmp.body`"/>
41                     <parameter name="convertResponse" value="false"/>
42                     <outcome value='failure'>
43                         <block>
44                             <set>
45                                 <parameter name='response-code' value='500'/>
46                                 <parameter name='response-message' value='Seems A1 Mediator Not Healthy'/>
47                             </set>
48                             <return status='failure'>
49                                 <parameter name='ack-final' value='Y'/>
50                                 <parameter name="response-code" value="404" />
51                                 <parameter name="response-message" value="Error creating A1 Policy. Aborting A1 Policy creation" />
52                             </return>
53                         </block>
54                     </outcome>
55                     <outcome value='success'>
56                         <block>
57                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
58                                 <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
59                                 <parameter name="level" value="info" />
60                                 <parameter name="field1" value="A1 Policy Instance Created."/>
61                             </record>
62                         </block>
63                     </outcome>
64                 </execute>
65             </block>
66         </block>
67     </method>
68 </service-logic>