RicRequestId requestId;
uint16_t ranFuncId;
EventTriggerDefinition eventTriggerDefinition;
- uint8_t numOfActions;
- ActionInfo actionSequence[MAX_RIC_ACTION];
+ CmLListCp actionSequence;
CmTimer ricSubsReportTimer;
ConfigType action;
E2FailureCause failureCause; /* Used only when a subscription is required to be deleted */
RejectedAction rejectedActionList[MAX_RIC_ACTION];
}PendingSubsRspInfo;
+typedef struct actionStatus
+{
+ uint8_t numOfAcceptedActions;
+ uint8_t acceptedActionList[MAX_RIC_ACTION];
+ uint8_t numOfRejectedActions;
+ RejectedAction rejectedActionList[MAX_RIC_ACTION];
+}ActionStatus;
+
+typedef struct pendingSubsModRspInfo
+{
+ RicRequestId requestId;
+ uint16_t ranFuncId;
+ bool addActionCompleted;
+ ActionStatus addActionStatus;
+ bool modActionCompleted;
+ ActionStatus modActionStatus;
+ bool removeActionCompleted;
+ ActionStatus removeActionStatus;
+}PendingSubsModRspInfo;
+
typedef struct
{
/* O-RAN.WG3.E2SM-KPM-R003-v03.00 : Section 8.2.2.1 */
CmLListCp subscriptionList;
uint8_t numPendingSubsRsp;
PendingSubsRspInfo pendingSubsRspInfo[MAX_PENDING_SUBSCRIPTION_RSP];
+ uint8_t numPendingSubsModRsp;
+ PendingSubsModRspInfo pendingSubsModRspInfo[MAX_PENDING_SUBSCRIPTION_RSP];
}RanFunction;
/* O-RAN.WG3.E2AP-R003-v03.00 : Section 9.2.26-9.2.27 */
}E2ConnectionList;
uint8_t assignTransactionId();
-ActionInfo *fetchActionInfoFromActionId(uint8_t actionId, RicSubscription *ricSubscriptionInfo);
+ActionInfo *fetchActionInfoFromActionId(uint8_t actionId, RicSubscription *ricSubscriptionInfo, CmLList ** actionNode, ConfigType configType);
RicSubscription *fetchSubsInfoFromRicReqId(RicRequestId ricReqId, RanFunction *ranFuncDb, CmLList **ricSubscriptionNode);
RanFunction *fetchRanFuncFromRanFuncId(uint16_t ranFuncId);
uint8_t fetchSubsInfoFromSubsId(uint64_t subscriptionId, RanFunction **ranFuncDb, CmLList **ricSubscriptionNode, \
void deleteRicSubscriptionList(CmLListCp *subscriptionList);
void deleteRicSubscriptionNode(CmLList *ricSubscriptionInfo);
void deleteMeasurementInfoList(CmLListCp *measInfoList);
-void deleteActionSequence(ActionInfo *action);
+void deleteActionSequence(CmLList *action);
void deleteMeasuredValueList(CmLListCp *measuredValueList);
void removeE2NodeInformation();
void encodeSubscriptionId(uint64_t *subscriptionId, uint16_t ranFuncId, RicRequestId ricReqId);
uint8_t e2ProcStatsDeleteRsp(MacStatsDeleteRsp *statsDeleteRsp);
+uint8_t fillRicSubsInMacStatsModificationReq(MacStatsModificationReq *macStatsModReq, RicSubscription* ricSubscriptionInfo);
+uint8_t e2ProcActionDeleteRsp(MacStatsDeleteRsp *statsDeleteRsp);
+uint8_t e2ProcStatsModificationRsp(MacStatsModificationRsp *statsModificationRsp);
+uint8_t duProcPendingSubsModRsp(RicSubscription *ricSubscriptionInfo, PendingSubsModRspInfo *pendingSubsModRsp);
/**********************************************************************
End of file