-
- var params xapp.RMRParams
- if transaction.ForwardRespToXapp == true {
- var subDelRespPayload []byte
- subDelRespPayload, err = c.e2ap.PackSubscriptionDeleteResponse(transaction.OrigParams.Payload, subId)
- if err != nil {
- xapp.Logger.Error("handleSubDelTimer: Unable to pack payload. Dropping this timer action. Err: %v, SubId: %v, Xid: %s, Payload %x", err, subId, transaction.OrigParams.Xid, transaction.OrigParams.Payload)
- return
- }
-
- params.Mtype = 12021 // RIC SUBSCRIPTION DELETE RESPONSE
- params.SubId = int(subId)
- params.Meid = transaction.OrigParams.Meid
- params.Xid = transaction.OrigParams.Xid
- params.Src = transaction.OrigParams.Src
- params.PayloadLen = len(subDelRespPayload)
- params.Payload = subDelRespPayload
- params.Mbuf = nil
-
- xapp.Logger.Info("handleSubDelTimer: Sending SubDelResp to xApp: Mtype: %v, SubId: %v, Xid: %s, Meid: %v", params.Mtype, params.SubId, params.Xid, params.Meid)
- err = c.rmrReplyToSender(¶ms)
- if err != nil {
- xapp.Logger.Error("handleSubDelTimer: Failed to send response to xApp: Err: %v, SubId: %v, Xid: %s", err, params.SubId, params.Xid)
- }
-
- time.Sleep(3 * time.Second)
- }
-
- xapp.Logger.Info("handleSubDelTimer: Starting routing manager update. SubId: %v, Xid: %s", subId, params.Xid)
- subRouteAction := SubRouteInfo{DELETE, transaction.Xappkey.Addr, transaction.Xappkey.Port, subId}
- err = c.rtmgrClient.SubscriptionRequestUpdate(subRouteAction)
- if err != nil {
- xapp.Logger.Error("handleSubDelTimer: Failed to update routing manager. Err: %v, SubId: %v, Xid: %s", err, subId, params.Xid)
- return
+ sendOk, timedOut := trans.SendEvent(subDelFailMsg, e2tRecvMsgTimeout)
+ if sendOk == false {
+ err = fmt.Errorf("Passing event to transaction failed: sendOk(%t) timedOut(%t)", sendOk, timedOut)
+ xapp.Logger.Error("MSG-SubDelFail: %s", idstring(trans, subs, err))