- macStatsReq->subscriptionId = subscriptionId;
- for(actionIdx = 0; actionIdx < ricSubscriptionInfo->numOfActions; actionIdx++)
- {
- if(ricSubscriptionInfo->actionSequence[actionIdx].action == CONFIG_ADD)
- {
- actionDb = &ricSubscriptionInfo->actionSequence[actionIdx];
- macStatsReq->statsGrpList[grpIdx].groupId = actionDb->id;
- switch(actionDb->definition.formatType)
- {
- case 1:
- {
- format1Action = &actionDb->definition.choice.format1;
- macStatsReq->statsGrpList[grpIdx].periodicity = format1Action->granularityPeriod;
-
- CmLList *node = NULLP;
- MeasurementInfo *measInfo = NULLP;
- statsIdx = 0;
- /* Update DL PRB Usage for all stats group which requested for DL Total PRB Usage */
- node = cmLListFirst(&format1Action->measurementInfoList);
- while(node)
- {
- measInfo = (MeasurementInfo *)(node->node);
- switch(measInfo->measurementTypeId)
- {
- case 1:
- {
- macStatsReq->statsGrpList[grpIdx].statsList[statsIdx++] = MAC_DL_TOTAL_PRB_USAGE;
- break;
- }
- case 2:
- {
- macStatsReq->statsGrpList[grpIdx].statsList[statsIdx++] = MAC_UL_TOTAL_PRB_USAGE;
- break;
- }
- default:
- {
- DU_LOG("\nERROR --> DU_APP : Invalid measurement name BuildAndSendStatsReqToMac");
- break;
- }
- }
- node = node->next;
- }
- macStatsReq->statsGrpList[grpIdx].numStats = statsIdx;
- break;
- }
- default:
- {
- DU_LOG("\nERROR --> DU_APP : BuildAndSendStatsReqToMac: Only Action Definition Format 1 supported");
- break;
- }
- }
- if(macStatsReq->statsGrpList[grpIdx].numStats)
- grpIdx++;
- }
- }
- macStatsReq->numStatsGroup = grpIdx;
-
- if(macStatsReq->numStatsGroup)
+ /* Fill E2 Subscription Info in MAC Statistics Request and send to MAC */
+ if(fillRicSubsInMacStatsReq(macStatsReq, ranFuncId, ricSubscriptionInfo) == ROK)