summaryrefslogtreecommitdiffstats
path: root/platform-logic/a1Adapter-api/src/main/xml/A1-ADAPTER-API_notifyPolicyEnforcementUpdate.xml
blob: 70fa8049392f7eb46b2f7694d372011ffd6c9cbb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<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='A1-ADAPTER-API' version='${project.version}'>
    <method rpc='notifyPolicyEnforcementUpdate' mode='sync'>
        <block atomic='true'>
            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
                <parameter name="level" value="info" />
                <parameter name="field1" value="A1 Adapter - notify policy enforcement update"/>
                <parameter name="field2" value="`$notify-policy-enforcement-update-input.near-rt-ric-id`"/>
                <parameter name="field3" value="`$notify-policy-enforcement-update-input.policy-type-id`"/>
                <parameter name="field4" value="`$notify-policy-enforcement-update-input.policy-instance-id`"/>
            </record>
            <set>
                <parameter name='response-code' value='200' />
                <parameter name='response-message' value='Policy Enforcement Update Received' />
            </set>
            <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
                <parameter name='fileName' value='/opt/onap/ccsdk/data/properties/a1-adapter-api-dg.properties' />
                <parameter name='contextPrefix' value='prop' />
            </execute>
            <set>
                <parameter name="tmp.near-rt-ric-id" value="`$notify-policy-enforcement-update-input.near-rt-ric-id`"/>
                <parameter name="tmp.policy-type-id" value="`$notify-policy-enforcement-update-input.policy-type-id`"/>
                <parameter name="tmp.policy-instance-id" value="`$notify-policy-enforcement-update-input.policy-instance-id`"/>
            </set>
            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
                <parameter name="level" value="info" />
                <parameter name="field1" value="SNear-RT RIC ID"/>
                <parameter name="field2" value="`$tmp.near-rt-ric-id`"/>
                <parameter name="field3" value="`$tmp.policy-type-id`"/>
                <parameter name="field4" value="`$tmp.policy-instance-id`"/>
            </record>
            <block atomic='true'>
                <set>
                    <parameter name='tmp.a1-adapter-api.rpc-name' value='notifyPolicyEnforcementUpdate'/>
                    <parameter name='tmp.a1Adapter-dmaap-resp.status-code' value='`$response-code`'/>
                    <parameter name='tmp.a1Adapter-dmaap-resp.status-value' value='`$response-message`'/>
                    <parameter name='tmp.a1Policy-dmaap-resp.payload' value="Policy Enforcement Update - Policies Applied" />
                </set>
                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                    <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
                    <parameter name="level" value="info" />
                    <parameter name="field1" value="__TIMESTAMP__"/>
                    <parameter name="field2" value="Before DMAAP Event - template file name, restapiURL"/>
                    <parameter name='field3' value="`$prop.restapi.templateDir + '/' +  $prop.restapi.dmaap-publish-generic-response.template`" />
                    <parameter name='field4' value="`$prop.dmaap-message-router.url + $prop.a1Adapter-dmaap-policy-response.topic`" />
                    <parameter name='field5' value="Status Code and Status Value to be published" />
                    <parameter name='field6' value="`$tmp.a1Adapter-dmaap-resp.status-code`" />
                    <parameter name='field7' value="`$tmp.a1Adapter-dmaap-resp.status-value`" />
                    <parameter name='field8' value="A1 Adapter DMAAP Response Payload" />
                    <parameter name='field9' value="`$tmp.a1Policy-dmaap-resp.payload`" />
                    <parameter name='field10' value="RPC Name" />
                    <parameter name='field11' value="`$tmp.a1-adapter-api.rpc-name`" />
                </record>
                <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
                    <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' +  $prop.restapi.dmaap-publish-generic-response.template`" />
                    <parameter name='restapiUrl' value="`$prop.dmaap-message-router.url + $prop.a1Adapter-dmaap-policy-response.topic`" />
                    <parameter name='format' value='json' />
                    <parameter name='httpMethod' value='POST' />
                    <parameter name='contentType' value='application/json' />
                    <parameter name='responsePrefix' value='dmaap' />
                    <outcome value='failure'>
                        <block>
                            <return status='failure'>
                                <parameter name='ack-final' value='Y'/>
                                <parameter name="response-code" value="500" />
                                <parameter name="response-message" value="Error publishing DMAAP A1 Policy Response message. " />
                            </return>
                        </block>
                    </outcome>
                    <outcome value='success'>
                        <block>
                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                <parameter name="file" value="/opt/opendaylight/current/data/log/A1-Adapter.log" />
                                <parameter name="level" value="info" />
                                <parameter name="field1" value="DMAAP A1Policy message Successfully Published "/>
                            </record>
                        </block>
                    </outcome>
                </execute>
            </block>
            <return status='success'>
                <parameter name="ack-final-indicator" value="Y" />
                <parameter name="error-code" value="200" />
                <parameter name="error-message" value="`$error-message`" />
                <parameter name='response-code' value='200' />
                <parameter name='response-message' value='Policy Enforcement Update Received'/>
                <parameter name='health-status' value='200'/>
                <parameter name='ack-final' value='Y'/>
            </return>
        </block>
    </method>
</service-logic>