- /* TODO :
- * If even 1 action is accepted :
- *
- * For accepted groups:
- * Mark scubscrbed-action's -> action = CONFIG_UNKNOWN
- * Add action ID to accpeted-action-list in Subscription response
- *
- * For rejected groups:
- * Remove entry from DU's RAN Function->subscription->actionList
- * Add Rejected action Id to reject-action-list created by DU APP while
- * processing of subscription request.
- *
- * Send subscription response with accepted and rejected action lists to
- * RIC
- */
+ pendingSubsRsp->acceptedActionList[pendingSubsRsp->numOfAcceptedActions++] = actionId;
+ }
+ }
+
+ /* For rejected groups:
+ * Remove entry from DU's RAN Function->subscription->actionList
+ * Add to rejected-action-list in subscription response
+ */
+ for(idx=0; idx<statsRsp->numGrpRejected; idx++)
+ {
+ actionId = statsRsp->statsGrpRejectedList[idx].groupId;
+ if(ricSubscriptionInfo->actionSequence[actionId-1].id == actionId)
+ {
+ memset(&ricSubscriptionInfo->actionSequence[actionId-1], 0, sizeof(ActionInfo));
+ ricSubscriptionInfo->numOfActions--;
+
+ pendingSubsRsp->rejectedActionList[pendingSubsRsp->numOfRejectedActions].id = actionId;
+ convertDuCauseToE2Cause(statsRsp->statsGrpRejectedList[idx].cause, \
+ &pendingSubsRsp->rejectedActionList[pendingSubsRsp->numOfRejectedActions].failureCause);
+ pendingSubsRsp->numOfRejectedActions++;
+ }
+ }
+
+ /* Send subscription response with accepted and rejected action lists to
+ * RIC */
+ BuildAndSendRicSubscriptionRsp(pendingSubsRsp);
+ }