RIC-193 - Setup from RAN: Integration fix 89/2989/1
authorns019t <ns019t@intl.att.com>
Thu, 26 Mar 2020 07:59:07 +0000 (09:59 +0200)
committerns019t <ns019t@intl.att.com>
Thu, 26 Mar 2020 07:59:18 +0000 (09:59 +0200)
Change-Id: Id4e18db88757cd51e32cff4d77fd662e6c9f8043
Signed-off-by: ns019t <ns019t@intl.att.com>
E2Manager/handlers/rmrmsghandlers/e2_setup_request_notification_handler.go
E2Manager/models/e2_setup_success_response_message.go
E2Manager/tests/resources/setupRequest_en-gNB.xml
E2Manager/tests/resources/setupRequest_gnb.xml
E2Manager/tests/resources/setupRequest_ng-eNB.xml

index 907e448..f40636b 100644 (file)
@@ -115,14 +115,14 @@ func (h E2SetupRequestNotificationHandler) Handle(request *models.NotificationRe
        successResponse.SetPlmnId(h.config.GlobalRicId.PlmnId)
        successResponse.SetRicId(h.config.GlobalRicId.RicNearRtId)
        successResponse.SetExtractRanFunctionsIDList(setupRequest)
-       responsePayload, err := xml.Marshal(successResponse)
+       responsePayload, err := xml.Marshal(&successResponse.E2APPDU)
 
        if err != nil{
                h.logger.Warnf("#E2SetupRequestNotificationHandler.Handle - RAN name: %s - Error marshalling E2 Setup Response. Response: %x", ranName, responsePayload)
        }
        msg := models.NewRmrMessage(rmrCgo.RIC_E2_SETUP_RESP, ranName, responsePayload, request.TransactionId)
        h.logger.Infof("#E2SetupRequestNotificationHandler.Handle - RAN name: %s - E2 Setup Request has been built. Message: %x", ranName, msg)
-       err = h.rmrSender.Send(msg)
+       _ = h.rmrSender.Send(msg)
 }
 
 func (h E2SetupRequestNotificationHandler) parseSetupRequest(payload []byte)(*models.E2SetupRequestMessage, string, error){
@@ -143,7 +143,7 @@ func (h E2SetupRequestNotificationHandler) parseSetupRequest(payload []byte)(*mo
        }
 
        setupRequest := &models.E2SetupRequestMessage{}
-       err := xml.Unmarshal(payload[pipInd + 1:], &setupRequest)
+       err := xml.Unmarshal(payload[pipInd + 1:], &setupRequest.E2APPDU)
        if err != nil {
                return nil, "", errors.New(fmt.Sprintf("#E2SetupRequestNotificationHandler.parseSetupRequest - Error unmarshalling E2 Setup Request payload: %x", payload))
        }
index 23410fc..52239be 100644 (file)
@@ -25,27 +25,29 @@ import (
 type E2SetupSuccessResponseMessage struct {
        XMLName xml.Name `xml:"E2SetupSuccessResponseMessage"`
        Text    string   `xml:",chardata"`
-       E2APPDU struct {
-               Text              string `xml:",chardata"`
-               SuccessfulOutcome struct {
-                       Text          string `xml:",chardata"`
-                       ProcedureCode string `xml:"procedureCode"`
-                       Criticality   struct {
-                               Text   string `xml:",chardata"`
-                               Reject string `xml:"reject"`
-                       } `xml:"criticality"`
-                       Value struct {
-                               Text            string `xml:",chardata"`
-                               E2setupResponse struct {
-                                       Text        string `xml:",chardata"`
-                                       ProtocolIEs struct {
-                                               Text               string `xml:",chardata"`
-                                               E2setupResponseIEs []E2setupResponseIEs`xml:"E2setupResponseIEs"`
-                                       } `xml:"protocolIEs"`
-                               } `xml:"E2setupResponse"`
-                       } `xml:"value"`
-               } `xml:"successfulOutcome"`
-       } `xml:"E2AP-PDU"`
+       E2APPDU E2APPDU`xml:"E2AP-PDU"`
+}
+
+type E2APPDU struct {
+       Text              string `xml:",chardata"`
+       SuccessfulOutcome struct {
+               Text          string `xml:",chardata"`
+               ProcedureCode string `xml:"procedureCode"`
+               Criticality   struct {
+                       Text   string `xml:",chardata"`
+                       Reject string `xml:"reject"`
+               } `xml:"criticality"`
+               Value struct {
+                       Text            string `xml:",chardata"`
+                       E2setupResponse struct {
+                               Text        string `xml:",chardata"`
+                               ProtocolIEs struct {
+                                       Text               string `xml:",chardata"`
+                                       E2setupResponseIEs []E2setupResponseIEs`xml:"E2setupResponseIEs"`
+                               } `xml:"protocolIEs"`
+                       } `xml:"E2setupResponse"`
+               } `xml:"value"`
+       } `xml:"successfulOutcome"`
 }
 
 type E2setupResponseIEs struct {
@@ -86,8 +88,8 @@ type ProtocolIESingleContainer struct {
        } `xml:"value"`
 }
 
-func NewE2SetupSuccessResponseMessage() *E2SetupSuccessResponseMessage{
-       msg := &E2SetupSuccessResponseMessage{}
+func NewE2SetupSuccessResponseMessage() E2SetupSuccessResponseMessage{
+       msg := E2SetupSuccessResponseMessage{}
        msg.E2APPDU.SuccessfulOutcome.Value.E2setupResponse.ProtocolIEs.E2setupResponseIEs = make([]E2setupResponseIEs, 2)
        return msg
 }
index 4fde3e9..28e4bfe 100644 (file)
@@ -1,4 +1,3 @@
-<E2SetupRequestMessage>\r
 <E2AP-PDU>\r
     <initiatingMessage>\r
         <procedureCode>1</procedureCode>\r
@@ -56,5 +55,4 @@
             </E2setupRequest>\r
         </value>\r
     </initiatingMessage>\r
-</E2AP-PDU>\r
-</E2SetupRequestMessage>
\ No newline at end of file
+</E2AP-PDU>
\ No newline at end of file
index 3b27b75..e8587e6 100644 (file)
@@ -1,4 +1,3 @@
-<E2SetupRequestMessage>\r
 <E2AP-PDU>\r
     <initiatingMessage>\r
         <procedureCode>1</procedureCode>\r
@@ -56,5 +55,4 @@
             </E2setupRequest>\r
         </value>\r
     </initiatingMessage>\r
-</E2AP-PDU>\r
-</E2SetupRequestMessage>
\ No newline at end of file
+</E2AP-PDU>
\ No newline at end of file
index ba2795c..575dac6 100644 (file)
@@ -1,4 +1,3 @@
-<E2SetupRequestMessage>\r
 <E2AP-PDU>\r
     <initiatingMessage>\r
         <procedureCode>1</procedureCode>\r
@@ -56,5 +55,4 @@
             </E2setupRequest>\r
         </value>\r
     </initiatingMessage>\r
-</E2AP-PDU>\r
-</E2SetupRequestMessage>
\ No newline at end of file
+</E2AP-PDU>
\ No newline at end of file