-// Used by submgr
-func (c *E2ap) SetSubscriptionDeleteFailureSequenceNumber(payload []byte, newSubscriptionid uint16) (err error) {
- cptr := unsafe.Pointer(&payload[0])
- size := C.e2ap_set_ric_subscription_delete_failure_sequence_number(cptr, C.size_t(len(payload)), C.long(newSubscriptionid))
- if size < 0 {
- return fmt.Errorf("e2ap wrapper is unable to set Subscription Delete Failure Sequence Number due to wrong or invalid payload. Erroxappde: %v", size)
+ for _, subscriptionDetail := range p.SubscriptionDetails {
+ subReqMsg := e2ap.E2APSubscriptionRequest{}
+
+ if p.RANFunctionID != nil {
+ subReqMsg.FunctionId = (e2ap.FunctionId)(*p.RANFunctionID)
+ }
+ e2EventInstanceID := restSubscription.GetE2IdFromXappIdToE2Id(*subscriptionDetail.XappEventInstanceID)
+ subReqMsg.RequestId = e2ap.RequestId{uint32(*subscriptionDetail.XappEventInstanceID), uint32(e2EventInstanceID)}
+
+ if len(subscriptionDetail.EventTriggers) > 0 {
+ for _, val := range subscriptionDetail.EventTriggers {
+ subReqMsg.EventTriggerDefinition.Data.Data = append(subReqMsg.EventTriggerDefinition.Data.Data, byte(val))
+ }
+ subReqMsg.EventTriggerDefinition.Data.Length = uint64(len(subscriptionDetail.EventTriggers))
+ }
+ for _, actionToBeSetup := range subscriptionDetail.ActionToBeSetupList {
+ actionToBeSetupItem := e2ap.ActionToBeSetupItem{}
+ actionToBeSetupItem.ActionType = e2ap.E2AP_ActionTypeInvalid
+ actionToBeSetupItem.ActionId = uint64(*actionToBeSetup.ActionID)
+
+ actionToBeSetupItem.ActionType = e2ap.E2AP_ActionTypeStrMap[*actionToBeSetup.ActionType]
+ actionToBeSetupItem.RicActionDefinitionPresent = true
+
+ if len(actionToBeSetup.ActionDefinition) > 0 {
+ for _, val := range actionToBeSetup.ActionDefinition {
+ actionToBeSetupItem.ActionDefinitionChoice.Data.Data = append(actionToBeSetupItem.ActionDefinitionChoice.Data.Data, byte(val))
+ }
+ actionToBeSetupItem.ActionDefinitionChoice.Data.Length = uint64(len(actionToBeSetup.ActionDefinition))
+
+ }
+ if actionToBeSetup.SubsequentAction != nil {
+ actionToBeSetupItem.SubsequentAction.Present = true
+ actionToBeSetupItem.SubsequentAction.Type = e2ap.E2AP_SubSeqActionTypeStrMap[*actionToBeSetup.SubsequentAction.SubsequentActionType]
+ actionToBeSetupItem.SubsequentAction.TimetoWait = e2ap.E2AP_TimeToWaitStrMap[*actionToBeSetup.SubsequentAction.TimeToWait]
+ }
+ subReqMsg.ActionSetups = append(subReqMsg.ActionSetups, actionToBeSetupItem)
+ }
+ subreqList.E2APSubscriptionRequests = append(subreqList.E2APSubscriptionRequests, subReqMsg)