fix odl patches
[ccsdk/distribution.git] / platform-logic / ran-slice-api / src / main / xml / ran-slice-api_instantiateRANSliceReconfigure.xml
index 1ae327f..369bd09 100644 (file)
                                     <parameter name="tmp.uLThptPerSlice" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id1].uLThptPerSlice`"/>
                                     <parameter name="tmp.nearRTRICId" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id1].nearRTRICId`"/>
                                 </set>
+                                <switch test='`$tmp.nearRTRICId == 11 `'>
+                                    <outcome value='true'>
+                                        <set>
+                                            <parameter name='tmp.policytype.url' value='`$prop.a1.policytype.url.nearrtric11`'/>
+                                            <parameter name="tmp.policyinstance.url" value="`$prop.a1.policyinstance.url.nearrtric11`"/>
+                                        </set>
+                                    </outcome>
+                                    <outcome value='false'>
+                                        <set>
+                                            <parameter name='tmp.policytype.url' value='`$prop.a1.policytype.url.nearrtric22`'/>
+                                            <parameter name="tmp.policyinstance.url" value="`$prop.a1.policyinstance.url.nearrtric22`"/>
+                                        </set>
+                                    </outcome>
+                                </switch>
+                                <block atomic='true'>
+                                    <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                        <parameter name="restapiUrl" value="`$tmp.policytype.url`"/>
+                                        <parameter name='format' value='json' />
+                                        <parameter name='httpMethod' value='GET' />
+                                        <parameter name='contentType' value='application/json' />
+                                        <parameter name='responsePrefix' value='get-policytypes-responsse' />
+                                        <outcome value='success'>
+                                            <block atomic='true'>
+                                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                                    <parameter name='outputPath' value='tmp.policytypelength' />
+                                                    <parameter name='source' value="`'get-policytypes-responsse._length'`" />
+                                                </execute>
+                                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                    <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
+                                                    <parameter name="level" value="info" />
+                                                    <parameter name="field1" value="policy types length "/>
+                                                    <parameter name="field2" value="`$tmp.policytypelength`"/>
+                                                </record>
+                                                <switch test='`$tmp.policytypelength > 0`'>
+                                                    <outcome value='true'>
+                                                        <block atomic='true'>
+                                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
+                                                                <parameter name="level" value="info" />
+                                                                <parameter name="field1" value="policy type already exists "/>
+                                                                <parameter name="field2" value="SUCCESSFULL"/>
+                                                            </record>
+                                                        </block>
+                                                    </outcome>
+                                                    <outcome value='false'>
+                                                        <block atomic='true'>
+                                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
+                                                                <parameter name="level" value="info" />
+                                                                <parameter name="field1" value="creating new policy "/>
+                                                                <parameter name="field2" value="SUCCESSFULL"/>
+                                                            </record>
+                                                            <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/A1policytype.json'`" />
+                                                                <parameter name="restapiUrl" value="https://10.31.4.11:30226/events/A1-P"/>
+                                                                <parameter name='format' value='json' />
+                                                                <parameter name='httpMethod' value='POST' />
+                                                                <parameter name='contentType' value='application/json' />
+                                                                <parameter name='responsePrefix' value='dmaap' />
+                                                                <outcome value='success'>
+                                                                    <block atomic='true'>
+                                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
+                                                                            <parameter name="level" value="info" />
+                                                                            <parameter name="field1" value="Create policytype "/>
+                                                                            <parameter name="field2" value="Succesfull"/>
+                                                                        </record>
+                                                                    </block>
+                                                                </outcome>
+                                                            </execute>
+                                                        </block>
+                                                    </outcome>
+                                                </switch>
+                                                <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                    <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/A1policyinstance.json'`" />
+                                                    <parameter name="restapiUrl" value="https://10.31.4.11:30226/events/A1-P"/>
+                                                    <parameter name='format' value='json' />
+                                                    <parameter name='httpMethod' value='POST' />
+                                                    <parameter name='contentType' value='application/json' />
+                                                    <parameter name='responsePrefix' value='dmaap-res' />
+                                                    <outcome value='success'>
+                                                        <block atomic='true'>
+                                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
+                                                                <parameter name="level" value="info" />
+                                                                <parameter name="field1" value="Create policyinstance "/>
+                                                                <parameter name="field2" value="Succesfull"/>
+                                                            </record>
+                                                        </block>
+                                                    </outcome>
+                                                </execute>
+                                            </block>
+                                        </outcome>
+                                        <outcome value='failure'>
+                                            <block atomic='true'>
+                                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                    <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
+                                                    <parameter name="level" value="info" />
+                                                    <parameter name="field1" value="req error "/>
+                                                    <parameter name="field2" value="Failure"/>
+                                                </record>
+                                            </block>
+                                        </outcome>
+                                    </execute>
+                                </block>
                                 <block atomic='true'>
                                     <switch test='`$prop.ransim-mounted`'>
                                         <outcome value='false'>
                                                         <parameter name="responsePrefix" value="so-callback-response"/>
                                                         <parameter name='contentType' value='application/json' />
                                                         <parameter name='format' value='json' />
-                                                        <parameter name='accept' value='application/json' />
+                                                        <parameter name='accept' value='*/*' />
                                                         <outcome value='failure'>
                                                             <block>
                                                                 <return status='failure'>
                                                         <parameter name="responsePrefix" value="so-callback-response"/>
                                                         <parameter name='contentType' value='application/json' />
                                                         <parameter name='format' value='json' />
-                                                        <parameter name='accept' value='application/json' />
+                                                        <parameter name='accept' value='*/*' />
                                                         <outcome value='failure'>
                                                             <block>
                                                                 <return status='failure'>
                                     <set>
                                         <parameter name='tmp.pLMNId' value='`$getPLMN-CL-configdb-response.plmnId`'/>
                                     </set>
-                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
-                                        <parameter name="string" value="`$tmp.pLMNId`" />
-                                        <parameter name="result" value="tmp.mcc"/>
-                                        <parameter name="begin-index" value="0" />
-                                        <parameter name="end-index" value="3" />
-                                    </execute>
-                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
-                                        <parameter name="string" value="`$tmp.pLMNId`" />
-                                        <parameter name="result" value="tmp.mnc"/>
-                                        <parameter name="begin-index" value="4" />
-                                    </execute>
+                                    <block atomic="true">
+                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
+                                            <parameter name="original_string" value="`$tmp.pLMNId`" />
+                                            <parameter name="regex" value="-"/>
+                                            <parameter name="ctx_memory_result_key" value="tmp.plmnList" />
+                                        </execute>
+                                        <set>
+                                            <parameter name='tmp.mcc' value='`$tmp.plmnList[0]`'/>
+                                            <parameter name='tmp.mnc' value='`$tmp.plmnList[1]`'/>
+                                        </set>
+                                    </block>
                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                         <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
                                         <parameter name="level" value="info" />
                                                         <parameter name="responsePrefix" value="so-callback-response"/>
                                                         <parameter name='contentType' value='application/json' />
                                                         <parameter name='format' value='json' />
-                                                        <parameter name='accept' value='application/json' />
+                                                        <parameter name='accept' value='*/*' />
                                                         <outcome value='failure'>
                                                             <block>
                                                                 <return status='failure'>
                                                             <parameter name="responsePrefix" value="so-callback-response"/>
                                                             <parameter name='contentType' value='application/json' />
                                                             <parameter name='format' value='json' />
-                                                            <parameter name='accept' value='application/json' />
+                                                            <parameter name='accept' value='*/*' />
                                                             <outcome value='failure'>
                                                                 <block>
                                                                     <return status='failure'>
                                         <set>
                                             <parameter name='tmp.pLMNId' value='`$getPLMN-CL-configdb-response.plmnId`'/>
                                         </set>
-                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
-                                            <parameter name="string" value="`$tmp.pLMNId`" />
-                                            <parameter name="result" value="tmp.mcc"/>
-                                            <parameter name="begin-index" value="0" />
-                                            <parameter name="end-index" value="3" />
-                                        </execute>
-                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
-                                            <parameter name="string" value="`$tmp.pLMNId`" />
-                                            <parameter name="result" value="tmp.mnc"/>
-                                            <parameter name="begin-index" value="4" />
-                                        </execute>
+                                        <block atomic="true">
+                                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
+                                                <parameter name="original_string" value="`$tmp.pLMNId`" />
+                                                <parameter name="regex" value="-"/>
+                                                <parameter name="ctx_memory_result_key" value="tmp.plmnList" />
+                                            </execute>
+                                            <set>
+                                                <parameter name='tmp.mcc' value='`$tmp.plmnList[0]`'/>
+                                                <parameter name='tmp.mnc' value='`$tmp.plmnList[1]`'/>
+                                            </set>
+                                        </block>
                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                             <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
                                             <parameter name="level" value="info" />
                                         <block atomic="true">
                                             <set>
                                                 <parameter name="tmp.nearRTRICId" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id-is].nearRTRICId`"/>
+                                                <parameter name="tmp.CUCPName" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id-is].gNBCUName`"/>
                                             </set>
                                             <switch test='`$prop.ransim-mounted`'>
                                                 <outcome value='false'>
                                             <for index='id2' start='0' end="`$tmp.CUCellListEntries`" >
                                                 <block atomic="true">
                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
-                                                        <parameter name='outputPath' value='tmp.cellLocalId' />
+                                                        <parameter name='outputPath' value='tmp.cellCULocalId' />
                                                         <parameter name='source' value="`'payloadJson.input.additionalproperties.resourceConfig.data['+$id-is+'].cellCUList['+$id2+'].cellLocalId'`" />
                                                     </execute>
+                                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat'>
+                                                        <parameter name="source" value="`$tmp.cellCULocalId`" />
+                                                        <parameter name="target" value="-maxNumberofConns"/>
+                                                        <parameter name="outputPath" value="tmp.cellLocalId" />
+                                                    </execute>
                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
                                                         <parameter name='outputPath' value='tmp.predictedMaxNumberofConns' />
                                                         <parameter name='source' value="`'payloadJson.input.additionalproperties.resourceConfig.data['+$id-is+'].cellCUList['+$id2+'].configData.predictedMaxNumberofConns'`" />
                                                                         <parameter name="responsePrefix" value="so-callback-response"/>
                                                                         <parameter name='contentType' value='application/json' />
                                                                         <parameter name='format' value='json' />
-                                                                        <parameter name='accept' value='application/json' />
+                                                                        <parameter name='accept' value='*/*' />
                                                                         <outcome value='failure'>
                                                                             <block>
                                                                                 <return status='failure'>
                                                         </outcome>
                                                     </execute>
                                                 </block>
+                                                <block atomic="true">
+                                                    <set>
+                                                        <parameter name='tmp.cellLocalId' value='`$tmp.cellCULocalId`'/>
+                                                        <parameter name='tmp.payload.pLMNId' value='`$tmp.pLMNId`'/>
+                                                        <parameter name='tmp.payload.sNSSAI' value='`$tmp.payload.sNSSAI`'/>
+                                                        <parameter name='tmp.maxNumberOfConns' value='`$tmp.predictedMaxNumberofConns`'/>
+                                                    </set>
+                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/intelligentSlicing.log" />
+                                                        <parameter name="level" value="info" />
+                                                        <parameter name="field1" value="cellLocalId"/>
+                                                        <parameter name="field2" value="`$tmp.cellLocalId`"/>
+                                                        <parameter name="field3" value="pLMNId"/>
+                                                        <parameter name="field4" value="`$tmp.payload.pLMNId`"/>
+                                                        <parameter name="field5" value="maxNumberOfConns"/>
+                                                        <parameter name="field6" value="`$tmp.maxNumberOfConns`"/>
+                                                        <parameter name="field7" value="gNBCUName"/>
+                                                        <parameter name="field8" value="`$tmp.gNBCUCPList.gNBCUName`"/>
+                                                        <parameter name="field9" value="gNBId"/>
+                                                        <parameter name="field10" value="`$tmp.gNBCUCPList.gNBId`"/>
+                                                        <parameter name="field11" value="nFType"/>
+                                                        <parameter name="field12" value="`$tmp.gNBCUCPList.nFType`"/>
+                                                    </record>
+                                                    <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                        <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateCellCU`"/>
+                                                        <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateCellCU.json'`" />
+                                                        <parameter name="httpMethod" value="PATCH"/>
+                                                        <parameter name="responsePrefix" value="update-nrCellCU-configdb-response"/>
+                                                        <parameter name='contentType' value='application/json' />
+                                                        <parameter name='format' value='json' />
+                                                        <parameter name='accept' value='application/json' />
+                                                        <parameter name="convertResponse" value="true"/>
+                                                        <outcome value='failure'>
+                                                            <block atomic='true'>
+                                                                <block atomic='true'>
+                                                                    <set>
+                                                                        <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                                                        <parameter name="tmp.status" value="`$error-code`"/>
+                                                                        <parameter name="tmp.reason" value="`$error-message`"/>
+                                                                        <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                                                        <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                                                    </set>
+                                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                                                        <parameter name="level" value="info" />
+                                                                        <parameter name="field1" value="URL for SO Callback Response"/>
+                                                                        <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                                                        <parameter name='field3' value="`$tmp.status`" />
+                                                                        <parameter name='field4' value="`$tmp.reason`" />
+                                                                        <parameter name='field5' value="`$tmp.requestID`" />
+                                                                        <parameter name='field6' value="`$tmp.action`" />
+                                                                        <parameter name='field7' value="`$tmp.CUCPList`" />
+                                                                        <parameter name='field8' value="`$tmp.CUUPList`" />
+                                                                        <parameter name='field9' value="`$tmp.DUList`" />
+                                                                    </record>
+                                                                    <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                                        <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                                                        <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                                                        <parameter name="httpMethod" value="POST"/>
+                                                                        <parameter name="responsePrefix" value="so-callback-response"/>
+                                                                        <parameter name='contentType' value='application/json' />
+                                                                        <parameter name='format' value='json' />
+                                                                        <parameter name='accept' value='*/*' />
+                                                                        <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 sending SO Response" />
+                                                                                </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/so-callback-response.log" />
+                                                                                    <parameter name="level" value="info" />
+                                                                                    <parameter name="field1" value="SO Response Sent "/>
+                                                                                </record>
+                                                                            </block>
+                                                                        </outcome>
+                                                                    </execute>
+                                                                </block>
+                                                                <set>
+                                                                    <parameter name='error-code' value='500'/>
+                                                                    <parameter name='error-message' value='Error in updating Config DB - NRCellCU. Aborting RPC executiopn'/>
+                                                                </set>
+                                                                <return status='failure'>
+                                                                    <parameter name='ack-final' value='Y'/>
+                                                                    <parameter name='error-code' value='500'/>
+                                                                    <parameter name='error-message' value='Error updating NRCellCU-PLMNInfo in ConfigDB. Aborting RPC executiopn'/>
+                                                                </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/instantiateRANSliceModifyAllocate.log" />
+                                                                    <parameter name="level" value="info" />
+                                                                    <parameter name="field1" value="Successfully updated ConfigDB - NRCellCU pLMNinfo "/>
+                                                                </record>
+                                                            </block>
+                                                        </outcome>
+                                                    </execute>
+                                                </block>
                                             </for>
                                         </block>
                                     </for>
                     <parameter name="target" value="{requestId}"/>
                     <parameter name="replacement" value="`$tmp.requestID`"/>
                 </execute>
+                <switch test='`$error-code`'>
+                    <outcome value='200'>
+                        <set>
+                            <parameter name="tmp.status" value="success"/>
+                        </set>
+                    </outcome>
+                    <outcome value='Other'>
+                        <set>
+                            <parameter name="tmp.status" value="`$error-code`"/>
+                        </set>
+                    </outcome>
+                </switch>
                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
                     <parameter name="level" value="info" />
                     <parameter name="responsePrefix" value="so-callback-response"/>
                     <parameter name='contentType' value='application/json' />
                     <parameter name='format' value='json' />
-                    <parameter name='accept' value='application/json' />
+                    <parameter name='accept' value='*/*' />
                     <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
                     <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
                     <outcome value='failure'>