summaryrefslogtreecommitdiffstats
path: root/platform-logic/cMNotify-api/src/main/xml/CM-NOTIFY-API_nbrlist-change-notification.xml
blob: 7e49bf9d7bc07e197903718118f1555ad6246408 (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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
<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='CM-NOTIFY-API' version='${project.version}'>
    <method rpc='nbrlist-change-notification' mode='sync'>
        <block atomic='true'>
            <for index='idx' start='0' end="`$nbrlist-change-notification-input.fap-service-number-of-entries-changed`" >
                <block atomic='true'>
                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                        <parameter name="file" value="/opt/opendaylight/current/data/log/ves-nbrlist-change-notif.log" />
                        <parameter name="level" value="info" />
                        <parameter name="field1" value="Input RPC Payload request. FAP #:  "/>
                        <parameter name="field2" value="`$idx`"/>
                        <parameter name="field3" value="`$nbrlist-change-notification-input.fap-service[$idx].alias`"/>
                        <parameter name="field4" value="`$nbrlist-change-notification-input.fap-service[$idx].cid`"/>
                        <parameter name="field5" value="`$nbrlist-change-notification-input.fap-service[$idx].phy-cell-id-in-use`"/>
                        <parameter name="field6" value="`$nbrlist-change-notification-input.fap-service[$idx].pnf-name`"/>
                        <parameter name="field7" value="Number of neigbors Changed/To Be Added #:  "/>
                        <parameter name="field8" value="`$nbrlist-change-notification-input.fap-service[$idx].lte-cell-number-of-entries`"/>
                    </record>
                    <for index='idy' start='0' end="`$nbrlist-change-notification-input.fap-service[$idx].lte-cell-number-of-entries`" >
                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                            <parameter name="file" value="/opt/opendaylight/current/data/log/ves-nbrlist-change-notif.log" />
                            <parameter name="level" value="info" />
                            <parameter name="field1" value="Neighbor #:  "/>
                            <parameter name="field2" value="`$idy`"/>
                            <parameter name="field3" value="`$nbrlist-change-notification-input.fap-service[$idx].lte-ran-neighbor-list-in-use-lte-cell-changed[$idy].plmnid`"/>
                            <parameter name="field4" value="`$nbrlist-change-notification-input.fap-service[$idx].lte-ran-neighbor-list-in-use-lte-cell-changed[$idy].cid`"/>
                            <parameter name="field5" value="`$nbrlist-change-notification-input.fap-service[$idx].lte-ran-neighbor-list-in-use-lte-cell-changed[$idy].phy-cell-id`"/>
                            <parameter name="field6" value="`$nbrlist-change-notification-input.fap-service[$idx].lte-ran-neighbor-list-in-use-lte-cell-changed[$idy].pnf-name`"/>
                            <parameter name="field7" value="`$nbrlist-change-notification-input.fap-service[$idx].lte-ran-neighbor-list-in-use-lte-cell-changed[$idy].blacklisted`"/>
                        </record>
                    </for>
                </block>
            </for>
            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                <parameter name="file" value="/opt/opendaylight/current/data/log/ves-nbrlist-change-notif.log" />
                <parameter name="level" value="info" />
                <parameter name="field1" value="RPC to handle VES event: nbrlist change notification invoked. Number of FAP services for which neighbors have changed:  "/>
                <parameter name="field2" value="`$nbrlist-change-notification-input.fap-service-number-of-entries-changed`"/>
            </record>
            <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
                <parameter name='fileName' value='/opt/onap/ccsdk/data/properties/sdnr-CMNotify-api-dg.properties' />
                <parameter name='contextPrefix' value='prop' />
            </execute>
            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                <parameter name="file" value="/opt/opendaylight/current/data/log/ves-nbrlist-change-notif.log" />
                <parameter name="level" value="info" />
                <parameter name="field1" value="Properties read ..configDB URL"/>
                <parameter name="field2" value="`$prop.configdb.url`"/>
                <parameter name="field3" value="Properties read ..DMAAP Msg Router URL"/>
                <parameter name="field4" value="`$prop.configdb.url`"/>
                <parameter name="field5" value="`$prop.dmaap-message-router.url`"/>
                <parameter name="field6" value="`$prop.controller.pwd`"/>
                <parameter name="field7" value="`$prop.controller.url`"/>
            </record>
            <for index='idx' start='0' end="`$nbrlist-change-notification-input.fap-service-number-of-entries-changed`" >
                <block atomic='true'>
                    <set>
                        <parameter name="tmp.alias" value="`$nbrlist-change-notification-input.fap-service[$idx].alias`"/>
                        <parameter name="tmp.cid" value="`$nbrlist-change-notification-input.fap-service[$idx].cid`"/>
                        <parameter name="tmp.phy-cell-id-in-use" value="`$nbrlist-change-notification-input.fap-service[$idx].phy-cell-id-in-use`"/>
                        <parameter name="tmp.pnf-name" value="`$nbrlist-change-notification-input.fap-service[$idx].pnf-name`"/>
                        <parameter name="tmp.lte-cell-number-of-entries" value="`$nbrlist-change-notification-input.fap-service[$idx].lte-cell-number-of-entries`"/>
                    </set>
                    <for index='idy' start='0' end="`$nbrlist-change-notification-input.fap-service[$idx].lte-cell-number-of-entries`" >
                        <block atomic='true'>
                            <set>
                                <parameter name="tmp.nbr.plmnid" value="`$nbrlist-change-notification-input.fap-service[$idx].lte-ran-neighbor-list-in-use-lte-cell-changed[$idy].plmnid`"/>
                                <parameter name="tmp.nbr.cid" value="`$nbrlist-change-notification-input.fap-service[$idx].lte-ran-neighbor-list-in-use-lte-cell-changed[$idy].cid`"/>
                                <parameter name="tmp.nbr.phy-cell-id" value="`$nbrlist-change-notification-input.fap-service[$idx].lte-ran-neighbor-list-in-use-lte-cell-changed[$idy].phy-cell-id`"/>
                                <parameter name="tmp.nbr.pnf-name" value="`$nbrlist-change-notification-input.fap-service[$idx].lte-ran-neighbor-list-in-use-lte-cell-changed[$idy].pnf-name`"/>
                                <parameter name="tmp.nbr.blacklisted" value="`$nbrlist-change-notification-input.fap-service[$idx].lte-ran-neighbor-list-in-use-lte-cell-changed[$idy].blacklisted`"/>
                            </set>
                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
                                <parameter name="source" value="`$prop.restapi.configdb.add-nbrlist-change-per-notif`"/>
                                <parameter name="outputPath" value="tmp.configdb.add-nbrlist-change-per-notif.url"/>
                                <parameter name="target" value="{cellId}"/>
                                <parameter name="replacement" value="`$tmp.cid`"/>
                            </execute>
                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                <parameter name="file" value="/opt/opendaylight/current/data/log/ves-nbrlist-change-notif.log" />
                                <parameter name="level" value="info" />
                                <parameter name="field1" value="URL for configDB neighbor cell ADD"/>
                                <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.add-nbrlist-change-per-notif.url`" />
                                <parameter name='field3' value="`$tmp.nbr.cid`" />
                                <parameter name='field4' value="`$tmp.nbr.blacklisted`" />
                            </record>
                            <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
                                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/CMNotify-add-nbr-to-configdb-per-nbrlist-change-notif.json'`" />
                                <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.add-nbrlist-change-per-notif.url`"/>
                                <parameter name="httpMethod" value="PUT"/>
                                <parameter name="responsePrefix" value="CMNotify-configdb-response"/>
                                <parameter name='contentType' value='application/json' />
                                <parameter name='format' value='json' />
                                <parameter name='accept' value='application/json' />
                                <outcome value='failure'>
                                    <block>
                                        <return status='failure'>
                                            <parameter name='ack-final' value='Y'/>
                                            <parameter name="error-code" value="500" />
                                            <parameter name="error-message" value="Error adding neighbor to configdb. Aborting notification update" />
                                        </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/ves-nbrlist-change-notif.log" />
                                            <parameter name="level" value="info" />
                                            <parameter name="field1" value="Neighbor Added to ConfigDB "/>
                                        </record>
                                    </block>
                                </outcome>
                            </execute>
                        </block>
                    </for>
                </block>
            </for>
            <return status='success'>
                <parameter name="ack-final-indicator" value="Y" />
                <parameter name="error-code" value="200" />
                <parameter name="error-message" value="SUCCESSFUL Execution" />
            </return>
        </block>
    </method>
</service-logic>