Add txID in RICServiceUpdate message 84/8184/2
authorsubhash kumar singh <subh.singh@samsung.com>
Fri, 6 May 2022 07:32:01 +0000 (07:32 +0000)
committersubhash kumar singh <subh.singh@samsung.com>
Fri, 6 May 2022 21:08:32 +0000 (02:38 +0530)
Added transaction ID support in RICServiceUpdate message.

Signed-off-by: subhash kumar singh <subh.singh@samsung.com>
Change-Id: Iac59040d2b2bcd90f63ac7cc3e90941902c9a14d

E2Manager/handlers/rmrmsghandlers/ric_service_update_handler.go
E2Manager/models/ric_service_update_message.go
E2Manager/models/ric_service_update_message_test.go
E2Manager/tests/resources/serviceUpdate/RicServiceUpdate_AddedFunction.xml
E2Manager/tests/resources/serviceUpdate/RicServiceUpdate_AddedFunction_With_OID.xml
E2Manager/tests/resources/serviceUpdate/RicServiceUpdate_DeleteFunction.xml
E2Manager/tests/resources/serviceUpdate/RicServiceUpdate_Empty.xml
E2Manager/tests/resources/serviceUpdate/RicServiceUpdate_ModifiedFunction.xml
E2Manager/tests/resources/serviceUpdate/RicServiceUpdate_SetupRequest.xml

index 2f871e7..94f9272 100644 (file)
@@ -89,7 +89,7 @@ func (h *RicServiceUpdateHandler) Handle(request *models.NotificationRequest) {
        h.logger.Infof("#RicServiceUpdateHandler.Handle - RIC_SERVICE_UPDATE has been parsed successfully %+v", ricServiceUpdate)
 
        ackFunctionIds := h.updateFunctions(ricServiceUpdate.E2APPDU.InitiatingMessage.Value.RICServiceUpdate.ProtocolIEs.RICServiceUpdateIEs, nodebInfo)
-       if len(ricServiceUpdate.E2APPDU.InitiatingMessage.Value.RICServiceUpdate.ProtocolIEs.RICServiceUpdateIEs) != 0 {
+       if len(ricServiceUpdate.E2APPDU.InitiatingMessage.Value.RICServiceUpdate.ProtocolIEs.RICServiceUpdateIEs) > 1 {
                err = h.rNibDataService.UpdateNodebInfoAndPublish(nodebInfo)
                if err != nil {
                        h.logger.Errorf("#RicServiceUpdateHandler.Handle - RAN name: %s - Failed at UpdateNodebInfoAndPublish. error: %s", nodebInfo.RanName, err)
index 0ffe458..29055d5 100644 (file)
@@ -69,6 +69,7 @@ type RICServiceUpdateIEs struct {
        } `xml:"criticality"`
        Value struct {
                Text             string `xml:",chardata"`
+               TransactionID    string `xml:"TransactionID"`
                RANfunctionsList struct {
                        Text                                      string                                      `xml:",chardata"`
                        RANfunctionsItemProtocolIESingleContainer []RANfunctionsItemProtocolIESingleContainer `xml:"ProtocolIE-SingleContainer"`
@@ -113,11 +114,11 @@ type RICServiceUpdateMessage struct {
 
 func (m *RICServiceUpdateE2APPDU) ExtractRanFunctionsList() []*entities.RanFunction {
        serviceUpdateRequestIes := m.InitiatingMessage.Value.RICServiceUpdate.ProtocolIEs.RICServiceUpdateIEs
-       if len(serviceUpdateRequestIes) < 2 {
+       if len(serviceUpdateRequestIes) < 3 {
                return nil
        }
 
-       ranFunctionsListContainer := serviceUpdateRequestIes[1].Value.RANfunctionsList.RANfunctionsItemProtocolIESingleContainer
+       ranFunctionsListContainer := serviceUpdateRequestIes[2].Value.RANfunctionsList.RANfunctionsItemProtocolIESingleContainer
        funcs := make([]*entities.RanFunction, len(ranFunctionsListContainer))
        for i := 0; i < len(funcs); i++ {
                ranFunctionItem := ranFunctionsListContainer[i].Value.RANfunctionItem
index 3edff8a..de6a136 100644 (file)
@@ -58,3 +58,8 @@ func TestRicServiceUpdateMessageWithOID(t *testing.T) {
        assert.Equal(t, uint32(2), ranFunctions[0].RanFunctionRevision)
        assert.Equal(t, "OID20", ranFunctions[0].RanFunctionOid)
 }
+
+func TestRICServiceUpdateMessageTxId(t *testing.T) {
+       serviceUpdate := getTestRicServiceUpdate(t, "../tests/resources/serviceUpdate/RicServiceUpdate_AddedFunction_With_OID.xml")
+       assert.Equal(t, "1234", serviceUpdate.E2APPDU.InitiatingMessage.Value.RICServiceUpdate.ProtocolIEs.RICServiceUpdateIEs[0].Value.TransactionID)
+}
index c8b246c..1a08f45 100644 (file)
@@ -5,6 +5,13 @@
         <value>\r
             <RICserviceUpdate>\r
                 <protocolIEs>\r
+                    <RICserviceUpdate-IEs>
+                        <id>49</id>
+                        <criticality><reject/></criticality>
+                        <value>
+                            <TransactionID>1234</TransactionID>
+                        </value>
+                    </RICserviceUpdate-IEs>
                     <RICserviceUpdate-IEs>\r
                         <id>10</id>\r
                         <criticality><reject/></criticality>\r
index 319b681..7bd3631 100644 (file)
@@ -5,6 +5,13 @@
         <value>\r
             <RICserviceUpdate>\r
                 <protocolIEs>\r
+                    <RICserviceUpdate-IEs>
+                        <id>49</id>
+                        <criticality><reject/></criticality>
+                        <value>
+                            <TransactionID>1234</TransactionID>
+                        </value>
+                    </RICserviceUpdate-IEs>
                     <RICserviceUpdate-IEs>\r
                         <id>10</id>\r
                         <criticality><reject/></criticality>\r
index af0d259..07b93b6 100644 (file)
@@ -5,6 +5,13 @@
         <value>\r
             <RICserviceUpdate>\r
                 <protocolIEs>\r
+                    <RICserviceUpdate-IEs>
+                        <id>49</id>
+                        <criticality><reject/></criticality>
+                        <value>
+                            <TransactionID>1234</TransactionID>
+                        </value>
+                    </RICserviceUpdate-IEs>
                     <RICserviceUpdate-IEs>\r
                         <id>11</id>\r
                         <criticality><reject/></criticality>\r
index 1a7b23b..b52a34c 100644 (file)
@@ -5,6 +5,13 @@
         <value>\r
             <RICserviceUpdate>\r
                 <protocolIEs>\r
+                    <RICserviceUpdate-IEs>
+                        <id>49</id>
+                        <criticality><reject/></criticality>
+                        <value>
+                            <TransactionID>1234</TransactionID>
+                        </value>
+                    </RICserviceUpdate-IEs>
                 </protocolIEs>\r
             </RICserviceUpdate>\r
         </value>\r
index 30311e1..9756b37 100644 (file)
@@ -5,6 +5,13 @@
         <value>\r
             <RICserviceUpdate>\r
                 <protocolIEs>\r
+                    <RICserviceUpdate-IEs>
+                        <id>49</id>
+                        <criticality><reject/></criticality>
+                        <value>
+                            <TransactionID>1234</TransactionID>
+                        </value>
+                    </RICserviceUpdate-IEs>
                     <RICserviceUpdate-IEs>\r
                         <id>12</id>\r
                         <criticality><reject/></criticality>\r
index d210242..b8f6548 100644 (file)
@@ -5,6 +5,13 @@
         <value>\r
             <E2setupRequest>\r
                 <protocolIEs>\r
+                    <RICserviceUpdate-IEs>
+                        <id>49</id>
+                        <criticality><reject/></criticality>
+                        <value>
+                            <TransactionID>1234</TransactionID>
+                        </value>
+                    </RICserviceUpdate-IEs>
                     <E2setupRequestIEs>\r
                         <id>3</id>\r
                         <criticality><reject/></criticality>\r