Implement Network slicing KPI Monitoring for new KPI
[usecase-ui/server.git] / server / src / main / java / org / onap / usecaseui / server / service / nsmf / impl / ResourceMonitorServiceConvert.java
index 64e1284..227ce2f 100644 (file)
@@ -27,12 +27,16 @@ import org.onap.usecaseui.server.bean.nsmf.monitor.TotalBandwidthInfo;
 import org.onap.usecaseui.server.bean.nsmf.monitor.TrafficReqInfo;
 import org.onap.usecaseui.server.bean.nsmf.monitor.UsageTrafficInfo;
 import org.onap.usecaseui.server.bean.nsmf.monitor.UserNumberInfo;
+import org.onap.usecaseui.server.bean.nsmf.monitor.ServicePDUSessionEstSRInfo;
+import org.onap.usecaseui.server.bean.nsmf.monitor.PDUSessionEstSRInfo;
 import org.onap.usecaseui.server.constant.nsmf.NsmfParamConstant;
 import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiTotalBandwidth;
 import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiTotalTraffic;
 import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiUserNumber;
 import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.TotalBandwidth;
 import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.UserNumbers;
+import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiPDUSessionEstSR;
+import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.PDUSessionEstSR;
 import org.onap.usecaseui.server.util.nsmf.NsmfCommonUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -66,6 +70,14 @@ public class ResourceMonitorServiceConvert {
         return slicingKpiReqInfo;
     }
 
+    SlicingKpiReqInfo buildSlicingPDUSessionEstSRKpiReqInfo(ServiceInfo serviceInfo, String queryTimestamp, int kpiHours) {
+        SlicingKpiReqInfo slicingKpiReqInfo = new SlicingKpiReqInfo();
+        slicingKpiReqInfo.setId("PDUSessionEstSR"+"."+serviceInfo.getServiceId());
+        slicingKpiReqInfo.setTimeStamp(queryTimestamp);
+        slicingKpiReqInfo.setHours(kpiHours);
+        return slicingKpiReqInfo;
+    }
+
     void convertServiceOnlineUserInfo(ServiceOnlineUserInfo serviceOnlineUserInfo, KpiUserNumber kpiUserNumber)
         throws InvocationTargetException, IllegalAccessException, ParseException {
 
@@ -105,4 +117,21 @@ public class ResourceMonitorServiceConvert {
 
         serviceTotalBandwidthInfo.setTotalBandwidthInfoList(totalBandwidthInfoList);
     }
+
+    void convertServicePDUSessionEstSRInfo(ServicePDUSessionEstSRInfo servicePDUSessionEstSRInfo,
+        KpiPDUSessionEstSR kpiPDUSessionEstSR)
+        throws InvocationTargetException, IllegalAccessException, ParseException {
+
+        List<PDUSessionEstSRInfo> kpiPDUSessionEstSRInfoList = new ArrayList<>();
+        servicePDUSessionEstSRInfo.setId(kpiPDUSessionEstSR.getRequest().getId().substring(kpiPDUSessionEstSR.getRequest().getId().lastIndexOf(".") + 1));
+        if (kpiPDUSessionEstSR.getResult() != null) {
+            for (PDUSessionEstSR pDUSessionEstSR : kpiPDUSessionEstSR.getResult()) {
+                PDUSessionEstSRInfo kpiPDUSessionEstSRInfo = new PDUSessionEstSRInfo();
+                kpiPDUSessionEstSRInfo.setTimestamp(pDUSessionEstSR.getTimeStamp());
+                kpiPDUSessionEstSRInfo.setPduSessionEstSR(String.valueOf(pDUSessionEstSR.getPDUSessionEstSR()));
+                kpiPDUSessionEstSRInfoList.add(kpiPDUSessionEstSRInfo);
+            }
+        }
+        servicePDUSessionEstSRInfo.setPDUSessionEstSRInfoList(kpiPDUSessionEstSRInfoList);
+    }
 }