\r
func HandleControlFailure(params *xapp.RMRParams) (err error) {\r
\r
+ var e2ap *E2ap\r
+\r
xapp.Logger.Debug("The SubId in RIC_CONTROL_FAILURE is %d", params.SubId)\r
log.Printf("The SubId in RIC_CONTROL_FAILURE is %d", params.SubId)\r
\r
+ controlAck, err := e2ap.GetControlFailureMsg(params.Payload)\r
+ if err != nil {\r
+ xapp.Logger.Debug("Failed to decode RIC Control message: %v", err)\r
+ log.Println("Failed to decode RIC Control Ack: %v", err)\r
+ return\r
+ }\r
+ log.Println("E2ap RIC Control Ack message decoded \n")\r
+ xapp.Logger.Debug("E2ap RIC Control Ack message decoded \n")\r
+\r
+ gControlData.eventRicControlReqExpiredMu.Lock()\r
+ _, ok := gControlData.eventRicControlReqExpiredMap[int(controlAck.InstanceId)]\r
+ if !ok {\r
+ gControlData.eventRicControlReqExpiredMu.Unlock()\r
+ xapp.Logger.Debug("RIC_CONTROL_REQ has been deleted!")\r
+ log.Printf("RIC_CONTROL_REQ has been deleted!")\r
+ return nil\r
+ } else {\r
+ gControlData.eventRicControlReqExpiredMap[int(controlAck.InstanceId)] = true\r
+ gControlData.eventRicControlReqExpiredMu.Unlock()\r
+ }\r
return nil\r
}\r